DABC (Data Acquisition Backbone Core)  2.9.9
Factory.h
Go to the documentation of this file.
1 // $Id: Factory.h 4342 2019-05-23 07:39:22Z linev $
2 
3 /************************************************************
4  * The Data Acquisition Backbone Core (DABC) *
5  ************************************************************
6  * Copyright (C) 2009 - *
7  * GSI Helmholtzzentrum fuer Schwerionenforschung GmbH *
8  * Planckstr. 1, 64291 Darmstadt, Germany *
9  * Contact: http://dabc.gsi.de *
10  ************************************************************
11  * This software can be used under the GPL license *
12  * agreements as stated in LICENSE.txt file *
13  * which is part of the distribution. *
14  ************************************************************/
15 
16 #ifndef HADAQ_Factory
17 #define HADAQ_Factory
18 
19 #ifndef DABC_Factory
20 #include "dabc/Factory.h"
21 #endif
22 
25 namespace hadaq {
26 
29  class Factory : public dabc::Factory {
30  public:
31  Factory(const std::string &name) : dabc::Factory(name) {}
32 
33  dabc::Reference CreateObject(const std::string &classname, const std::string &objname, dabc::Command cmd) override;
34 
35  dabc::Module *CreateTransport(const dabc::Reference& port, const std::string &typ, dabc::Command cmd) override;
36 
37  dabc::DataInput *CreateDataInput(const std::string &typ) override;
38 
39  dabc::DataOutput *CreateDataOutput(const std::string &typ) override;
40 
41  dabc::Module *CreateModule(const std::string &classname, const std::string &modulename, dabc::Command cmd) override;
42  };
43 
44 }
45 
46 #endif
Represents command with its arguments.
Definition: Command.h:99
Interface for implementing any kind of data input.
Definition: DataIO.h:61
Interface for implementing any kind of data output.
Definition: DataIO.h:158
Factory for user-specific classes
Definition: Factory.h:47
Base for dabc::ModuleSync and dabc::ModuleAsync classes.
Definition: Module.h:42
Reference on the arbitrary object
Definition: Reference.h:73
Factory for HADAQ classes
Definition: Factory.h:29
dabc::DataInput * CreateDataInput(const std::string &typ) override
Factory method to create data input.
Definition: Factory.cxx:43
dabc::DataOutput * CreateDataOutput(const std::string &typ) override
Factory method to create data output.
Definition: Factory.cxx:55
dabc::Module * CreateModule(const std::string &classname, const std::string &modulename, dabc::Command cmd) override
Factory method to create module.
Definition: Factory.cxx:171
dabc::Module * CreateTransport(const dabc::Reference &port, const std::string &typ, dabc::Command cmd) override
Factory method to create transport.
Definition: Factory.cxx:66
Factory(const std::string &name)
Definition: Factory.h:31
dabc::Reference CreateObject(const std::string &classname, const std::string &objname, dabc::Command cmd) override
Factory method to create object.
Definition: Factory.cxx:34
Event manipulation API.
Definition: api.h:23
Support for HADAQ - HADES DAQ
Definition: api.h:27