base_schilling
Driver.hpp
Go to the documentation of this file.
1 #ifndef _BASE_SCHILLING_DRIVER_HPP_
2 #define _BASE_SCHILLING_DRIVER_HPP_
3 
4 #include <iodrivers_base/Driver.hpp>
5 #include <map>
6 
7 
8 namespace base_schilling
9 {
10  class Driver : public iodrivers_base::Driver
11  {
12  public:
13  Driver(int max_packet_size, bool extract_last = false);
14 
18  void open(std::string const& uri);
21  virtual void setAddress(uint const& address);
24  virtual void setRegs(std::vector<uint8_t> const& regs);
27  virtual uint8_t getReg(uint8_t reg);
30  virtual void sendReadMsg();
31 
32  virtual void sendWriteMsg(int cmd, std::vector<uint8_t>* regs = NULL);
33 
34 
35  protected:
37  virtual void read();
38 
42  virtual int extractPacket (uint8_t const *buffer, size_t buffer_size) const;
43 
44  virtual void setCS(char *cData);
45 
46  virtual void checkCS(const char *cData);
47 
48  std::map<uint8_t,uint8_t> mRegMap;
49 
50  uint mAddress;
51 
52  private:
53 
54  };
55 
56 } // end namespace
57 
58 #endif
virtual void sendWriteMsg(int cmd, std::vector< uint8_t > *regs=NULL)
Definition: Driver.cpp:66
std::map< uint8_t, uint8_t > mRegMap
Definition: Driver.hpp:48
virtual void sendReadMsg()
Definition: Driver.cpp:46
virtual void setAddress(uint const &address)
Definition: Driver.cpp:27
virtual int extractPacket(uint8_t const *buffer, size_t buffer_size) const
Definition: Driver.cpp:112
virtual void setCS(char *cData)
Definition: Driver.cpp:134
Driver(int max_packet_size, bool extract_last=false)
Definition: Driver.cpp:16
void open(std::string const &uri)
Definition: Driver.cpp:22
Definition: Driver.hpp:10
virtual void checkCS(const char *cData)
Definition: Driver.cpp:148
virtual void read()
Definition: Driver.cpp:82
Definition: Driver.hpp:8
uint mAddress
Definition: Driver.hpp:50
virtual void setRegs(std::vector< uint8_t > const &regs)
Definition: Driver.cpp:32
virtual uint8_t getReg(uint8_t reg)
Definition: Driver.cpp:41