3#ifndef PDFSDK_CXX_CALLBACK_H_INCLUDED_
4#define PDFSDK_CXX_CALLBACK_H_INCLUDED_
10#include <pdfsdk/core.h>
11#include <pdfsdk/cxx/exception.h>
13#define PDFSDK_CALLBACK_BEGIN \
17#define PDFSDK_CALLBACK_END \
19 catch (PDF::Exception & ex) { \
20 PDSetErrMessage(ex.GetErrorMessage()); \
21 return ex.GetErrorCode(); \
23 catch (std::exception & ex) { \
24 PDSetErrMessage(ex.what()); \
25 return kPDErrInternalError; \
28 PDSetErrMessage("Unknown error"); \
29 return kPDErrInternalError; \
35inline PDErrCode CopyDataToBuffer(
const ElemT* data,
46 if (buffer && size > 0)
47 std::memcpy(buffer, data, size *
sizeof(ElemT));
52inline PDErrCode CopyDataToBuffer(
const ContT& cont,
void* buffer,
size_t bufsize,
size_t* pSize) {
53 return CopyDataToBuffer(std::data(cont), std::size(cont), buffer, bufsize, pSize);
@ kPDErrSuccess
Operation was successful.
Definition errors.h:18
@ kPDErrBufferTooSmall
Memory buffer too small, increase buffer size.
Definition errors.h:25
int32_t PDErrCode
Definition errors.h:44