OpenDaVINCI  4.16.0
QueryableNetstringsDeserializer.h
Go to the documentation of this file.
1 
20 #ifndef OPENDAVINCI_CORE_SERIALIZATION_QUERYABLENETSTRINGSDESERIALIZER_H_
21 #define OPENDAVINCI_CORE_SERIALIZATION_QUERYABLENETSTRINGSDESERIALIZER_H_
22 
23 #include <sstream>
24 #include <string>
25 
31 
32 namespace odcore {
33  namespace serialization {
34 
35  using namespace std;
36 
37 
50  public:
51  // Only the SerializationFactory or its subclasses are allowed to create instances of this Deserializer using the non-standard constructor.
52  friend class SerializationFactory;
53 
60 
61  private:
68 
75 
76  public:
83 
85 
86  virtual void deserializeDataFrom(istream &in);
87 
88  public:
89  virtual uint32_t readValue(istream &i, Serializable &v);
90  virtual uint32_t readValue(istream &i, bool &v);
91  virtual uint32_t readValue(istream &i, char &v);
92  virtual uint32_t readValue(istream &i, unsigned char &v);
93  virtual uint32_t readValue(istream &i, int8_t &v);
94  virtual uint32_t readValue(istream &i, int16_t &v);
95  virtual uint32_t readValue(istream &i, uint16_t &v);
96  virtual uint32_t readValue(istream &i, int32_t &v);
97  virtual uint32_t readValue(istream &i, uint32_t &v);
98  virtual uint32_t readValue(istream &i, int64_t &v);
99  virtual uint32_t readValue(istream &i, uint64_t &v);
100  virtual uint32_t readValue(istream &i, float &v);
101  virtual uint32_t readValue(istream &i, double &v);
102  virtual uint32_t readValue(istream &i, string &v);
103  virtual uint32_t readValue(istream &i, void *data, const uint32_t &size);
104 
105  public:
106  virtual void read(const uint32_t &id, Serializable &s);
107  virtual void read(const uint32_t &id, bool &b);
108  virtual void read(const uint32_t &id, char &c);
109  virtual void read(const uint32_t &id, unsigned char &uc);
110  virtual void read(const uint32_t &id, int8_t &i);
111  virtual void read(const uint32_t &id, int16_t &i);
112  virtual void read(const uint32_t &id, uint16_t &ui);
113  virtual void read(const uint32_t &id, int32_t &i);
114  virtual void read(const uint32_t &id, uint32_t &ui);
115  virtual void read(const uint32_t &id, int64_t &i);
116  virtual void read(const uint32_t &id, uint64_t &ui);
117  virtual void read(const uint32_t &id, float &f);
118  virtual void read(const uint32_t &id, double &d);
119  virtual void read(const uint32_t &id, string &s);
120  virtual void read(const uint32_t &id, void *data, const uint32_t &size);
121 
122  public:
123  virtual void read(const uint32_t &id, const string &longName, const string &shortName, Serializable &s);
124  virtual void read(const uint32_t &id, const string &longName, const string &shortName, bool &b);
125  virtual void read(const uint32_t &id, const string &longName, const string &shortName, char &c);
126  virtual void read(const uint32_t &id, const string &longName, const string &shortName, unsigned char &uc);
127  virtual void read(const uint32_t &id, const string &longName, const string &shortName, int8_t &i);
128  virtual void read(const uint32_t &id, const string &longName, const string &shortName, int16_t &i);
129  virtual void read(const uint32_t &id, const string &longName, const string &shortName, uint16_t &ui);
130  virtual void read(const uint32_t &id, const string &longName, const string &shortName, int32_t &i);
131  virtual void read(const uint32_t &id, const string &longName, const string &shortName, uint32_t &ui);
132  virtual void read(const uint32_t &id, const string &longName, const string &shortName, int64_t &i);
133  virtual void read(const uint32_t &id, const string &longName, const string &shortName, uint64_t &ui);
134  virtual void read(const uint32_t &id, const string &longName, const string &shortName, float &f);
135  virtual void read(const uint32_t &id, const string &longName, const string &shortName, double &d);
136  virtual void read(const uint32_t &id, const string &longName, const string &shortName, string &s);
137  virtual void read(const uint32_t &id, const string &longName, const string &shortName, void *data, const uint32_t &size);
138 
139  private:
142  Deserializer* m_deserializer;
143  };
144 
145  }
146 } // odcore::serialization
147 
148 #endif /*OPENDAVINCI_CORE_SERIALIZATION_QUERYABLENETSTRINGSDESERIALIZER_H_*/
Definition: SerializationFactory.h:45
#define OPENDAVINCI_API
Definition: opendavinci.h:67
Definition: QueryableNetstringsDeserializer.h:49
Definition: QueryableNetstringsDeserializerAACF.h:46
Definition: QueryableNetstringsDeserializerABCF.h:46
Definition: Serializable.h:59
Definition: Deserializer.h:39