SapCab.h 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. #ifndef _SAPCAB_H_
  2. #define _SAPCAB_H_
  3. // SapCab.h : header file
  4. //
  5. #include "SapClassBasicDef.h"
  6. //
  7. // SapCab class declaration
  8. //
  9. class SAPCLASSBASIC_CLASS SapCab : public SapXferNode
  10. {
  11. public:
  12. // Various constants
  13. enum MiscValues
  14. {
  15. MaxPorts = 16
  16. };
  17. public:
  18. // Constructor/Destructor
  19. SapCab(SapLocation loc = SapLocation::ServerSystem, SapXferNode *pSrcNode = NULL);
  20. SapCab(SapLocation loc, SapXferParams xferParams);
  21. SapCab(const SapCab &cab);
  22. virtual ~SapCab();
  23. SapCab &operator= (const SapCab &cab);
  24. // Module create/destroy
  25. virtual BOOL Create();
  26. virtual BOOL Destroy();
  27. // SapXferNode type information
  28. XferNodeType GetXferNodeType() { return NodeTypeCab; }
  29. // Direct capability/parameter access
  30. virtual BOOL GetCapability(int cap, void *pValue);
  31. virtual BOOL GetParameter(int param, void *pValue);
  32. virtual BOOL SetParameter(int param, int value);
  33. virtual BOOL SetParameter(int param, void *pValue);
  34. //cab supports only 1 xferparam
  35. virtual SapXferParams GetXferParams(int portIndex = 0) const { return SapXferNode::GetXferParams(0); }
  36. virtual SapXferParams GetInputXferParams(int portIndex = 0) const { return SapXferNode::GetInputXferParams(0); }
  37. virtual SapXferParams GetOutputXferParams(int portIndex = 0) const { return SapXferNode::GetOutputXferParams(0); }
  38. virtual BOOL SetXferParams(SapXferParams xferParams, int portIndex = 0) { return SapXferNode::SetXferParams(xferParams, 0); }
  39. virtual BOOL SetInputXferParams(SapXferParams xferParams, int portIndex = 0) { return SapXferNode::SetInputXferParams(xferParams, 0); }
  40. virtual BOOL SetOutputXferParams(SapXferParams xferParams, int portIndex = 0) { return SapXferNode::SetOutputXferParams(xferParams, 0); }
  41. protected:
  42. virtual void Construct(int transferMode, int portCount, const int *channels);
  43. int GetBlockSize() const;
  44. protected:
  45. int m_TransferMode;
  46. int m_PortCount;
  47. int m_Channels[MaxPorts];
  48. };
  49. #endif // _SAPCAB_H_