libkipr  1.0.0
channel.hpp
Go to the documentation of this file.
1 #ifndef _KIPR_CAMERA_CHANNEL_HPP_
2 #define _KIPR_CAMERA_CHANNEL_HPP_
3 
4 #include "kipr/camera/object.hpp"
5 #include "kipr/config/config.hpp"
6 
7 namespace kipr
8 {
9  namespace camera
10  {
11  class Device;
12  class ChannelImpl;
13 
14  class Channel
15  {
16  public:
17  Channel(Device *device, const config::Config &config);
19 
20  void invalidate();
21  const ObjectVector *objects() const;
22  Device *device() const;
23 
27  void setConfig(const config::Config &config);
28 
29  private:
30  Device *m_device;
31  config::Config m_config;
32  mutable ObjectVector m_objects;
33  ChannelImpl *m_impl;
34  mutable bool m_valid;
35  };
36  }
37 }
38 
39 #endif
Definition: channel.hpp:15
Device * device() const
Channel(Device *device, const config::Config &config)
void setConfig(const config::Config &config)
const ObjectVector * objects() const
Definition: camera.hpp:57
Definition: config.hpp:14
std::vector< Object > ObjectVector
Definition: object.hpp:38
Definition: accel.hpp:7