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

Method addItem

io/StacReader.cpp:208–235  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

206
207
208void StacReader::Private::addItem(Item& item)
209{
210 std::string driver = item.driver();
211
212 Stage *stage = m_factory.createStage(driver);
213
214 if (!stage)
215 {
216 std::stringstream msg;
217 msg << "Unable to create driver '" << driver << "' for "
218 << "for asset located at '" << item.assetPath() <<"'";
219 throw pdal_error(msg.str());
220 }
221 Reader* reader = dynamic_cast<Reader*>(stage);
222 if (!reader)
223 {
224 std::stringstream msg;
225 msg << "Unable to cast stage of type '" << driver << "' to a reader";
226 throw pdal_error(msg.str());
227 }
228 reader->setOptions(item.options());
229
230 std::lock_guard<std::mutex> lock(m_mutex);
231 m_itemList.push_back(item.id());
232 reader->setLog(log());
233 m_merge.setInput(*reader);
234 m_readerList.push_back(reader);
235}
236
237void StacReader::Private::handleItem(NL::json stacJson, std::string filename)
238{

Callers

nothing calls this directly

Calls 9

driverMethod · 0.80
createStageMethod · 0.80
assetPathMethod · 0.80
strMethod · 0.80
setOptionsMethod · 0.80
optionsMethod · 0.80
logFunction · 0.50
idMethod · 0.45
setLogMethod · 0.45

Tested by

no test coverage detected