00001 00002 #ifndef SCT_SCTAPI_IDIOSYNCRASY_H 00003 #define SCT_SCTAPI_IDIOSYNCRASY_H 00004 00008 00010 00011 //fwd dec 00012 namespace SctApi { 00013 class Idiosyncrasy; 00014 }; 00015 00016 //other fwd decs 00017 00018 //other includes 00019 #include <string> 00020 #include "Sct/Addressing.h" 00021 00022 //dec 00023 namespace SctApi { 00024 class Idiosyncrasy { 00025 const Sct::UCID m_ucid; 00026 mutable std::string m_uniqueName; 00027 mutable std::string m_infoServiceNameOfScanStatusObject; 00028 mutable std::string m_ipcNameOfSctApiCrateServer; 00029 public: 00030 Idiosyncrasy(const Sct::PartitionIdentifier p, 00031 const Sct::CrateIdentifier c); 00032 explicit Idiosyncrasy(const Sct::UCID & ucid); 00033 const std::string & uniqueName() const; // a component from which other parts may be built 00034 const std::string & ipcNameOfSctApiCrateServer() const; 00035 const std::string & infoServiceNameOfScanStatusObject() const; 00036 // uniqueCrateIdentifier 00037 const Sct::UCID & ucid() const; 00038 }; 00039 }; 00040 00041 #endif