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

Method parseDimensions

plugins/hdf/io/HdfReader.cpp:124–150  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

122}
123
124void HdfReader::parseDimensions()
125{
126 log()->get(LogLevel::Info) << "**JSON map**" << std::endl;
127 log()->get(LogLevel::Info) << m_pathDimJson << std::endl;
128
129 if(m_pathDimJson.is_null()) {
130 throw pdal_error("Required option 'dimensions' was not set");
131 } else if(!m_pathDimJson.is_object()) {
132 throw pdal_error("Option 'dimensions' must be a JSON object, not a " +
133 std::string(m_pathDimJson.type_name()));
134 }
135
136 for(auto& entry : m_pathDimJson.items()) {
137 std::string dimName = entry.key();
138 auto datasetName = entry.value();
139 log()->get(LogLevel::Info) << "Key: " << dimName << ", Value: "
140 << datasetName << ", Type: " << datasetName.type_name() << std::endl;
141
142 if(!datasetName.is_string()) {
143 throw pdal_error("Every value in 'dimensions' must be a string. Key '"
144 + dimName + "' has value with type '" +
145 std::string(datasetName.type_name()) + "'");
146 } else {
147 m_pathDimMap[dimName] = datasetName.get<std::string>();
148 }
149 }
150}
151
152void HdfReader::done(PointTableRef table)
153{

Callers

nothing calls this directly

Calls 5

itemsMethod · 0.80
logFunction · 0.50
getMethod · 0.45
keyMethod · 0.45
valueMethod · 0.45

Tested by

no test coverage detected