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

Method initialize

io/TerrasolidReader.cpp:57–93  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

55std::string TerrasolidReader::getName() const { return s_info.name; }
56
57void TerrasolidReader::initialize()
58{
59 ILeStream stream(m_filename);
60
61 TerraSolidHeaderPtr h(new TerraSolidHeader);
62 m_header.swap(h);
63
64 stream >> m_header->HdrSize >> m_header->HdrVersion >> m_header->RecogVal;
65 stream.get(m_header->RecogStr, 4);
66 stream >> m_header->PntCnt >> m_header->Units >> m_header->OrgX >>
67 m_header->OrgY >> m_header->OrgZ >> m_header->Time >> m_header->Color;
68
69 if (m_header->RecogVal != 970401)
70 throwError("Header identifier was not '970401', is this "
71 "a TerraSolid .bin file?");
72
73 m_haveColor = (m_header->Color != 0);
74 m_haveTime = (m_header->Time != 0);
75 m_format = static_cast<TERRASOLID_Format_Type>(m_header->HdrVersion);
76
77 if ((m_format != TERRASOLID_Format_1) && (m_format != TERRASOLID_Format_2))
78 throwError("Version was '" + Utils::toString(m_format) + "', not '" +
79 Utils::toString(TERRASOLID_Format_1) + "' or '" +
80 Utils::toString(TERRASOLID_Format_2) + "'");
81
82 log()->get(LogLevel::Debug) << "TerraSolid Reader::initialize format: " <<
83 m_format << std::endl;
84 log()->get(LogLevel::Debug) << "OrgX: " << m_header->OrgX << std::endl;
85 log()->get(LogLevel::Debug) << "OrgY: " << m_header->OrgY << std::endl;
86 log()->get(LogLevel::Debug) << "OrgZ: " << m_header->OrgZ << std::endl;
87 log()->get(LogLevel::Debug) << "Units: " << m_header->Units << std::endl;
88 log()->get(LogLevel::Debug) << "Time: " << m_header->Time << std::endl;
89 log()->get(LogLevel::Debug) << "Color: " << m_header->Color << std::endl;
90 log()->get(LogLevel::Debug) << "Count: " << m_header->PntCnt << std::endl;
91 log()->get(LogLevel::Debug) << "RecogVal: " << m_header->RecogVal <<
92 std::endl;
93}
94
95
96void TerrasolidReader::addDimensions(PointLayoutPtr layout)

Callers

nothing calls this directly

Calls 4

swapMethod · 0.80
toStringFunction · 0.70
logFunction · 0.50
getMethod · 0.45

Tested by

no test coverage detected