runMACS
 All Data Structures Files Functions Variables Enumerations Enumerator Macros
CamManager.h
Go to the documentation of this file.
1 #ifndef CAM_MANAGER_H
2 #define CAM_MANAGER_H
3 
4 #include <RocServer.h>
5 #include <RocLogger.h>
6 #include <Extractor.h>
7 #include <StorageManager.h>
8 
9 #include <list>
10 
11 #include <mutex>
12 
13 class CamManager : public RocServer {
14 public:
15  CamManager(zmq::context_t & _ctx,
16  const std::string & _brokerEndpoint,
17  const std::string & _serviceName,
18  const PubSubEndpoint & _cameraSource,
19  StorageManager & _storageManager
20  );
21  ~CamManager();
22  Json::Value addExtractor(const std::string & name, const Json::Value & arguments);
23  Json::Value listExtractors();
24  Json::Value removeExtractor(const std::string & name, const std::string & identifier);
25 private:
26  Json::Value call(const std::string & name, const Json::Value & arguments);
27 
28  PubSubEndpoint cameraSource;
29  std::list<Extractor *> extractors;
30  std::mutex extractorsMutex;
31 
32  RocLogger logger;
33  StorageManager * storageManager;
34 };
35 
36 #endif /* CAM_MANAGER_H */
Handles storage locations.
Json::Value listExtractors()
Definition: CamManager.cpp:115
Json::Value removeExtractor(const std::string &name, const std::string &identifier)
Definition: CamManager.cpp:134
Json::Value addExtractor(const std::string &name, const Json::Value &arguments)
Definition: CamManager.cpp:45
CamManager(zmq::context_t &_ctx, const std::string &_brokerEndpoint, const std::string &_serviceName, const PubSubEndpoint &_cameraSource, StorageManager &_storageManager)
Definition: CamManager.cpp:14