#ifndef _fevt_FdComponentSelector_h_ #define _fevt_FdComponentSelector_h_ namespace fevt { class Eye; class Telescope; class Pixel; /** \file \brief Selection of Fd components: Eye/Telescope/Pixel \author Ralf Ulrich \version $Id: FdComponentSelector.h 17255 2010-07-07 13:06:45Z smueller $ \ingroup fevt */ //! Predicate specifying whether telescope is selected or not class ComponentSelector { public: /// Possible component status enum Status { eUnknown = 0, eExists, eInDAQ, eDeSelected, // for example too far away for simulations eNoise, eBadCalibration, eHasData }; public: ComponentSelector(const Status status = eHasData); bool operator()(const Eye& comp) const; bool operator()(const Telescope& comp) const; bool operator()(const Pixel& comp) const; private: Status fMinStatus; }; } // end namespace fevt #endif