Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
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