dcrud  0.0.0
Distributed data and services
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends
IParticipant.hpp
Go to the documentation of this file.
1 #pragma once
2 
3 #include <util/types.h>
5 
6 namespace dcrud {
7 
8  class ClassID;
9  class ICache;
10  class IDispatcher;
11  class Shareable;
12  class ICRUD;
13  class IRegistry;
14 
15  typedef Shareable * (* localFactory_t )( void );
16 
17  class IParticipant {
18  public:
19 
20  virtual ~ IParticipant() {}
21 
22  virtual void listen(
23  const IRegistry & registry,
24  const std::string & networkInterface,
25  bool dumpReceivedBuffer = false ) = 0;
26 
27  virtual void listen( const IRegistry & registry, bool dumpReceivedBuffer = false ) = 0;
28 
29  virtual void registerLocalFactory ( const ClassID & id, localFactory_t factory ) = 0;
30 
31  virtual void registerRemoteFactory( const ClassID & id, ICRUD * factory ) = 0;
32 
33  virtual ICache & getDefaultCache() = 0;
34 
35  virtual ICache & createCache( byte & cacheIndex ) = 0;
36 
37  virtual ICache & getCache( byte ID ) = 0;
38 
39  virtual IDispatcher & getDispatcher() = 0;
40  };
41 }
virtual ICache & getDefaultCache()=0
virtual void registerRemoteFactory(const ClassID &id, ICRUD *factory)=0
virtual void registerLocalFactory(const ClassID &id, localFactory_t factory)=0
Shareable *(* localFactory_t)(void)
virtual ICache & getCache(byte ID)=0
virtual IDispatcher & getDispatcher()=0
virtual ICache & createCache(byte &cacheIndex)=0
virtual void listen(const IRegistry &registry, const std::string &networkInterface, bool dumpReceivedBuffer=false)=0