//----------------------------------------------------------- // File and Version Information: // $Id$ // // Description: // Cluster Finding in the TPC: // SectorProcessor using PadProcessor algorithm // // // Environment: // Software developed for the PANDA Detector at FAIR. // // Author List: // Sebastian Neubert TUM (original author) // // //----------------------------------------------------------- #ifndef TPCSECTORPROCESSOR_HH #define TPCSECTORPROCESSOR_HH // Base Class Headers ---------------- // Collaborating Class Headers ------- #include #include #include "TpcDigi.h" #include "TpcCluster.h" // Collaborating Class Declarations -- class TpcPadPlane; class padprocessor; class TpcSectorProcessor { public: // Constructors/Destructors --------- TpcSectorProcessor(){;} ~TpcSectorProcessor(); // Operators // Accessors ----------------------- unsigned int getNPads() const {return _pproc.size();} const padprocessor* getPP(unsigned int id){return _pproc[id];} unsigned int getId() const {return _SectorId;} // Modifiers ----------------------- void Init(TpcPadPlane* p, unsigned int id, std::vector* ob); void putDigi(TpcDigi* d){_digi_buffer.push_back(d);} // Operations ---------------------- void process(); void reset(); private: // Private Data Members ------------ std::map _pproc; std::map _activepads; std::vector*> _cluster_buffer; std::vector* _output_buffer; TpcPadPlane* _padplane; unsigned int _SectorId; std::vector _digi_buffer; // Private Methods ----------------- void cog(); // center of gravity }; #endif //-------------------------------------------------------------- // $Log$ //--------------------------------------------------------------