CaptureWriterInterface.h 800 B

123456789101112131415161718192021222324252627282930313233343536
  1. #pragma once
  2. #include <string>
  3. #define CAPTUREWRITER_CLASS_DECL
  4. namespace DIOS_DataElement
  5. {
  6. class CDataMgr;
  7. }
  8. namespace DIOS_Kernel
  9. {
  10. class CLoopShareMemMgr;
  11. class CAPTUREWRITER_CLASS_DECL CCaptureWriter
  12. {
  13. public:
  14. CCaptureWriter(const wchar_t* wstrName);
  15. virtual ~CCaptureWriter();
  16. const wchar_t* GetName();
  17. bool Init(bool bMemOverlapped);
  18. bool SetPerBlockLen(size_t nPerBlockLen);
  19. bool BeginWriteSequence(const wchar_t* wszNotify);
  20. bool WriteGrayDataForFPD(int nWidth, int nHeight, int nBits, int nFrameId, void* pData, int nDataLen);
  21. bool WriteData(void* pData, int nDataLen);
  22. bool EndWriteSequence(const wchar_t* wszNotify);
  23. private:
  24. CLoopShareMemMgr * m_pShareMemMgr;
  25. std::wstring* m_pwstrName;
  26. DIOS_DataElement::CDataMgr* m_pDataMgr;
  27. bool m_bInit;
  28. };
  29. }