00001
00002
00003
00004
00005
00006 #ifndef __RD_CATALOGENTRY_H__
00007 #define __RD_CATALOGENTRY_H__
00008
00009 #include <iostream>
00010 #include <string>
00011
00012 namespace RDCatalog {
00013
00014
00015 class CatalogEntry {
00016 public:
00017 virtual ~CatalogEntry() = 0;
00018
00019
00020 void setBitId(int bid) {d_bitId = bid;};
00021
00022
00023 int getBitId() const {return d_bitId;};
00024
00025
00026 virtual std::string getDescription() const = 0;
00027
00028
00029 virtual void toStream(std::ostream &ss) const = 0;
00030
00031 virtual std::string Serialize() const = 0;
00032
00033 virtual void initFromStream(std::istream &ss) = 0;
00034
00035 virtual void initFromString(const std::string &text) = 0;
00036
00037
00038
00039 private:
00040 int d_bitId;
00041 };
00042 }
00043
00044 #endif
00045