// MultiCamCppInternal.H - MULTICAM C++ API #if !defined(__MULTICAMCPPEXTERNAL_H__) #define __MULTICAMCPPEXTERNAL_H__ // For wrapping #if defined __MULTICAM_WRAPPING__ #ifdef __GNUC__ typedef void (*FinalizeCallback)(int handle); #else typedef void (__stdcall *FinalizeCallback)(int handle); #endif #define WRAPPING_MEMBERS public: \ FinalizeCallback callback_; \ int handle_; \ #define WRAPPING_MEMBERS_INIT handle_ = 0; \ callback_ = 0; \ #define WRAPPING_MEMBERS_UNINIT if ((handle_ != NULL) && (callback_ != NULL)) { \ MultiCam_LockDestructorCriticalSection(); \ if ((handle_ != NULL) && (callback_ != NULL)) callback_(handle_); \ MultiCam_UnlockDestructorCriticalSection(); }\ #else #define WRAPPING_MEMBERS #define WRAPPING_MEMBERS_INIT #define WRAPPING_MEMBERS_UNINIT #endif #endif