00001 #ifndef Fireworks_Core_FWRepresentationInfo_h 00002 #define Fireworks_Core_FWRepresentationInfo_h 00003 // -*- C++ -*- 00004 // 00005 // Package: Core 00006 // Class : FWRepresentationInfo 00007 // 00016 // 00017 // Original Author: Chris Jones 00018 // Created: Tue Nov 11 13:12:28 EST 2008 00019 // $Id: FWRepresentationInfo.h,v 1.4 2010/06/02 22:55:42 chrjones Exp $ 00020 // 00021 00022 // system include files 00023 #include <string> 00024 00025 // user include files 00026 00027 // forward declarations 00028 00029 class FWRepresentationInfo { 00030 00031 public: 00032 FWRepresentationInfo(const std::string& iPurpose, unsigned int iProximity, unsigned int iBitPackedViews, bool iRepresentsSubPart) : 00033 m_purpose(iPurpose), 00034 m_proximity(iProximity), 00035 m_bitPackedViews(iBitPackedViews), 00036 m_representsSubPart(iRepresentsSubPart){ 00037 } 00038 FWRepresentationInfo() : 00039 m_purpose(), 00040 m_proximity(0xFFFFFFFF), 00041 m_bitPackedViews(0), 00042 m_representsSubPart(false) { 00043 } 00044 //virtual ~FWRepresentationInfo(); 00045 00046 // ---------- const member functions --------------------- 00047 const std::string& purpose() const { 00048 return m_purpose; 00049 } 00051 unsigned int proximity() const { 00052 return m_proximity; 00053 } 00054 bool isValid() const { 00055 return !m_purpose.empty(); 00056 } 00057 00058 bool representsSubPart() const { 00059 return m_representsSubPart; 00060 } 00061 00062 unsigned int bitPackedViews() const { 00063 return m_bitPackedViews; 00064 } 00065 // ---------- static member functions -------------------- 00066 00067 // ---------- member functions --------------------------- 00068 00069 private: 00070 //FWRepresentationInfo(const FWRepresentationInfo&); // stop default 00071 00072 //const FWRepresentationInfo& operator=(const FWRepresentationInfo&); // stop default 00073 00074 // ---------- member data -------------------------------- 00075 std::string m_purpose; 00076 unsigned int m_proximity; 00077 unsigned int m_bitPackedViews; 00078 bool m_representsSubPart; 00079 00080 }; 00081 00082 00083 #endif