#pragma once enum SITYPE { L = 000, B = 010, Bool = 011, A = 020, J = 021, SLASH = 022, I8 = 030, I1 = 031, I2 = 032, I4 = 034, F8 = 040, F4 = 044, U8 = 050, U1 = 051, U2 = 052, U4 = 054 }; class ISECS2Item { public: virtual SITYPE getType() = 0; virtual const char* toString() = 0; virtual bool getString(char*& pszText) = 0; virtual int getSubItemSize() = 0; virtual ISECS2Item* getSubItem(int index) = 0; virtual bool getSubItemString(int index, char*& pszText) = 0; virtual void reset() = 0; virtual ISECS2Item* addItem(const char* pszText, const char* pszNote) = 0; virtual ISECS2Item* addBinaryItem(const char* pszData, int nDataLen, const char* pszNote) = 0; virtual void setBinary(const char* pszData, int nLen, const char* pszNote) = 0; virtual ISECS2Item* addItem() = 0; };