Skip to content

Commit

Permalink
Issue a warning when ReturnsFilter creates an empty set, remove old p…
Browse files Browse the repository at this point in the history
…lugin boilerplate
  • Loading branch information
chambbj committed Mar 19, 2018
1 parent 70ee281 commit 2ceba6b
Show file tree
Hide file tree
Showing 2 changed files with 38 additions and 15 deletions.
44 changes: 36 additions & 8 deletions filters/ReturnsFilter.cpp
Expand Up @@ -112,14 +112,42 @@ PointViewSet ReturnsFilter::run(PointViewPtr inView)
onlyView->appendPoint(*inView.get(), idx);
}

if (firstView->size())
viewSet.insert(firstView);
if (intermediateView->size())
viewSet.insert(intermediateView);
if (lastView->size())
viewSet.insert(lastView);
if (onlyView->size())
viewSet.insert(onlyView);
if (m_outputTypes & returnFirst)
{
if (firstView->size())
viewSet.insert(firstView);
else
log()->get(LogLevel::Warning)
<< "Requested first returns set it empty\n";
}

if (m_outputTypes & returnIntermediate)
{
if (intermediateView->size())
viewSet.insert(intermediateView);
else
log()->get(LogLevel::Warning)
<< "Requested intermediate returns set is empty\n";
}

if (m_outputTypes & returnLast)
{
if (lastView->size())
viewSet.insert(lastView);
else
log()->get(LogLevel::Warning)
<< "Requested last returns set is empty\n";
}

if (m_outputTypes & returnOnly)
{
if (onlyView->size())
viewSet.insert(onlyView);
else
log()->get(LogLevel::Warning)
<< "Requested only returns set is empty\n";
}

return viewSet;
}

Expand Down
9 changes: 2 additions & 7 deletions filters/ReturnsFilter.hpp
Expand Up @@ -39,9 +39,6 @@
#include <map>
#include <string>

extern "C" int32_t ReturnsFilter_ExitFunc();
extern "C" PF_ExitFunc ReturnsFilter_InitPlugin();

namespace pdal
{

Expand All @@ -58,8 +55,6 @@ class PDAL_DLL ReturnsFilter : public Filter
static const int returnLast = 4;
static const int returnOnly = 8;

static void* create();
static int32_t destroy(void*);
std::string getName() const;

private:
Expand All @@ -71,8 +66,8 @@ class PDAL_DLL ReturnsFilter : public Filter
virtual void prepared(PointTableRef table);
virtual PointViewSet run(PointViewPtr view);

ReturnsFilter& operator=(const ReturnsFilter&); // not implemented
ReturnsFilter(const ReturnsFilter&); // not implemented
ReturnsFilter& operator=(const ReturnsFilter&) = delete; // not implemented
ReturnsFilter(const ReturnsFilter&) = delete; // not implemented
};

} // namespace pdal

0 comments on commit 2ceba6b

Please sign in to comment.