emcObjectFillerRegistry.h

Go to the documentation of this file.
00001 #ifndef __emcObjectFillerRegistry_h__
00002 #define __emcObjectFillerRegistry_h__
00003 
00004 #include <list>
00005 #include <iostream>
00006 
00007 class emcObjectFiller;
00008 class PHObject;
00009 class PHCompositeNode;
00010 
00015 class emcObjectFillerRegistry
00016 {
00017 
00018 public:
00019   static void add(emcObjectFiller*);
00020   static void remove(emcObjectFiller*);
00021 
00022   static emcObjectFiller* findFiller(PHCompositeNode*, PHObject&,
00023                                     int verbose=0);
00024 
00025   static emcObjectFiller* findFiller(PHObject&,
00026                                     int verbose=0);
00027 
00028   static void print(std::ostream& out = std::cout);
00029 
00030 private:
00031   static std::list<emcObjectFiller*>* fillers(void);
00032 };
00033 
00034 #endif