123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453 |
- #ifndef _SAPACQUISITION_H_
- #define _SAPACQUISITION_H_
- // SapAcquisition.h : header file
- //
- #include "SapClassBasicDef.h"
- #include "SapBuffer.h"
- #define ACQCFG_DEFAULT_EXTENSION "ccf"
- #define ACQCFG_DEFAULT_FOLDER "\\CamFiles\\User"
- #define ACQCFG_SECTION_BOARD "Board"
- #define ACQCFG_KEY_SERVER_NAME "Server Name"
- #define ACQCFG_KEY_DEVICE_NAME "Device Name"
- #define ACQCFG_KEY_DEVICE_INDEX "Device Index"
- #define ACQCFG_SECTION_CUSTOM_PARAM "Custom Parameters"
- #define ACQCFG_CUSTOM_PARAM_ENTRY "Parameter_%d"
- #define ACQCFG_CUSTOM_PARAM_DEFAULT "0,0,0,No Parameter"
- #define ACQCFG_CUSTOM_PARAM_FORMAT "%i,%i,%i"
- //
- // SapAcquisition class declaration
- //
- // Forward declarations
- class SAPCLASSBASIC_CLASS SapAcqCallbackInfo;
- typedef void (*SapAcqCallback)(SapAcqCallbackInfo *);
- class SAPCLASSBASIC_CLASS SapAcquisition : public SapXferNode
- {
- public:
- // Acquisition event types
- typedef UINT64 EventType; // For compatibility with old Sapera++ application code
- static const EventType EventNone = 0;
- static const EventType EventShaftEncoderReverseCountOverflow = CORACQ_VAL_EVENT_TYPE_SHAFT_ENCODER_REVERSE_COUNT_OVERFLOW;
- static const EventType EventLineTriggerTooFast = CORACQ_VAL_EVENT_TYPE_LINE_TRIGGER_TOO_FAST;
- static const EventType EventLinkError = CORACQ_VAL_EVENT_TYPE_LINK_ERROR;
- static const EventType EventVerticalTimeout = CORACQ_VAL_EVENT_TYPE_VERTICAL_TIMEOUT;
- static const EventType EventExternalTrigger2 = CORACQ_VAL_EVENT_TYPE_EXTERNAL_TRIGGER2;
- static const EventType EventVirtualFrame = CORACQ_VAL_EVENT_TYPE_VIRTUAL_FRAME;
- static const EventType EventUserDefine = CORACQ_VAL_EVENT_TYPE_USER_DEFINE;
- static const EventType EventExternalTriggerTooSlow = CORACQ_VAL_EVENT_TYPE_EXT_LINE_TRIGGER_TOO_SLOW;
- static const EventType EventExtLineTriggerTooSlow = CORACQ_VAL_EVENT_TYPE_EXT_LINE_TRIGGER_TOO_SLOW;
- static const EventType EventHsyncLock = CORACQ_VAL_EVENT_TYPE_HSYNC_LOCK;
- static const EventType EventHsyncUnlock = CORACQ_VAL_EVENT_TYPE_HSYNC_UNLOCK;
- static const EventType EventExternalTriggerIgnored = CORACQ_VAL_EVENT_TYPE_EXTERNAL_TRIGGER_IGNORED;
- static const EventType EventDataOverflow = CORACQ_VAL_EVENT_TYPE_DATA_OVERFLOW;
- static const EventType EventFrameLost = CORACQ_VAL_EVENT_TYPE_FRAME_LOST;
- static const EventType EventStartOfField = CORACQ_VAL_EVENT_TYPE_START_OF_FIELD;
- static const EventType EventStartOfOdd = CORACQ_VAL_EVENT_TYPE_START_OF_ODD;
- static const EventType EventStartOfEven = CORACQ_VAL_EVENT_TYPE_START_OF_EVEN;
- static const EventType EventStartOfFrame = CORACQ_VAL_EVENT_TYPE_START_OF_FRAME;
- static const EventType EventEndOfField = CORACQ_VAL_EVENT_TYPE_END_OF_FIELD;
- static const EventType EventEndOfOdd = CORACQ_VAL_EVENT_TYPE_END_OF_ODD;
- static const EventType EventEndOfEven = CORACQ_VAL_EVENT_TYPE_END_OF_EVEN;
- static const EventType EventEndOfFrame = CORACQ_VAL_EVENT_TYPE_END_OF_FRAME;
- static const EventType EventExternalTrigger = CORACQ_VAL_EVENT_TYPE_EXTERNAL_TRIGGER;
- static const EventType EventVerticalSync = CORACQ_VAL_EVENT_TYPE_VERTICAL_SYNC;
- static const EventType EventEndOfLine = CORACQ_VAL_EVENT_TYPE_END_OF_LINE;
- static const EventType EventEndOfNLines = CORACQ_VAL_EVENT_TYPE_END_OF_NLINES;
- static const EventType EventNoHSync = CORACQ_VAL_EVENT_TYPE_NO_HSYNC;
- static const EventType EventNoVSync = CORACQ_VAL_EVENT_TYPE_NO_VSYNC;
- static const EventType EventNoPixelClk = CORACQ_VAL_EVENT_TYPE_NO_PIXEL_CLK;
- static const EventType EventPixelClk = CORACQ_VAL_EVENT_TYPE_PIXEL_CLK;
- static const EventType EventMask = CORACQ_VAL_EVENT_TYPE_MASK;
- static const EventType EventLinkLock = CORACQ_VAL_EVENT_TYPE_LINK_LOCK;
- static const EventType EventLinkUnlock = CORACQ_VAL_EVENT_TYPE_LINK_UNLOCK;
- static const EventType EventCameraMissedTrigger = CORACQ_VAL_EVENT_TYPE_CAMERA_MISSED_TRIGGER;
- static const EventType EventCameraBufferOverrun = CORACQ_VAL_EVENT_TYPE_CAMERA_BUFFER_OVERRUN;
- // Software trigger types
- typedef int SoftwareTriggerType;
- enum _SoftwareTriggerType
- {
- SoftwareTriggerExt = CORACQ_VAL_SOFTWARE_TRIGGER_EXT,
- SoftwareTriggerExtFrame = CORACQ_VAL_SOFTWARE_TRIGGER_EXT_FRAME,
- SoftwareTriggerExtLine = CORACQ_VAL_SOFTWARE_TRIGGER_EXT_LINE
- };
- // Flipping modes
- typedef int FlipMode;
- enum _FlipMode
- {
- FlipNone = CORACQ_VAL_FLIP_OFF,
- FlipHorizontal = CORACQ_VAL_FLIP_HORZ,
- FlipVertical = CORACQ_VAL_FLIP_VERT
- };
- // Time stamp base
- typedef int TimeStampBase;
- enum _TimeStampBase
- {
- TimeStampNone = 0,
- TimeStampMicroSec = CORACQ_VAL_TIME_BASE_US,
- TimeStampMilliSec = CORACQ_VAL_TIME_BASE_MS,
- TimeStampLineValid = CORACQ_VAL_TIME_BASE_LINE_VALID,
- TimeStampLineTrigger = CORACQ_VAL_TIME_BASE_LINE_TRIGGER,
- TimeStampFrameValid = CORACQ_VAL_TIME_BASE_FRAME_VALID,
- TimeStampFrameTrigger = CORACQ_VAL_TIME_BASE_FRAME_TRIGGER,
- TimeStampShaftEncoder = CORACQ_VAL_TIME_BASE_SHAFT_ENCODER,
- TimeStampNanoSec = CORACQ_VAL_TIME_BASE_NS,
- TimeStampPixelClock = CORACQ_VAL_TIME_BASE_PIXEL_CLK,
- TimeStamp100NanoSec = CORACQ_VAL_TIME_BASE_100NS
- };
- // Signal status
- typedef int SignalStatus;
- enum _SignalStatus
- {
- SignalNone = 0,
- SignalHSyncPresent = CORACQ_VAL_SIGNAL_HSYNC_PRESENT,
- SignalVSyncPresent = CORACQ_VAL_SIGNAL_VSYNC_PRESENT,
- SignalPixelClkPresent = CORACQ_VAL_SIGNAL_PIXEL_CLK_PRESENT,
- SignalChromaPresent = CORACQ_VAL_SIGNAL_CHROMA_PRESENT,
- SignalHSyncLock = CORACQ_VAL_SIGNAL_HSYNC_LOCK,
- SignalVSyncLock = CORACQ_VAL_SIGNAL_VSYNC_LOCK,
- SignalPowerPresent = CORACQ_VAL_SIGNAL_POWER_PRESENT,
- SignalPoCLActive = CORACQ_VAL_SIGNAL_POCL_ACTIVE,
- SignalPoCLActive2 = CORACQ_VAL_SIGNAL_POCL_ACTIVE_2,
- SignalPixelClk1Present = CORACQ_VAL_SIGNAL_PIXEL_CLK_1_PRESENT,
- SignalPixelClk2Present = CORACQ_VAL_SIGNAL_PIXEL_CLK_2_PRESENT,
- SignalPixelClk3Present = CORACQ_VAL_SIGNAL_PIXEL_CLK_3_PRESENT,
- SignalPixelClkAllPresent = CORACQ_VAL_SIGNAL_PIXEL_CLK_ALL_PRESENT,
- SignalPixelLinkLock = CORACQ_VAL_SIGNAL_LINK_LOCK,
- SignalPixelLane1Lock = CORACQ_VAL_SIGNAL_LANE1_LOCK,
- SignalPixelLane2Lock = CORACQ_VAL_SIGNAL_LANE2_LOCK,
- SignalPixelLane3Lock = CORACQ_VAL_SIGNAL_LANE3_LOCK,
- SignalPixelLane4Lock = CORACQ_VAL_SIGNAL_LANE4_LOCK,
- SignalPixelLane5Lock = CORACQ_VAL_SIGNAL_LANE5_LOCK,
- SignalPixelLane6Lock = CORACQ_VAL_SIGNAL_LANE6_LOCK,
- SignalPixelLane7Lock = CORACQ_VAL_SIGNAL_LANE7_LOCK,
- SignalPoCLActive3 = CORACQ_VAL_SIGNAL_POCL_ACTIVE_3,
- SignalPoCLActive4 = CORACQ_VAL_SIGNAL_POCL_ACTIVE_4,
- };
- // Video source scan types
- typedef int ScanType;
- enum _ScanType
- {
- ScanArea = CORACQ_VAL_SCAN_AREA,
- ScanLine = CORACQ_VAL_SCAN_LINE
- };
- // Video types
- enum VideoType
- {
- VideoMono = CORACQ_VAL_VIDEO_MONO,
- VideoColor = CORACQ_VAL_VIDEO_COLOR,
- VideoYC = CORACQ_VAL_VIDEO_YC,
- VideoRGB = CORACQ_VAL_VIDEO_RGB,
- VideoBayer = CORACQ_VAL_VIDEO_BAYER,
- VideoBiColor = CORACQ_VAL_VIDEO_BICOLOR,
- VideoRGBY = CORACQ_VAL_VIDEO_RGBY
- };
- // Image filter kernel sizes
- enum ImageFilterKernelSize
- {
- ImageFilterSize1x1 = CORACQ_VAL_IMAGE_FILTER_KERNEL_SIZE_1x1,
- ImageFilterSize2x2 = CORACQ_VAL_IMAGE_FILTER_KERNEL_SIZE_2x2,
- ImageFilterSize3x3 = CORACQ_VAL_IMAGE_FILTER_KERNEL_SIZE_3x3,
- ImageFilterSize4x4 = CORACQ_VAL_IMAGE_FILTER_KERNEL_SIZE_4x4,
- ImageFilterSize5x5 = CORACQ_VAL_IMAGE_FILTER_KERNEL_SIZE_5x5,
- ImageFilterSize6x6 = CORACQ_VAL_IMAGE_FILTER_KERNEL_SIZE_6x6,
- ImageFilterSize7x7 = CORACQ_VAL_IMAGE_FILTER_KERNEL_SIZE_7x7,
- ImageFilterSize8x8 = CORACQ_VAL_IMAGE_FILTER_KERNEL_SIZE_8x8,
- ImageFilterSize4x3 = CORACQ_VAL_IMAGE_FILTER_KERNEL_SIZE_4x3
- };
- // Various constants
- enum MiscValues
- {
- MaxCameras = 32,
- MaxSerialPortNameSize = 64,
- MaxCustomParamSize = 4096
- };
- public:
- // Constructor/Destructor
- SapAcquisition(SapLocation location = SapLocation::ServerSystem);
- SapAcquisition(SapLocation location, const char *configFile, EventType eventType = EventNone, SapAcqCallback pCallback = NULL, void *pContext = NULL);
- SapAcquisition(SapLocation location, const char *camfile, const char *vicfile, EventType eventType = EventNone, SapAcqCallback pCallback = NULL, void *pContext = NULL);
- SapAcquisition(const SapAcquisition &acq);
- SapAcquisition(const SapAcquisition &acq, EventType eventType, SapAcqCallback pCallback, void* pContext= NULL);
- virtual ~SapAcquisition();
- SapAcquisition &operator= (const SapAcquisition &acq);
- // Creation/destruction
- virtual BOOL Create();
- virtual BOOL Destroy();
- public:
- // SapXferNode type information
- XferNodeType GetXferNodeType() { return NodeTypeAcquisition; }
- // Access to implementation
- const char *GetConfigFile() const { return m_CamFile;}
- const char *GetCamFile() const { return m_CamFile; }
- const char *GetVicFile() const { return m_VicFile; }
- const char *GetLabel() const { return m_Label;}
- EventType GetEventType() const { return m_EventType; }
- SapAcqCallback GetCallback() const { return m_pCallback; }
- void *GetContext() const { return m_pContext; }
- FlipMode GetFlipMode() const { return m_FlipMode; }
- int GetCamSel() const { return m_CamSel; }
- virtual BOOL SetConfigFile( const char *configFile);
- virtual BOOL SetCamFile(const char *camfile);
- virtual BOOL SetVicFile(const char *vicfile);
- virtual BOOL SetCallbackInfo( SapAcqCallback pCallback, void *pContext= NULL);
- virtual BOOL SetEventType(EventType eventType);
- #if COR_LINUX
- CORCAM GetCam();
- CORVIC GetVic();
- #else
- CORCAM GetCam() const { return m_hCam; }
- CORVIC GetVic() const { return m_hVic; }
- #endif
- virtual BOOL IsCapabilityValid(int cap);
- virtual BOOL IsParameterValid(int param);
- virtual BOOL GetCapability(int cap, void *pValue);
- virtual BOOL GetParameter(int param, void *pValue);
- virtual BOOL SetParameter(int param, int value, BOOL updateNow = TRUE);
- virtual BOOL SetParameter(int param, void *pValue, BOOL updateNow = TRUE);
- static UINT32 GetParameterSize(int param);
- virtual BOOL SetFlipMode(FlipMode flipMode);
- virtual BOOL SetCamSel(int camSel);
- virtual BOOL SoftwareTrigger(SoftwareTriggerType triggerType);
- virtual BOOL SaveParameters(const char *camfile, const char *vicfile);
- virtual BOOL SaveParameters(const char *configFile);
- // Signal status management
- BOOL IsSignalStatusAvailable();
- BOOL IsSignalStatusAvailable(SignalStatus signalStatus);
- virtual BOOL GetSignalStatus(SignalStatus *pSignalStatus, SapAcqCallback pCallback = NULL, void *pContext = NULL);
- virtual BOOL GetSignalStatus(SignalStatus signalStatus, BOOL *pIsActive);
- // Callback functionality
- BOOL RegisterCallback(EventType eventType, SapAcqCallback callback, void *context = NULL);
- BOOL UnregisterCallback();
- // Look-up table management
- SapLut *GetLut(int lutIndex = 0);
- virtual BOOL ApplyLut(BOOL enable = TRUE);
- virtual BOOL ApplyLut(BOOL enable, int lutIndex);
- virtual BOOL EnableLut(BOOL enable = TRUE);
- BOOL CanEnableLut() { return m_LutEnableCap; }
- BOOL IsLutEnabled() { return m_LutEnable; }
- int GetNumLut() { return m_LutMax; }
- // Time stamp management
- BOOL IsTimeStampAvailable();
- TimeStampBase GetTimeStampBase() const { return m_TimeStampBase; }
- virtual BOOL SetTimeStampBase(TimeStampBase timeStampBase);
- virtual BOOL ResetTimeStamp();
- // Planar input sources management
- int GetNumPlanarInputs() const { return m_NumPlanarInputs; }
- virtual BOOL GetPlanarInputs(BOOL *pCamEnable);
- virtual BOOL SetPlanarInputs(BOOL *pCamEnable, int numCameras);
- // Flat field correction management
- BOOL IsFlatFieldAvailable() const;
- // Bayer conversion management (obsolete)
- BOOL IsBayerAvailable() const;
- // Color conversion management
- BOOL IsColorConversionAvailable() const;
- BOOL IsWhiteBalanceAvailable() const;
- // Image Filter management
- BOOL IsImageFilterAvailable() const { return m_ImageFilterCap; }
- BOOL IsImageFilterEnabled();
- BOOL EnableImageFilter(BOOL enable = TRUE);
- BOOL SetImageFilter(UINT32 filterIndex, SapBuffer *pKernel);
- BOOL GetImageFilterKernelSize(UINT32 filterIndex, ImageFilterKernelSize *pKernelSize);
- BOOL GetImageFilter(UINT32 filterIndex, SapBuffer *pKernel);
- BOOL LoadImageFilter(UINT32 filterIndex, const char *file);
- BOOL SaveImageFilter(UINT32 filterIndex, const char *file);
- // Dynamic LUT management
- BOOL IsDynamicLutAvailable() const;
- // Serial port management
- BOOL GetSerialPortName(char *serialPortName);
- // Commands specific to each acquisition device
- BOOL CustomCommand(int command, void *inData, int inDataSize, void *outData, int outDataSize);
- protected:
- // Utility methods
- virtual BOOL CreateRemaining();
- virtual BOOL DestroyLut();
- virtual void Construct(const char *camfile, const char *vicfile, EventType eventType, SapAcqCallback pCallback, void *pContext);
- virtual BOOL LoadConfig();
- virtual BOOL LoadCamVic();
- virtual BOOL SetCustomParams();
- virtual BOOL SetXferParams();
- virtual BOOL UpdateLutParams();
- virtual BOOL IsLutUpdateNeeded(int param);
- virtual BOOL GetParameter(int param, void *pValue, BOOL updateCamVic);
- virtual BOOL FixFilePath(const char *originalFilename, char *fullFilePath);
- virtual BOOL LoadLut(int lutIndex);
- virtual BOOL SetColorCorrectionImageFilter(UINT32 filterIndex, SapBuffer *pKernel);
- virtual BOOL LoadColorCorrectionImageFilter(UINT32 filterIndex, const char *file);
- virtual BOOL SaveColorCorrectionImageFilter(UINT32 filterIndex, const char *file);
- static SAPSTATUS CCONV OnCallback(void *context, UINT32 eventType, UINT32 eventCount);
- static SAPSTATUS CCONV OnCallbackEx(void *context, COREVENTINFO eventInfo);
- virtual BOOL IsNewCallbackSupported();
- static void CALLBACK TimerProc(UINT timerId, UINT reserved1, DWORD_PTR userData, DWORD_PTR reserved2, DWORD_PTR reserved3);
- static BOOL IsCameraSignalLost(int initialCameraSignal, int currentCameraSignal);
- protected:
- // Parameters
- char m_CamFile[MAX_PATH]; // CAM file name
- char m_VicFile[MAX_PATH]; // VIC file name
- char m_Label[MaxLabelSize]; // Name of the acquisition resource
- EventType m_EventType; // Type of event for callback
- SapAcqCallback m_pCallback; // Application callback function
- void *m_pContext; // Application context
- // Look-up table management
- BOOL m_LutEnableCap;
- BOOL m_LutEnable;
- int m_LutEntries;
- SapFormat m_LutFormat;
- int m_LutMax;
- SapLut** m_AcqLut;
- // Pixel depth and shift for transfer parameters
- int m_PixelDepthWithLut;
- int m_PixelDepthNoLut;
- int m_PixelShiftWithLut;
- int m_PixelShiftNoLut;
- // Flipping mode management
- FlipMode m_FlipModeCap;
- FlipMode m_FlipMode;
- // Signal status management
- SignalStatus m_SignalStatusCap; // Hardware capability
- SignalStatus m_SignalStatus; // Current parameter value
- SapAcqCallback m_pSignalCallback; // Callback function for parameter value changes
- void *m_pSignalContext; // Context information for signal status callback
- UINT m_SignalTimerId; // Timer ID for periodic value change checking
- // Time stamp management
- TimeStampBase m_TimeStampBaseCap;
- TimeStampBase m_TimeStampBase;
- // Planar input sources management
- BOOL m_PlanarInputsCap; // Hardware capability
- int m_PlanarInputsMask; // Current parameter value
- int m_NumPlanarInputs; // Number of cameras used simultaneously
- // Flat field correction management
- BOOL m_FlatFieldCap; // Hardware capability
- // Color conversion management
- BOOL m_ColorConvCap; // Hardware capability
- BOOL m_ColorDecoderEnable; // Hardware parameter
- BOOL m_WhiteBalanceCap; // Hardware capability
- // Image Filter management
- BOOL m_ImageFilterCap;
- UINT32 m_ImageFilterCount;
-
- // Dynamic LUT management
- BOOL m_DynamicLutCap; // Hardware capability
- // Management of custom parameters in configuration file
- char *m_CustomParamsBuf;
- int m_CustomParamsSize;
- // Others
- CORCAM m_hCam; // Handle to CAM module
- CORVIC m_hVic; // Handle to VIC module
- BOOL m_bIsCamVicLoaded; // TRUE if CAM/VIC files are loaded
- BOOL m_bCallbackRegistered; // TRUE if callback successfully registered
- int m_NumPendingParams; // Number of changed parameters no yet written to the acquisition hardware
- int m_CamSel; // Camera selector input
- BOOL m_NewCallbackSupported; // TRUE if the new callback method is supported
- BOOL m_NewCallbackCheckdone; // TRUE if the new callback method check ha sbeen performed
- };
- //
- // SapAcqCallbackInfo class declaration
- //
- class SAPCLASSBASIC_CLASS SapAcqCallbackInfo
- {
- public:
- SapAcqCallbackInfo(SapAcquisition *pAcq, void *context, SapAcquisition::EventType eventType, int eventCount)
- { m_pAcq = pAcq; m_Context = context; m_EventType = eventType; m_EventCount = eventCount; m_SignalStatus = SapAcquisition::SignalNone; m_NewCallback = FALSE;}
- SapAcqCallbackInfo(SapAcquisition *pAcq, void *context, SapAcquisition::SignalStatus signalStatus)
- { m_pAcq = pAcq; m_Context = context; m_EventType = SapAcquisition::EventNone; m_EventCount = 0; m_SignalStatus = signalStatus; m_NewCallback = FALSE;}
- SapAcqCallbackInfo(SapAcquisition *pAcq, void *context, COREVENTINFO eventInfo);
- ~SapAcqCallbackInfo() {}
- // Obsolete constructor
- SapAcqCallbackInfo(void *context, SapAcquisition::EventType eventType, int eventCount)
- { m_pAcq = NULL; m_Context = context; m_EventType = eventType; m_EventCount = eventCount; m_SignalStatus = SapAcquisition::SignalNone; }
- SapAcquisition *GetAcquisition() const { return m_pAcq; }
- void *GetContext() const { return m_Context; }
- SapAcquisition::SignalStatus GetSignalStatus() const { return m_SignalStatus; }
- COREVENTINFO GetEventInfo() const { return m_EventInfo; }
- //Event Count
- int GetEventCount() const { return m_EventCount; }
- BOOL GetEventCount(int *eventCount);
- //Event Type
- SapAcquisition::EventType GetEventType() const { return m_EventType; }
- BOOL GetEventType(SapAcquisition::EventType *eventType);
-
- //Timestamp
- BOOL GetHostTimeStamp(UINT64 *hostTimeStamp);
- BOOL GetAuxiliaryTimeStamp(UINT64 *auxTimeStamp);
-
- // Custom Parameters
- BOOL GetCustomData(void **customData);
- BOOL GetCustomSize(int *customSize);
- // Unnamed Parameters
- BOOL GetGenericParam0(int *paramValue);
- BOOL GetGenericParam1(int *paramValue);
- BOOL GetGenericParam2(int *paramValue);
- BOOL GetGenericParam3(int *paramValue);
- protected:
- SapAcquisition *m_pAcq;
- void *m_Context;
- SapAcquisition::EventType m_EventType;
- int m_EventCount;
- SapAcquisition::SignalStatus m_SignalStatus;
- COREVENTINFO m_EventInfo;
- BOOL m_NewCallback;
- };
- #endif // _SAPACQUISITION_H_
|