Exemplo n.º 1
0
void PipelineManager::readPipeline(std::istream& input)
{
    // Read stream into string.
    std::string s(std::istreambuf_iterator<char>(input), {});

    std::istringstream ss(s);
    if (s.find("?xml") != std::string::npos)
        PipelineReaderXML(*this).readPipeline(ss);
    else if (s.find("\"pipeline\"") != std::string::npos)
        PipelineReaderJSON(*this).readPipeline(ss);
    else
    {
        try
        {
            PipelineReaderXML(*this).readPipeline(ss);
        }
        catch (pdal_error)
        {
            // Rewind to make sure the stream is properly positioned after
            // attempting an XML pipeline.
            ss.seekg(0);
            PipelineReaderJSON(*this).readPipeline(ss);
        }
    }
}
Exemplo n.º 2
0
void PipelineManager::readPipeline(std::istream& input)
{
    std::istreambuf_iterator<char> eos;

    // Read stream into string.
    std::string s(std::istreambuf_iterator<char>(input), eos);

    std::istringstream ss(s);
    PipelineReaderJSON(*this).readPipeline(ss);
}