mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-06-11 12:27:14 +02:00
1. Ctb transceiver ro (#773)
* transceiverenable, tsamples, romode for tranceiver and digital_transceiver * 202 spec instr only for transceiver mode * removed check for empty in trans readout and clean memory before reading from fifo * ctb read fifo strobe for all after reading all channels, adding 1us after selecting channel, changing fw date * updated 10gb transceiver enable ---- * added transceiver (tsamples, romode(transceiver, digital_transceiver), transceiverenable (mask) * clean memory before reading from fifo (for analog and digital as well) * read fifo then read strobe (also corresp fw) fixes number of reads (also for analg and digital)-> increases all pipelines by 1 * fixed bug in rearranging digital data in receiver * fixed bug in streaming size of data after rearranging * fixed bug in setbit, clearbit,and getbit * status checks fifo before returning idle (transmitting if data in fifo if transceiver more enabled) * soem matterhorn specifics that will need to be put into pattern in a month or two. this is temporary. * NOTE: breaking api. rxParameters struct has transceiverenabel and tsamples given from det to receiver
This commit is contained in:
@ -1556,6 +1556,14 @@ void init_det(py::module &m) {
|
||||
(void (Detector::*)(uint32_t, sls::Positions)) &
|
||||
Detector::setTenGigaADCEnableMask,
|
||||
py::arg(), py::arg() = Positions{});
|
||||
CppDetectorApi.def("getTransceiverEnableMask",
|
||||
(Result<uint32_t>(Detector::*)(sls::Positions) const) &
|
||||
Detector::getTransceiverEnableMask,
|
||||
py::arg() = Positions{});
|
||||
CppDetectorApi.def("setTransceiverEnableMask",
|
||||
(void (Detector::*)(uint32_t, sls::Positions)) &
|
||||
Detector::setTransceiverEnableMask,
|
||||
py::arg(), py::arg() = Positions{});
|
||||
CppDetectorApi.def("getNumberOfDigitalSamples",
|
||||
(Result<int>(Detector::*)(sls::Positions) const) &
|
||||
Detector::getNumberOfDigitalSamples,
|
||||
@ -1564,6 +1572,14 @@ void init_det(py::module &m) {
|
||||
(void (Detector::*)(int, sls::Positions)) &
|
||||
Detector::setNumberOfDigitalSamples,
|
||||
py::arg(), py::arg() = Positions{});
|
||||
CppDetectorApi.def("getNumberOfTransceiverSamples",
|
||||
(Result<int>(Detector::*)(sls::Positions) const) &
|
||||
Detector::getNumberOfTransceiverSamples,
|
||||
py::arg() = Positions{});
|
||||
CppDetectorApi.def("setNumberOfTransceiverSamples",
|
||||
(void (Detector::*)(int, sls::Positions)) &
|
||||
Detector::setNumberOfTransceiverSamples,
|
||||
py::arg(), py::arg() = Positions{});
|
||||
CppDetectorApi.def(
|
||||
"getReadoutMode",
|
||||
(Result<defs::readoutMode>(Detector::*)(sls::Positions) const) &
|
||||
|
@ -242,6 +242,10 @@ void init_enums(py::module &m) {
|
||||
.value("DIGITAL_ONLY", slsDetectorDefs::readoutMode::DIGITAL_ONLY)
|
||||
.value("ANALOG_AND_DIGITAL",
|
||||
slsDetectorDefs::readoutMode::ANALOG_AND_DIGITAL)
|
||||
.value("TRANSCEIVER_ONLY",
|
||||
slsDetectorDefs::readoutMode::TRANSCEIVER_ONLY)
|
||||
.value("DIGITAL_AND_TRANSCEIVER",
|
||||
slsDetectorDefs::readoutMode::DIGITAL_AND_TRANSCEIVER)
|
||||
.export_values();
|
||||
|
||||
py::enum_<slsDetectorDefs::speedLevel>(Defs, "speedLevel")
|
||||
|
Reference in New Issue
Block a user