cleanup directory structure
[opengigevision:opengigevision.git] / src / GigEVision.h
1 #ifndef GIGEVISION_H
2 #define GIGEVISION_H
3
4 #include <memory>
5 #include <boost/asio.hpp>
6
7 // forwarding
8 class GenICamManager;
9 class GvcpManager;
10 class GvspManager;
11
12 class GigEVision
13 {
14   public:
15   GigEVision();
16
17   GenICamManager& GenICam() { return *m_genicam; }
18   GvcpManager& Gvcp() { return *m_gvcp; }
19   GvspManager& Gvsp() { return *m_gvsp; }
20   boost::asio::io_service& Service() { return m_service; }
21
22   private:
23   boost::asio::io_service m_service;
24   std::auto_ptr<GenICamManager> m_genicam;
25   std::auto_ptr<GvcpManager> m_gvcp;
26   std::auto_ptr<GvspManager> m_gvsp;
27 };
28
29
30 #endif // GIGEVISION_H