/*************************************************************************** rc_du Header ( rc_du.h ) ----------------------------------------- begin : 2011/02/16 copyright : (C) 2005 SolutionBox Inc. author : Service 1 Team email : svc1@solbox.com version : 3.0.1 CopyRight(C) 2005 SolutionBox Inc. All Rights reserved. Redistribution and use in source and binary forms, with or with out modification, are not permitted in outside of SolutionBox Inc. ***************************************************************************/ #ifndef __RCTS_RC_DU_H__ #define __RCTS_RC_DU_H__ #include #include #include #include #include #include #include #include #include #include #include #include #include # if __GNUC__ >= 3 # include using namespace __gnu_cxx; # else # include # endif using namespace std; //rc_du data class // information class CRCduInfo { public: CRCduInfo () : m_userseq(0), m_tranid(0), m_caldepth(0) { }; CRCduInfo( const CRCduInfo ©in) { this->m_userseq = copyin.getInfoUserseq(); this->m_tranid = copyin.getInfoTranid(); this->m_caldepth = copyin.getInfoCaldepth(); this->m_serviceid = copyin.getInfoService(); }; ~CRCduInfo() { }; CRCduInfo& operator=( const CRCduInfo &rhs ) { this->m_userseq = rhs.getInfoUserseq(); this->m_tranid = rhs.getInfoTranid(); this->m_caldepth = rhs.getInfoCaldepth(); this->m_serviceid = rhs.getInfoService(); return *this; } // data set inline void setInfoUserseq(int64_t val) { this->m_userseq = val; } inline void setInfoTranid(int64_t val) { this->m_tranid = val; } inline void setInfoCaldepth(int val) { this->m_caldepth = val; } inline void setInfoService(const char * val) { this->m_serviceid = val; } // data get inline int64_t getInfoUserseq( void ) const { return this->m_userseq; } inline int64_t getInfoTranid( void ) const { return this->m_tranid; } inline int getInfoCaldepth( void ) const { return this->m_caldepth; } inline const char* getInfoService( void ) const { return this->m_serviceid.c_str(); } private: int64_t m_userseq; int64_t m_tranid; int m_caldepth; string m_serviceid; }; // sync data class CSyncData { public: CSyncData() : m_userseq(0), m_tranid(0), m_depth(0), m_used(0), m_path("") { }; CSyncData( const CSyncData ©in) { this->m_userseq = copyin.getUserseq(); this->m_tranid = copyin.getTranid(); this->m_depth = copyin.getdepth(); this->m_used = copyin.getused(); this->m_path = copyin.getpath(); }; ~CSyncData() { }; CSyncData& operator=( const CSyncData &rhs ) { this->m_userseq = rhs.getUserseq(); this->m_tranid = rhs.getTranid(); this->m_depth = rhs.getdepth(); this->m_used = rhs.getused(); this->m_path = rhs.getpath(); return *this; } // data set inline void setUserseq(int64_t val) { this->m_userseq = val; } inline void setTranid(int64_t val) { this->m_tranid = val; } inline void setdepth(int val) { this->m_depth = val; } inline void addused(int64_t val) { this->m_used = m_used + val; } inline void setpath(const char * val) { this->m_path = val; } // data get inline int64_t getUserseq( void ) const { return this->m_userseq; } inline int64_t getTranid( void ) const { return this->m_tranid; } inline int getdepth( void ) const { return this->m_depth; } inline int64_t getused( void ) const { return this->m_used; } inline const char* getpath( void ) const { return this->m_path.c_str(); } private: int64_t m_userseq; int64_t m_tranid; int m_depth; int64_t m_used; string m_path; }; typedef list RCUDINFOLIST; struct hash_key { size_t operator() (const string &k) const { return __stl_hash_string(k.c_str()); } }; struct compare_key { bool operator () (const string s1, const string &s2) const { return s1 == s2; } }; typedef hash_map SYNCDATAMAP; #endif // __RCTS_RC_DU_H__