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

Method GetE57Root

plugins/e57/libE57Format/src/ReaderImpl.cpp:224–267  ·  view source on GitHub ↗

Returns the file header information in fileHeader

Source from the content-addressed store, hash-verified

222
223 // Returns the file header information in fileHeader
224 bool ReaderImpl::GetE57Root( E57Root &fileHeader ) const
225 {
226 if ( !IsOpen() )
227 {
228 return false;
229 }
230
231 fileHeader = {};
232
233 fileHeader.formatName = StringNode( root_.get( "formatName" ) ).value();
234 fileHeader.versionMajor =
235 static_cast<uint32_t>( IntegerNode( root_.get( "versionMajor" ) ).value() );
236 fileHeader.versionMinor =
237 static_cast<uint32_t>( IntegerNode( root_.get( "versionMinor" ) ).value() );
238 fileHeader.guid = StringNode( root_.get( "guid" ) ).value();
239 if ( root_.isDefined( "e57LibraryVersion" ) )
240 {
241 fileHeader.e57LibraryVersion = StringNode( root_.get( "e57LibraryVersion" ) ).value();
242 }
243
244 if ( root_.isDefined( "coordinateMetadata" ) )
245 {
246 fileHeader.coordinateMetadata = StringNode( root_.get( "coordinateMetadata" ) ).value();
247 }
248
249 if ( root_.isDefined( "creationDateTime" ) )
250 {
251 const StructureNode creationDateTime( root_.get( "creationDateTime" ) );
252
253 fileHeader.creationDateTime.dateTimeValue =
254 FloatNode( creationDateTime.get( "dateTimeValue" ) ).value();
255
256 if ( creationDateTime.isDefined( "isAtomicClockReferenced" ) )
257 {
258 fileHeader.creationDateTime.isAtomicClockReferenced = static_cast<int32_t>(
259 IntegerNode( creationDateTime.get( "isAtomicClockReferenced" ) ).value() );
260 }
261 }
262
263 fileHeader.data3DSize = data3D_.childCount();
264 fileHeader.images2DSize = images2D_.childCount();
265
266 return true;
267 }
268
269 int64_t ReaderImpl::GetImage2DCount() const
270 {

Callers

nothing calls this directly

Calls 7

StringNodeClass · 0.85
IntegerNodeClass · 0.85
FloatNodeClass · 0.85
valueMethod · 0.45
getMethod · 0.45
isDefinedMethod · 0.45
childCountMethod · 0.45

Tested by

no test coverage detected