// MCTrackMaker.h #ifndef MCTrackMaker_H #define MCTrackMaker_h // Wrapper around VTrackGenerator. The constructor defines the // parameters need to construct the latter. The method new_track // returns a radomly selected MC track. #include #include "ptr/Ptr.h" #include "ptr/DeletePolicy.h" #include "trfbase/VTrackGenerator.h" class RandomRegistry; namespace trf { class VTrack; } // end namespace trf class MCTrackMaker { private: // attributes // Track generator. Ptr _pvtgen; private: // methods // output stream void ostr(std::ostream& stream) const; public: // methods // constructor MCTrackMaker(); // destructorr ~MCTrackMaker(); // Register the random number generator. void register_generators(RandomRegistry& reg); // return a new track trf::VTrack* new_track(); // output stream friend std::ostream& operator<<(std::ostream& stream, const MCTrackMaker& maker); }; #endif