LCIO  02.17
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
SIOHandlerMgr.h
Go to the documentation of this file.
1 #ifndef SIO_SIOHANDLERMGR_H
2 #define SIO_SIOHANDLERMGR_H 1
3 
4 // -- std headers
5 #include <map>
6 #include <string>
7 #include <memory>
8 
9 // -- lcio headers
10 #include "SIO/SIOObjectHandler.h"
11 
12 namespace SIO {
13 
20  class SIOHandlerMgr {
22  public:
23  SIOHandlerMgr() ;
24  ~SIOHandlerMgr() = default ;
25 
29 
34 
35  private:
38  }; // class
39 
40 } // namespace
41 #endif /* ifndef SIO_SIOHANDLERMGR_H */
STL class.
std::map< std::string, std::shared_ptr< SIOObjectHandler > > SIOHandlerMap
Definition: SIOHandlerMgr.h:21
STL class.
void registerHandler(const std::string &type, std::unique_ptr< SIOObjectHandler > handler)
Registers an instance of a handler for the given type.
SIOHandlerMap _map
The handler map.
Definition: SIOHandlerMgr.h:37
Holds instances of all types of SIOObjectHandlers.
Definition: SIOHandlerMgr.h:20
~SIOHandlerMgr()=default
std::shared_ptr< SIOObjectHandler > getHandler(const std::string &type) const
Returns the instance of the handler for the given type - null if it doesn&#39;t exist.