/* Header for the definition of a characteristic type*/ /*//////////////////////////////////////////////////////*/ /* A characteristic type is an abstract class which defines*/ /* some common functions of specific characteristics (like Booleans,*/ /* numerical values, aso)*/ /* Every specific type of characteristic will inherit of this class*/ /*/////////////////////////////////////////////////////////////////////*/ #ifndef _CTL_LIST_OF_DATA_ #define _CTL_LIST_OF_DATA_ #if _MSC_VER >= 1000 #pragma once #endif /* _MSC_VER >= 1000*/ #include #include "CTL_Dat.hpp" /*###################################################################*/ /* Definition of the class for the list of characteristics*/ class CPA_EXPORT CTL_Editor_DataList : public CList { public: CTL_Editor_DataList(); ~CTL_Editor_DataList(); /*Members*/ private: /*List of OwnerData*/ CTL_ListOfOwnerData m_pri_clListOfOwnerData; /*Functions*/ public: /*Owner Data*/ CTL_OwnerData *m_pub_fn_pclAddOwnerData(void *_pvDataPtr, CString _csName); CTL_OwnerData *m_pub_fn_pclAddOwnerData(long _lData, CString _csName); CTL_OwnerData *m_pub_fn_pclGetOwnerDataWithName(CString _csSearchedName); /*------------------------------------------------------------------------------------------*/ /*To add a specific data*/ CTL_Editor_Data *m_fn_pclAddBooleanData(CString csScriptName, CTL_Editor_Data *pclCurrentBaseData = NULL); CTL_Editor_Data *m_fn_pclAddBitFieldBooleanData(tdBitFieldCoder, CString csScriptName, CTL_Editor_Data *pclCurrentBaseData = NULL); CTL_Editor_Data *m_fn_pclAddMaskedData( CTL_Editor_MaskDescriptor *_pclMaskDescriptor, CString csScriptName, CTL_Editor_Data *pclCurrentBaseData = NULL); CTL_Editor_Data *m_fn_pclAddIntegerData(char, BOOL, CString csScriptName, CTL_Editor_Data *pclCurrentBaseData = NULL); CTL_Editor_Data *m_fn_pclAddDecimalData(char, CString csScriptName, CTL_Editor_Data *pclCurrentBaseData = NULL); CTL_Editor_Data *m_fn_pclAddEnumData( CTL_Editor_EnumDescriptor *, CString csScriptName, CTL_Editor_Data *pclCurrentBaseData = NULL); CTL_Editor_Data *m_fn_pclAddTextData( CString csScriptName, CTL_Editor_Data *pclCurrentBaseData = NULL); CTL_Editor_Data *m_fn_pclAddVectorData( char, CString csScriptName, CTL_Editor_Data *pclCurrentBaseData = NULL); /*------------------------------------------------------------------------------------------*/ /*To add a user defined data*/ void m_pub_fn_vAddData(CTL_Editor_Data *_pclDataToAdd); /*------------------------------------------------------------------------------------------*/ /*To get a data from its Name*/ CTL_Editor_Data *m_fn_pclGetDataFromName(CString csName); private: void *m_pri_p_vDataPtr; private: void m_fn_vEmptyList(); }; #endif /*_CTL_LIST_OF_DATA_*/