pflib v3.9.0-rc3-11-g2537d8f
Pretty Fine HGCROC Interaction Library
Loading...
Searching...
No Matches
lpGBT_ConfigTransport_I2C.h
1#ifndef PFLIB_lpGBT_ConfigTransport_I2C_H_INCLUDED
2#define PFLIB_lpGBT_ConfigTransport_I2C_H_INCLUDED
3
4#include <string>
5
6#include "pflib/lpGBT.h"
7
8namespace pflib {
9
11 public:
12 lpGBT_ConfigTransport_I2C(uint8_t i2c_addr, const std::string& bus_dev);
14
15 void write_raw(uint8_t a);
16 void write_raw(uint8_t a, uint8_t b);
17 void write_raw(uint8_t a, uint8_t b, uint8_t c);
18 void write_raw(const std::vector<uint8_t>& a);
19
20 uint8_t read_raw();
21 std::vector<uint8_t> read_raw(int n);
22
23 virtual uint8_t read_reg(uint16_t reg) final;
24 virtual void write_reg(uint16_t reg, uint8_t value) final;
25
26 virtual std::vector<uint8_t> read_regs(uint16_t reg, int n);
27 virtual void write_regs(uint16_t reg, const std::vector<uint8_t>& value);
28
29 private:
30 int handle_;
31};
32
33} // namespace pflib
34
35#endif // PFLIB_lpGBT_ConfigTransport_I2C_H_INCLUDED
Definition lpGBT_ConfigTransport_I2C.h:10
virtual void write_regs(uint16_t reg, const std::vector< uint8_t > &value)
Write the given values to a sequence of registers beginning with the listed one.
Definition lpGBT_ConfigTransport_I2C.cxx:86
virtual uint8_t read_reg(uint16_t reg) final
Read the contents of the identified single register.
Definition lpGBT_ConfigTransport_I2C.cxx:65
virtual void write_reg(uint16_t reg, uint8_t value) final
Write the given value to the identified single register.
Definition lpGBT_ConfigTransport_I2C.cxx:76
virtual std::vector< uint8_t > read_regs(uint16_t reg, int n)
Read the contents of several registers beginning with the listed one.
Definition lpGBT_ConfigTransport_I2C.cxx:109
Definition lpGBT.h:16
This version of the fast control code interfaces with the CMS Fast control library which can be contr...
Definition Backend.cxx:3