pflib v3.9.0-rc3-11-g2537d8f
Pretty Fine HGCROC Interaction Library
Loading...
Searching...
No Matches
GPIO.h
1#ifndef pflib_lpgbt_GPIO_h_included
2#define pflib_lpgbt_GPIO_h_included
3
4#include <map>
5
6#include "pflib/GPIO.h"
7
8namespace pflib {
9
10class lpGBT;
11
12namespace lpgbt {
13
14class GPIO : public ::pflib::GPIO {
15 public:
16 GPIO(lpGBT& lpgbt) : lpgbt_(lpgbt) {}
19 virtual bool getGPI(const std::string& name);
20 virtual bool getGPO(const std::string& name);
21 virtual void setGPO(const std::string& name, bool toTrue = true);
22
23 protected:
24 friend class ::pflib::lpGBT;
25 void add_pin(const std::string& name, int ibit, bool output);
26
27 private:
28 lpGBT& lpgbt_;
29 std::map<std::string, int> gpos_, gpis_;
30};
31
32} // namespace lpgbt
33} // namespace pflib
34
35#endif // pflib_lpgbt_GPIO_h_included
interface class partially specified for IC/EC communication
Representation of GPIO controller.
Definition GPIO.h:12
Class which provides an interface with an lpGBT ASIC as mounted on an LDMX mezzanine.
Definition lpGBT.h:52
Definition GPIO.h:14
virtual std::vector< std::string > getGPIs()
Get the set of GPI pin names.
Definition GPIO.cxx:15
virtual bool getGPI(const std::string &name)
Read a GPI bit.
Definition GPIO.cxx:20
virtual std::vector< std::string > getGPOs()
Get the set of GPO pin names.
Definition GPIO.cxx:9
virtual void setGPO(const std::string &name, bool toTrue=true)
Set a single GPO bit.
Definition GPIO.cxx:44
virtual bool getGPO(const std::string &name)
Get current value of GPO bit.
Definition GPIO.cxx:29
This version of the fast control code interfaces with the CMS Fast control library which can be contr...
Definition Backend.cxx:3