18 #ifndef DS3D_COMMON_HPP_DATA_PROCESS_HPP
19 #define DS3D_COMMON_HPP_DATA_PROCESS_HPP
21 #include <ds3d/common/abi_dataprocess.h>
22 #include <ds3d/common/abi_frame.h>
23 #include <ds3d/common/abi_obj.h>
24 #include <ds3d/common/common.h>
25 #include <ds3d/common/func_utils.h>
27 #include <ds3d/common/hpp/datamap.hpp>
28 #include <ds3d/common/hpp/obj.hpp>
32 template <
class abiDataProcessorT, _EnableIfBaseOf<abiProcess, abiDataProcessorT> = true>
38 template <
typename... Args >
47 template <
typename DelF>
52 ptr()->setUserData_i(
nullptr);
56 ptr()->setUserData_i(&uData);
63 return (udata ? udata->
data() :
nullptr);
70 guardErrCb.
setFn<
ErrCode,
const char*>(std::move(errCb));
71 ptr()->setErrorCallback_i(*guardErrCb.
abiRef());
74 ErrCode start(
const std::string& content,
const std::string& path =
"")
77 return ptr()->start_i(content.c_str(), content.size(), path.c_str());
83 return ptr()->flush_i();
89 return ptr()->stop_i();
95 return ptr()->state_i();
110 #endif // DS3D_COMMON_HPP_DATA_PROCESS_HPP