00001 #ifndef Fireworks_Core_FWRepresentationCheckerBase_h 00002 #define Fireworks_Core_FWRepresentationCheckerBase_h 00003 // -*- C++ -*- 00004 // 00005 // Package: Core 00006 // Class : FWRepresentationCheckerBase 00007 // 00016 // 00017 // Original Author: Chris Jones 00018 // Created: Tue Nov 11 13:12:35 EST 2008 00019 // $Id: FWRepresentationCheckerBase.h,v 1.3 2010/06/02 22:36:38 chrjones Exp $ 00020 // 00021 00022 // system include files 00023 #include <string> 00024 // user include files 00025 00026 // forward declarations 00027 class FWRepresentationInfo; 00028 00029 class FWRepresentationCheckerBase { 00030 00031 public: 00032 FWRepresentationCheckerBase(const std::string& iPurpose, unsigned int iBitPackedViews, bool iRepresentsSubPart); 00033 virtual ~FWRepresentationCheckerBase(); 00034 00035 // ---------- const member functions --------------------- 00036 const std::string& purpose() const; 00037 //virtual bool canWorkWith(const std::string& iTypeName) const = 0; 00038 virtual FWRepresentationInfo infoFor(const std::string& iTypeName) const = 0; 00039 00040 unsigned int bitPackedViews() const; 00041 bool representsSubPart() const; 00042 // ---------- static member functions -------------------- 00043 00044 // ---------- member functions --------------------------- 00045 00046 private: 00047 FWRepresentationCheckerBase(const FWRepresentationCheckerBase&); // stop default 00048 00049 const FWRepresentationCheckerBase& operator=(const FWRepresentationCheckerBase&); // stop default 00050 00051 // ---------- member data -------------------------------- 00052 const std::string m_purpose; 00053 const unsigned int m_bitPackedViews; 00054 const bool m_representsSubPart; 00055 00056 }; 00057 00058 00059 #endif