DABC (Data Acquisition Backbone Core)  2.9.9
SocketFactory.h
Go to the documentation of this file.
1 // $Id: SocketFactory.h 3862 2018-05-11 10:06:18Z 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 DABC_SocketFactory
17 #define DABC_SocketFactory
18 
19 #ifndef DABC_Factory
20 #include "dabc/Factory.h"
21 #endif
22 
23 namespace dabc {
24 
30  class SocketFactory : public Factory {
31  public:
32  SocketFactory(const std::string &name) : Factory(name) {}
33 
34  virtual Reference CreateObject(const std::string &classname, const std::string &objname, Command cmd);
35 
36  virtual Device* CreateDevice(const std::string &classname, const std::string &devname, Command cmd);
37 
38  virtual Reference CreateThread(Reference parent, const std::string &classname, const std::string &thrdname, const std::string &thrddev, Command cmd);
39 
40  virtual Module* CreateTransport(const Reference& port, const std::string &typ, Command cmd);
41 
42  protected:
43 
44  virtual void Initialize();
45 
46  };
47 
48 }
49 
50 #endif
Represents command with its arguments.
Definition: Command.h:99
Base class for device implementation.
Definition: Device.h:43
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 socket classes
Definition: SocketFactory.h:30
virtual Reference CreateObject(const std::string &classname, const std::string &objname, Command cmd)
Factory method to create object.
virtual Reference CreateThread(Reference parent, const std::string &classname, const std::string &thrdname, const std::string &thrddev, Command cmd)
Factory method to create thread.
virtual Module * CreateTransport(const Reference &port, const std::string &typ, Command cmd)
Factory method to create transport.
virtual Device * CreateDevice(const std::string &classname, const std::string &devname, Command cmd)
Factory method to create device.
SocketFactory(const std::string &name)
Definition: SocketFactory.h:32
virtual void Initialize()
Method called by the manager during application start.
Event manipulation API.
Definition: api.h:23