AFHBA404
AFHBA404 connects ACQ2106 to PCI-Express
|
Go to the documentation of this file.
8 #ifndef ACQPROC_ACQSYS_H_
9 #define ACQPROC_ACQSYS_H_
18 int getenv(
const char* key,
int def,
int (*cvt)(
const char* key) = atoi);
26 VI& operator+= (
const VI& right);
27 VI offsets(
void)
const;
50 int hwlen(
void)
const;
51 VO& operator+= (
const VO& right);
52 VO offsets(
void)
const;
72 IO(
string _name,
VI _vi,
VO _vo);
74 virtual string toString();
85 ACQ(
int devnum,
string _name,
VI _vi,
VO _vo,
VI _vi_offsets,
VO _vo_offsets,
VI& sys_vi_cursor,
VO& sys_vo_cursor);
98 virtual string toString();
100 virtual bool newSample(
int sample);
106 virtual unsigned tlatch(
void);
110 static ACQ* factory(
int devnum,
string _name,
VI _vi,
VO _vo,
VI _vi_offsets,
111 VO _vo_offsets,
VI& sys_vi_cursor,
VO& sys_vo_cursor);
124 HBA(vector <ACQ*> _uuts,
VI _vi,
VO _vo);
135 static HBA& create(
const char* json_def,
int _maxsam);
138 virtual void start_shot();
139 virtual void processSample(
SystemInterface& systemInterface,
int sample);
144 void dump_data(
const char* basename);
147 virtual string toString();
227 T* nz_array =
new T[nelems];
228 memset(nz_array, 0, nelems*
sizeof(T));
232 #define PFN __PRETTY_FUNCTION__
Models a Host Bus Adapter like AFHBA404.
unsigned * CC32
calc values from PCS .
const VI vi_cursor
index for each Input type in System Interface
@ USECS
microseconds since trigger
SPIX
SPIX: defined fields in SP32 array.
const VO vo_offsets
byte offset for each Output type in Local Vector Out
unsigned AO16_count() const
int devnum
AFHBA404 device numbers 0..N.
unsigned PW32_count() const
const VI vi
total system size each Input type.
unsigned DI32_count() const
vector< ACQ * > uuts
vector of ACQ UUT's
int getenv(const char *key, int def, int(*cvt)(const char *key)=atoi)
@ POLLCOUNT
pollcount: number of times SW polled for incoming.
int AI32
AI32 values from the HW.
unsigned SP32_count() const
virtual void action(SystemInterface &systemInterface)
unsigned wd_mask
watchdog mask.
int PW32
PW32 values from the algorithm.
int SP32
SP32 values from the HW.
int AO16
AO16 values from the algorithm.
int CC32
#CALC values from the algorithm.
virtual void ringDoorbell(int sample)
struct Dev : interface to AFHBA404 device driver.
int dummy_first_loop
possible speed up by filling cache first loop
unsigned AI16_count() const
static int maxsam
max samples in shot (for raw memory alloc)
PW32V * PW32
32 demand values packed into shorts
ONE vector each type, scatter each type to appropriate VO all UUTS.
abstract model of an ACQ2106 box.
int DO32
DO32 values from the algorithm.
const VI vi_offsets
byte offset for each Input type in Local Vector In
unsigned CC32_count() const
int AI16
AI16 values from the HW.
Models interface with external PCS.
unsigned AI32_count() const
vector< int > devs
AFHBA devnum.
const VO vo
total system size each Output type.
unsigned DO32_count() const
int DI32
DI32 values from the HW.
int samples_buffer
number of samples in each VI buffer (default:1)
T * new_zarray(int nelems)
virtual void action2(SystemInterface &systemInterface)
const VO vo_cursor
index for each Output type in System Interface
int nsamples
samples to capture (default:2, typ 200000)
bool nowait
newSample doesn't block for new Tlatch (eg bolo in set with non bolo uuts).