- Aldebaran documentation |
- C++ Libraries |
- index

libalcommon 2.8.7.4

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- File List
- File Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
albrokermanager.h
Go to the documentation of this file.
1
10 #pragma once
11 #ifndef _LIBALCOMMON_ALCOMMON_ALBROKERMANAGER_H_
12 #define _LIBALCOMMON_ALCOMMON_ALBROKERMANAGER_H_
13
14 # include <alcommon/api.h>
15 # include <vector>
16 # include <boost/shared_ptr.hpp>
17
18 # define MAXBROKER 10
20 namespace AL
21 {
22 class ALBroker;
23 class ALBrokerManagerPrivate;
24
32 class ALCOMMON_API ALBrokerManager
33 {
34 protected:
36 ALBrokerManager();
37 ALBrokerManager(const ALBrokerManager &);
38 ALBrokerManager &operator=(const ALBrokerManager &);
39 public:
41 virtual ~ALBrokerManager();
42
49 void addBroker(boost::shared_ptr<ALBroker> pBroker);
50
56 void removeBroker(boost::shared_ptr<ALBroker> pBroker);
57
64 void removeFromList(boost::shared_ptr<ALBroker> pBroker);
65
71 boost::shared_ptr<ALBroker> getBrokerByName(const std::string &brokerName);
72
78 boost::shared_ptr<ALBroker> getRandomBroker(void);
79
85 boost::shared_ptr<ALBroker> getBroker(int i);
86
93 boost::shared_ptr<ALBroker> getBrokerByIPPort(const std::string &strEndPoint);
94
95
103 boost::shared_ptr<ALBroker> getBrokerByIPPort(const std::string &strIP,
104 int pPort);
105
112 boost::shared_ptr<ALBroker> getBrokerByParentIPPort(const std::string &strIP, int pPort);
113
118 void killAllBroker(void);
119
124 boost::shared_ptr<ALBroker> getReservedBroker(void);
125
130 static boost::shared_ptr<ALBrokerManager> getInstance();
131
138 static boost::shared_ptr<ALBrokerManager> setInstance(boost::shared_ptr<ALBrokerManager> pSingleton);
139
143 static void kill();
144
145 private:
147 static boost::shared_ptr<ALBrokerManager> *_singleton;
148
149 public:
151 ALBrokerManagerPrivate *_p;
152 };
153 } // !namespace AL
154 #endif // _LIBALCOMMON_ALCOMMON_ALBROKERMANAGER_H_
api.h
AL::ALBrokerManager
ALBrokerManager is a class to manage brokers.
Definition: albrokermanager.h:32
AL::ALBrokerManager::_p
ALBrokerManagerPrivate * _p
Definition: albrokermanager.h:151
ALCOMMON_API
#define ALCOMMON_API
Definition: api.h:14