class mrpt::apps::CRawlogProcessorFilterObservations
A specialization of CRawlogProcessorOnEachObservation that handles the common case of filtering entries in a rawlog depending on the return value of a user function.
#include <mrpt/apps/CRawlogProcessor.h> class CRawlogProcessorFilterObservations: public mrpt::apps::CRawlogProcessorOnEachObservation { public: // fields mrpt::io::CFileGZOutputStream& m_out_rawlog; size_t m_entries_removed; size_t m_entries_parsed; bool m_we_are_done_with_this_rawlog; // construction CRawlogProcessorFilterObservations( mrpt::io::CFileGZInputStream& in_rawlog, TCLAP::CmdLine& cmdline, bool enable_verbose, mrpt::io::CFileGZOutputStream& out_rawlog ); // methods virtual bool tellIfThisObsPasses(mrpt::obs::CObservation::Ptr& obs) = 0; virtual bool tellIfThisActPasses(mrpt::obs::CAction::Ptr&); virtual bool processOneObservation(mrpt::obs::CObservation::Ptr& obs); virtual bool processOneAction(mrpt::obs::CAction::Ptr& act); void OnPostProcess( mrpt::obs::CActionCollection::Ptr& actions, mrpt::obs::CSensoryFrame::Ptr& SF, mrpt::obs::CObservation::Ptr& obs ); };
Inherited Members
public: // fields uint64_t m_filSize; size_t m_rawlogEntry; double m_timToParse; // methods bool processOneEntry(] mrpt::obs::CActionCollection::Ptr& actions, mrpt::obs::CSensoryFrame::Ptr& SF, mrpt::obs::CObservation::Ptr& obs); virtual bool processOneObservation(mrpt::obs::CObservation::Ptr& obs) = 0; virtual bool processOneAction(mrpt::obs::CAction::Ptr&); void doProcessRawlog(); virtual bool processOneEntry(mrpt::obs::CActionCollection::Ptr& actions, mrpt::obs::CSensoryFrame::Ptr& SF, mrpt::obs::CObservation::Ptr& obs) = 0; virtual void OnPostProcess(] mrpt::obs::CActionCollection::Ptr& actions, ] mrpt::obs::CSensoryFrame::Ptr& SF, ] mrpt::obs::CObservation::Ptr& obs);
Fields
bool m_we_are_done_with_this_rawlog
Set to true to indicate that we are sure we don’t have to keep on reading.
Methods
virtual bool tellIfThisObsPasses(mrpt::obs::CObservation::Ptr& obs) = 0
To be implemented by users: return false means entry must be removed.
virtual bool tellIfThisActPasses(mrpt::obs::CAction::Ptr&)
To be implemented by users: return false means entry must be removed.