1#ifndef BITTWARE_OPTOLINK_INCLUDED
2#define BITTWARE_OPTOLINK_INCLUDED 1
6#include "pflib/OptoLink.h"
7#include "pflib/bittware/bittware_axilite.h"
8#include "pflib/lpGBT.h"
16 virtual uint8_t
read_reg(uint16_t reg);
18 virtual void write_reg(uint16_t reg, uint8_t value);
26 int ctloffset_, stsreg_;
28 int pulsereg_, pulseshift_;
38 const char* dev()
const {
return gtys_.
dev(); }
39 virtual int ilink() {
return ilink_; }
42 virtual void run_linktrick();
44 virtual bool get_rx_polarity();
45 virtual bool get_tx_polarity();
46 virtual void set_rx_polarity(
bool polarity);
47 virtual void set_tx_polarity(
bool polarity);
57 virtual void set_elink_tx_mode(
int elink,
int mode);
Represents an interface to the optical links (GTX, GTH, GTY) and the upper levels of the encoder/deco...
Definition OptoLink.h:18
This class provides access to read and write via the ioctl path to the AXILite targets within the Bit...
Definition bittware_axilite.h:14
const char * dev() const
get the device path this AxiLite is connected to
Definition bittware_axilite.cxx:45
Definition bittware_optolink.h:31
virtual void reset_link()
reset a given optical link, may have side-effects
Definition bittware_optolink.cxx:43
virtual int get_elink_tx_mode(int elink)
there are four TX elinks configured in the coder block
Definition bittware_optolink.cxx:169
virtual int ilink()
which optical link does this represent?
Definition bittware_optolink.h:39
virtual bool is_bidirectional()
is this link bidirectional (e.g. a DAQ lpGBT)
Definition bittware_optolink.h:40
BWOptoLink(int ilink, const char *dev)
for a daq link
Definition bittware_optolink.cxx:13
Definition bittware_optolink.h:13
virtual std::vector< uint8_t > read_regs(uint16_t reg, int n)
Read the contents of several registers beginning with the listed one.
Definition bittware_optolink.cxx:293
virtual uint8_t read_reg(uint16_t reg)
Read the contents of the identified single register.
Definition bittware_optolink.cxx:284
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 bittware_optolink.cxx:367
virtual void write_reg(uint16_t reg, uint8_t value)
Write the given value to the identified single register.
Definition bittware_optolink.cxx:362
This version of the fast control code interfaces with the CMS Fast control library which can be contr...
Definition Backend.cxx:3