MCPcopy Create free account
hub / github.com/PDAL/PDAL / getField

Function getField

pdal/PointView.hpp:124–164  ·  view source on GitHub ↗

Get value, converting to type 'type' and storing into 'pos'.

Source from the content-addressed store, hash-verified

122
123 // Get value, converting to type 'type' and storing into 'pos'.
124 void getField(char *pos, Dimension::Id d, Dimension::Type type, PointId id) const
125 {
126 Everything e;
127
128 switch (type)
129 {
130 case Dimension::Type::Float:
131 e.f = getFieldAs<float>(d, id);
132 break;
133 case Dimension::Type::Double:
134 e.d = getFieldAs<double>(d, id);
135 break;
136 case Dimension::Type::Signed8:
137 e.s8 = getFieldAs<int8_t>(d, id);
138 break;
139 case Dimension::Type::Signed16:
140 e.s16 = getFieldAs<int16_t>(d, id);
141 break;
142 case Dimension::Type::Signed32:
143 e.s32 = getFieldAs<int32_t>(d, id);
144 break;
145 case Dimension::Type::Signed64:
146 e.s64 = getFieldAs<int64_t>(d, id);
147 break;
148 case Dimension::Type::Unsigned8:
149 e.u8 = getFieldAs<uint8_t>(d, id);
150 break;
151 case Dimension::Type::Unsigned16:
152 e.u16 = getFieldAs<uint16_t>(d, id);
153 break;
154 case Dimension::Type::Unsigned32:
155 e.u32 = getFieldAs<uint32_t>(d, id);
156 break;
157 case Dimension::Type::Unsigned64:
158 e.u64 = getFieldAs<uint64_t>(d, id);
159 break;
160 case Dimension::Type::None:
161 break;
162 }
163 memcpy(pos, &e, Dimension::size(type));
164 }
165
166 template<typename T>
167 void setField(Dimension::Id dim, PointId idx, T val);

Callers 1

getPackedDataFunction · 0.85

Calls 1

sizeFunction · 0.70

Tested by

no test coverage detected