• Main Page
  • Related Pages
  • Namespaces
  • Data Structures
  • Files
  • File List
  • Globals

plugin/roc/Factory.h (r4864/r3636)

Go to the documentation of this file.
00001 /********************************************************************
00002  * The Data Acquisition Backbone Core (DABC)
00003  ********************************************************************
00004  * Copyright (C) 2009-
00005  * GSI Helmholtzzentrum fuer Schwerionenforschung GmbH
00006  * Planckstr. 1
00007  * 64291 Darmstadt
00008  * Germany
00009  * Contact:  http://dabc.gsi.de
00010  ********************************************************************
00011  * This software can be used under the GPL license agreements as stated
00012  * in LICENSE.txt file which is part of the distribution.
00013  ********************************************************************/
00014 #ifndef ROC_FACTORY_H
00015 #define ROC_FACTORY_H
00016 
00017 #ifndef DABC_Factory
00018 #include "dabc/Factory.h"
00019 #endif
00020 
00021 #ifndef DABC_ReferencesVector
00022 #include "dabc/ReferencesVector.h"
00023 #endif
00024 
00025 #ifndef ROC_Board
00026 #include "roc/Board.h"
00027 #endif
00028 
00029 namespace roc {
00030 
00031    class UdpDevice;
00032 
00033    class Factory: public dabc::Factory,
00034                   public base::BoardFactory {
00035       protected:
00036 
00037          dabc::ReferencesVector fDevs;
00038 
00039       public:
00040 
00041          Factory(const char* name);
00042 
00043          virtual dabc::Application* CreateApplication(const char* classname, dabc::Command cmd);
00044 
00045          virtual dabc::Module* CreateModule(const char* classname, const char* modulename, dabc::Command cmd);
00046 
00047          virtual dabc::Device* CreateDevice(const char* classname, const char* devname, dabc::Command cmd);
00048 
00049          virtual void ShowDebug(int lvl, const char* msg);
00050 
00051          virtual bool IsFactoryFor(const char* url);
00052 
00053          virtual base::Board* DoConnect(const char* name, base::ClientRole role);
00054 
00055          virtual bool DoClose(base::Board* brd);
00056 
00057    };
00058 
00059 }
00060 
00061 #endif
00062 

Generated on Tue Dec 10 2013 04:52:22 for ROCsoft by  doxygen 1.7.1