Fire Core  8.0.0.alpha
GIS framework per tutti gli usi
 Tutto Classi Namespace Funzioni Variabili Ridefinizioni di tipo (typedef) Tipi enumerati (enum) Valori del tipo enumerato Friend
DataValueSh.hpp
1 // Copyright © 2015 GEOSYSTEMS SRL
2 // All Rights Reserved.
3 
4 #ifndef FIRE_PLUGIN_DATA_SHARED_DATAVALUESH_HPP_INCLUDED
5 #define FIRE_PLUGIN_DATA_SHARED_DATAVALUESH_HPP_INCLUDED
6 
7 #include <boost/shared_ptr.hpp>
8 #include <fire/shared/Shared.hpp>
9 
10 #include <string>
11 #include <exception>
12 
13 #include "fire/gis/export.hpp"
14 #include "fire/source/vector/DataSet.hpp"
15 #include "fire/source/vector/shared/FieldSh.hpp"
16 #include "fire/source/vector/shared/BufferSh.hpp"
17 #include "fire/source/vector/shared/DateTimeSh.hpp"
18 
19 namespace fire {
20 namespace source {
21 namespace vector {
22 namespace shared {
23 
24 class FIRE_GIS_DLL DataValueSh: public fire::shared::Shared< DataValue > {
25  public:
26  explicit DataValueSh(DataValue* ptr = NULL): Shared(ptr) {
27  }
28 
29  explicit DataValueSh(Field::FieldShp const & fld): Shared(NULL) {
30  DataValue* dvPtr = DataValue::create(fld);
31  _ptr.reset(dvPtr);
32  }
33 
34  DataValueSh(DataValueSh const & c) {
35  this->operator =(c);
36  }
37 
38  inline Field::FieldShp const getField() const {
39  return _getPtr()->getField();
40  }
41 
42  inline void set(const long long& val) {
43  _getPtr()->set(val);
44  }
45 
46  inline void set(double const & val) {
47  _getPtr()->set(val);
48  }
49 
50  inline void set(std::string const & val) {
51  _getPtr()->set(val);
52  }
53 
54  inline void set(gear::geom::Geometry const & val) {
55  _getPtr()->set(val);
56  }
57 
58  inline void set(gear::geom::Geometry* val) {
59  _getPtr()->set(val);
60  }
61 
62  inline void set(DateTime::DateTimeShp const & val) {
63  _getPtr()->set(val);
64  }
65 
66  inline void set(Buffer::BufferShp val) {
67  _getPtr()->set(val);
68  }
69 
70  inline void set(const bool& val) {
71  _getPtr()->set(val);
72  }
73 
74  inline void set(const int& val) {
75  _getPtr()->set(val);
76  }
77 
78  inline bool isChanged() const {
79  return _getPtr()->isChanged();
80  }
81 
82  inline bool isNull() const {
83  return _getPtr()->isNull();
84  }
85 
86  inline long long getInt() const {
87  return _getPtr()->getInt();
88  }
89 
90  inline double getDouble() const {
91  return _getPtr()->getDouble();
92  }
93 
94  inline std::string getText() const {
95  return _getPtr()->getText();
96  }
97 
98  inline bool getBool() const {
99  return _getPtr()->getBool();
100  }
101 
102  inline gear::geom::Geometry const & getGeometry() const {
103  return _getPtr()->getGeometry();
104  }
105 
106  inline gear::geom::Geometry& getGeometry() {
107  return _getPtr()->getGeometry();
108  }
109 
110  inline DateTime::DateTimeShp const getDateTime() const {
111  return _getPtr()->getDateTime();
112  }
113 
114  inline DateTime::DateTimeShp getDateTime() {
115  return _getPtr()->getDateTime();
116  }
117 
118  inline Buffer::BufferShp const getBlob() const {
119  return _getPtr()->getBlob();
120  }
121 
122  inline Buffer::BufferShp getBlob() {
123  return _getPtr()->getBlob();
124  }
125 
126  inline DataValue::DataValueShp toInt() const {
127  return _getPtr()->toInt();
128  }
129 
130  inline DataValue::DataValueShp toDouble() const {
131  return _getPtr()->toDouble();
132  }
133 
134  inline DataValue::DataValueShp toText() const {
135  return _getPtr()->toText();
136  }
137 
138  inline DataValue::DataValueShp toDatetime() const {
139  return _getPtr()->toDatetime();
140  }
141 
142  inline DataValue::DataValueShp toBool() const {
143  return _getPtr()->toBool();
144  }
145 
146  inline DataValue::DataValueShp toGeometry() const {
147  return _getPtr()->toGeometry();
148  }
149 
150  inline DataValue::DataValueShp toBlob() const {
151  return _getPtr()->toBlob();
152  }
153 };
154 
155 } // namespace shared
156 } // namespace vector
157 } // namespace source
158 } // namespace fire
159 
160 #endif
Definition: FieldSh.hpp:21
Valore della colonna di una DataRow identificata per nome o per indice.
Definition: DataValue.hpp:28
Definition: BufferSh.hpp:20
Definition: Geometry.hpp:69
Definition: Shared.hpp:17
Definition: DateTimeSh.hpp:21
Definition: DataValueSh.hpp:24
static DataValue * create(const Field::FieldShp &fld)
Membro statico di costruzione dell'oggetto Value.