// Definitions for the classes to handle lists of Owner Data // // YB /////////////////////////////////////////////////////////////// #include "StdAfx.h" #include "Others\CTL_ODat.hpp" //External Modules #include "CTL_ErO.hpp" //End of External Modules //############################################################# //############################################################# //############################################################# //********************************************************************************* CTL_OwnerData::CTL_OwnerData(void *_pvDataPtr, CString _csName) { m_pri_pvDataPtr = _pvDataPtr; m_pri_csName = _csName; m_pri_tdeType = CTL_OWNER_DATA_TYPE_POINTER; m_pri_lData = 0; } //********************************************************************************* CTL_OwnerData::CTL_OwnerData(long _lData, CString _csName) { m_pri_lData = _lData; m_pri_csName = _csName; m_pri_tdeType = CTL_OWNER_DATA_TYPE_LONG; m_pri_pvDataPtr = NULL; } //********************************************************************************* CTL_OwnerData::~CTL_OwnerData() { } //********************************************************************************* CString CTL_OwnerData::m_pub_fn_csGetName() { return m_pri_csName; } //********************************************************************************* void *CTL_OwnerData::m_pub_fn_pvGetDataPtr() { //ANNECY CB // ERROR_ASSERT( m_pri_tdeType == CTL_OWNER_DATA_TYPE_POINTER ); //END return m_pri_pvDataPtr; } //********************************************************************************* void CTL_OwnerData::m_pub_fn_vSetDataPtr(void *_pvDataPtr) { m_pri_pvDataPtr = _pvDataPtr; } //********************************************************************************* long CTL_OwnerData::m_pub_fn_lGetData() { //ANNECY CB // ERROR_ASSERT( m_pri_tdeType == CTL_OWNER_DATA_TYPE_LONG ); //END return m_pri_lData; } //********************************************************************************* void CTL_OwnerData::m_pub_fn_vSetData(long _lData) { m_pri_lData = _lData; } //############################################################# //############################################################# //############################################################# //********************************************************************************* CTL_ListOfOwnerData::CTL_ListOfOwnerData() { } //********************************************************************************* CTL_ListOfOwnerData::~CTL_ListOfOwnerData() { m_pub_fn_vEmptyListAndDestroyElements(); } //********************************************************************************* void CTL_ListOfOwnerData::m_pub_fn_vAddOwnerData(CTL_OwnerData *_pclNewOwnerData) { } //********************************************************************************* CTL_OwnerData *CTL_ListOfOwnerData::m_pub_fn_pclAddOwnerData(void *_pvDataPtr, CString _csName) { CTL_OwnerData *pclNewOD = new CTL_OwnerData(_pvDataPtr, _csName); AddTail(pclNewOD); return pclNewOD; } //********************************************************************************* CTL_OwnerData *CTL_ListOfOwnerData::m_pub_fn_pclAddOwnerData(long _lData, CString _csName) { CTL_OwnerData *pclNewOD = new CTL_OwnerData(_lData, _csName);; AddTail(pclNewOD); return pclNewOD; } //********************************************************************************* void CTL_ListOfOwnerData::m_pub_fn_vEmptyListAndDestroyElements() { POSITION pos = GetHeadPosition(); while ( pos != NULL ) delete ( GetNext(pos) ); RemoveAll(); } //********************************************************************************* void CTL_ListOfOwnerData::m_pub_fn_vEmptyListWithoutDestroyingElements() { RemoveAll(); } //********************************************************************************* CTL_OwnerData *CTL_ListOfOwnerData::m_pub_fn_pclFindOwnerDataWithName(CString _csSearchedName) { CTL_OwnerData *pclCurrentOD; BOOL bFound = FALSE; POSITION pos = GetHeadPosition(); while ( (pos != NULL) && (!bFound) ) { pclCurrentOD = GetNext(pos); bFound = ( pclCurrentOD->m_pub_fn_csGetName().Compare(_csSearchedName) == 0 ); } if ( bFound ) return pclCurrentOD; else return NULL; }