pflib v3.9.0-rc3-11-g2537d8f
Pretty Fine HGCROC Interaction Library
Loading...
Searching...
No Matches
PyTarget Class Reference

Hold a pflib::Target to do run commands on. More...

Collaboration diagram for PyTarget:
[legend]

Public Member Functions

 PyTarget (bp::dict config)
 construct a PyTarget given some arbitrary Python dict of parameters
 
void configure ()
 
void trigger_align ()
 
void ror_latency ()
 
void pre_start ()
 
void go ()
 
void stop ()
 
void reset ()
 
std::vector< uint32_t > grab_pedestals ()
 should not use in actual DAQ
 

Private Attributes

std::shared_ptr< pflib::Targettgt_
 our handle to the pflib::Target
 

Detailed Description

Hold a pflib::Target to do run commands on.

We need to hold a pflib::Target and can't bind pflib::Target's directly since pflib::Target is abstract. We could /maybe/ use bp::no_copy in order to allow binding of an abstract class, but I think this is cleaner anyways since we need a spot to map the Python Run Control commands onto C++ pflib::Target functions (or series of functions).

See this example: https://github.com/slaclab/ucsc-hn/blob/master/firmware/python/ucsc_hn/_RenaDataEmulator.py The self._processor object is the bound C++ and you can see how we can connect pyrogue.LocalVariable to specific setters/getters here in order to ease passage of configuration between rogue and us.


The documentation for this class was generated from the following file: