TwiceAsNice
2019-02-18
|
the main class for the MSXBOX Delay Generator Driver More...
#include <MSXBOXDelay.h>
Private Member Functions | |
int | initdg (xsd__unsignedLong MaximumNumberOfDelayGenerators) |
this function is used to initialize the delay Generator(s) in the MSXBOX More... | |
int | dg_init (void) |
this function initializes all the delay generators found More... | |
int | stopdg (xsd__unsignedLong DG_Number) |
this function stops the delay generator in the MSXBOX More... | |
void | reset_MSXBOX__DG__DG_BME_ControlParameter () |
this function is used to reset the Control Parameters of the delay generator More... | |
void | reset_MSXBOX__DG__DG_BME_ControlParameter_DelayChannelData () |
this function is used to reset the Delaychannel Data of the delay generator More... | |
void | reset_MSXBOX__DG__DG_BME_ControlParameter_DelayTriggerData () |
this function is used to reset the Delaytrigger Data of the delay generator More... | |
int | configure_dg (struct MSXBOX__DG__DG_BME_ControlParameter_DelayChannelData A, struct MSXBOX__DG__DG_BME_ControlParameter_DelayChannelData B, struct MSXBOX__DG__DG_BME_ControlParameter_DelayChannelData T0, struct MSXBOX__DG__DG_BME_ControlParameter_DelayTriggerData DT, struct MSXBOX__DG__DG_BME_ControlParameter CP, xsd__unsignedLong DG_Number) |
this function is used to configure the Delay Generator with desired parameters More... | |
Private Attributes | |
const char * | m_MSXBOX_endpoint |
endpoint of the MSXBOX More... | |
struct soap | m_soapenv |
soap specific struct More... | |
xsd__unsignedLong | m_DG_Detected |
number of delay generators More... | |
xsd__unsignedLong | m_DG_MaxNumber |
maximum Numbers of delay generators More... | |
std::vector< struct MSXBOX__DG__GetPciDelayGeneratorResponse > | key_vector |
vector containing the plx_Key data for the delay generators More... | |
struct MSXBOX__DG__DG_BME_ControlParameter_DelayChannelData | p_dcd_A |
delay channel data struct for delay channel A More... | |
struct MSXBOX__DG__DG_BME_ControlParameter_DelayChannelData | p_dcd_B |
delay channel data struct for delay channel B More... | |
struct MSXBOX__DG__DG_BME_ControlParameter_DelayChannelData | p_dcd_T0 |
delay channel data struct for delay channel T0 More... | |
struct MSXBOX__DG__DG_BME_ControlParameter_DelayTriggerData | p_dtd |
delay trigger data struct More... | |
struct MSXBOX__DG__DG_BME_ControlParameter | p_cp |
control parameter struct More... | |
xsd__BOOL | channelA_set |
indicates if channel A is set More... | |
xsd__BOOL | channelB_set |
indicates if channel B is set More... | |
xsd__BOOL | channelT0_set |
indicates if channel T0 is set More... | |
xsd__BOOL | triggerData_set |
indicates if trigger data is set More... | |
xsd__BOOL | control_set |
indicates if control parameters are set More... | |
xsd__BOOL | m_DG_Data_reserved |
indicates if dg data is reserved on the server (dgs initialized or not) More... | |
the main class for the MSXBOX Delay Generator Driver
Basda::MSXBOXDelay::MSXBOXDelay | ( | std::string | _endpoint, |
xsd__unsignedLong | _MaxNumber | ||
) |
constructor
_endpoint | connection address to the MSXBOX |
_MaxNumber | the maximum number of delay generators |
|
virtual |
destructor
|
private |
this function is used to configure the Delay Generator with desired parameters
A | channel A data |
B | channel B data |
T0 | channel T0 data |
DT | delay trigger data |
CP | control parameter data |
DG_Number | the number of the delay generator (counting starts with 0) |
|
private |
this function initializes all the delay generators found
|
private |
this function is used to initialize the delay Generator(s) in the MSXBOX
MaximumNumberOfDelayGenerators | the maximum number of delay generators to search for |
int Basda::MSXBOXDelay::MSXBOX_acknowledgeInterrupts | ( | xsd__unsignedLong | value, |
xsd__unsignedLong | DG_Number | ||
) |
this function is used to acknowledge one or more specific interrupts
value | the bits of this value specifie the interrupts to be acknowledged |
DG_Number | the number of the delay generator (counting starts with 0) |
int Basda::MSXBOXDelay::MSXBOX_activate_DG | ( | void | ) |
this function activates all the delay generators in the MSXBOX
int Basda::MSXBOXDelay::MSXBOX_activate_DG | ( | xsd__unsignedLong | DG_Number | ) |
this function activates one specific delay generator in the MSXBOX
int Basda::MSXBOXDelay::MSXBOX_configure_DG | ( | xsd__unsignedLong | DG_Number | ) |
this function configures the MSXBOX Delay Generator
DG_Number | the number of the delay generator (counting starts with 0) |
int Basda::MSXBOXDelay::MSXBOX_deactivate_DG | ( | void | ) |
this function deactivates all the delay generators in the MSXBOX
int Basda::MSXBOXDelay::MSXBOX_deactivate_DG | ( | xsd__unsignedLong | DG_Number | ) |
this function deactivates one specific delay generator in the MSXBOX
int Basda::MSXBOXDelay::MSXBOX_enableInterrupts | ( | xsd__unsignedLong | value, |
xsd__unsignedLong | DG_Number | ||
) |
this function is used to enable the interrupts of the delay generator
value | the bits of this value define the interrupts to be enabled |
DG_Number | the number of the delay generator (counting starts with 0) |
int Basda::MSXBOXDelay::MSXBOX_loadOutputState | ( | xsd__unsignedLong | DG_Number | ) |
this function is used to load the output state to the delay generator
DG_Number | the number of the delay generator (counting starts with 0) |
xsd__unsignedLong Basda::MSXBOXDelay::MSXBOX_read_DG_Status | ( | xsd__unsignedLong | DG_Number | ) |
this function is used to read the status register of the delay generator
DG_Number | the number of the delay generator (counting starts with 0) |
xsd__unsignedLong Basda::MSXBOXDelay::MSXBOX_readCounterControlRegister | ( | xsd__unsignedLong | DG_Number | ) |
this function is used to read the counter control register of the delay generator
DG_Number | the number of the delay generator (counting starts with 0) |
xsd__unsignedLong Basda::MSXBOXDelay::MSXBOX_readEventCounter | ( | xsd__unsignedLong | DG_Number | ) |
this function is used to read out the current event trigger counter value of the delay generator
DG_Number | the number of the delay generator (counting starts with 0) |
xsd__unsignedLong Basda::MSXBOXDelay::MSXBOX_readInterruptStatus | ( | xsd__unsignedLong | DG_Number | ) |
this function is used to read the current interrupt status of the delay generator
DG_Number | the number of the delay generator (counting starts with 0) |
int Basda::MSXBOXDelay::MSXBOX_resetAllOutputModuloCounters | ( | void | ) |
this function is used to reset the output modulo counters of all the delay generators
int Basda::MSXBOXDelay::MSXBOX_resetEventCounter | ( | xsd__unsignedLong | DG_Number | ) |
this function is used to reset the trigger event counter on the delay generator
DG_Number | the number of the delay generator (counting starts with 0) |
int Basda::MSXBOXDelay::MSXBOX_resetOutputModuloCounters | ( | xsd__unsignedLong | DG_Number | ) |
this function can be used to reset the output modulo counter of one specific delay generator
DG_Number | the number of the delay generator (counting starts with 0) |
|
private |
this function is used to reset the Control Parameters of the delay generator
|
private |
this function is used to reset the Delaychannel Data of the delay generator
|
private |
this function is used to reset the Delaytrigger Data of the delay generator
void Basda::MSXBOXDelay::set_MSXBOX__DG__DG_BME_ControlParameter_DelayChannelData_A | ( | xsd__double | FireFirst, |
xsd__double | SetBack, | ||
xsd__double | FireSecond, | ||
xsd__unsignedLong | OutputModulo, | ||
xsd__unsignedLong | OutputOffset, | ||
xsd__unsignedLong | GoSignal, | ||
xsd__unsignedLong | DoneSignal, | ||
xsd__BOOL | Positive, | ||
xsd__BOOL | Terminate, | ||
xsd__BOOL | HighDrive | ||
) |
this function is used to set the Delay Channel Data for the delay generator
FireFirst | the delay |
SetBack | output reset time |
FireSecond | fires te output a second time |
OutputModulo | Modulo to apply to the fireing of the output |
OutputOffset | Offset for the output |
GoSignal | Signal used to start the output |
DoneSignal | Signal used to imidiatly be acknowledged by the delay channel |
Positive | True: use positive output polarity |
Terminate | True: internally terminate the output channel |
HighDrive | True: extra load of 25 Ohm |
void Basda::MSXBOXDelay::set_MSXBOX__DG__DG_BME_ControlParameter_DelayChannelData_B | ( | xsd__double | FireFirst, |
xsd__double | SetBack, | ||
xsd__double | FireSecond, | ||
xsd__unsignedLong | OutputModulo, | ||
xsd__unsignedLong | OutputOffset, | ||
xsd__unsignedLong | GoSignal, | ||
xsd__unsignedLong | DoneSignal, | ||
xsd__BOOL | Positive, | ||
xsd__BOOL | Terminate, | ||
xsd__BOOL | HighDrive | ||
) |
void Basda::MSXBOXDelay::set_MSXBOX__DG__DG_BME_ControlParameter_DelayChannelData_T0 | ( | xsd__double | FireFirst, |
xsd__double | SetBack, | ||
xsd__double | FireSecond, | ||
xsd__unsignedLong | OutputModulo, | ||
xsd__unsignedLong | OutputOffset, | ||
xsd__unsignedLong | GoSignal, | ||
xsd__unsignedLong | DoneSignal, | ||
xsd__BOOL | Positive, | ||
xsd__BOOL | Terminate, | ||
xsd__BOOL | HighDrive | ||
) |
void Basda::MSXBOXDelay::set_MSXBOX__DG__DG_BME_ControlParameter_DelayTriggerData | ( | xsd__double | InternalClock, |
xsd__double | ForceTrigger, | ||
xsd__double | TriggerLevel, | ||
xsd__unsignedLong | Preset, | ||
xsd__unsignedLong | MS_Bus, | ||
xsd__unsignedLong | OscDivider, | ||
xsd__unsignedLong | TrigDivider, | ||
xsd__unsignedLong | ClockSource, | ||
xsd__unsignedLong | GateDivider, | ||
xsd__BOOL | PositiveGate, | ||
xsd__BOOL | IgnoreGate, | ||
xsd__BOOL | SynchronizeGate, | ||
xsd__BOOL | ClockEnable, | ||
xsd__BOOL | InternalTrigger, | ||
xsd__BOOL | InternalArm, | ||
xsd__BOOL | SoftwareTrigger, | ||
xsd__BOOL | RisingEdge, | ||
xsd__BOOL | StopOnPreset, | ||
xsd__BOOL | ResetWhenDone, | ||
xsd__BOOL | TriggerEnable, | ||
xsd__BOOL | Terminate | ||
) |
this function is used to set the delay trigger data for the delay generator
InternalClock | period of the internal clock in microsec |
ForceTrigger | time after trigger event when delays should be triggered |
TriggerLevel | trigger threshold |
Preset | preset value for the internal event counter |
MS_Bus | defines trigger signal on master/slave bus |
OscDivider | number crystal oscillator is divided by |
TrigDivider | number trigger is divided by |
ClockSource | defines the signal to be used as clock source |
GateDivider | external gate is divided by this number |
PositiveGate | True: positive gate signal enables trigger |
IgnoreGate | True: ignore gate signal |
SynchronizeGate | defines measurement fo time difference between gates |
ClockEnable | True: enable clock circuit |
InternalTrigger | True: use internal trigger |
InternalArm | True: internal rate counter arms external trigger |
SoftwareTrigger | True: trigger by software command |
RisingEdge | True: trigger on rising edge of external trigger |
StopOnPreset | True: stops when preset value reached |
ResetWhenDone | True: resets all channels when delays have elapsed |
TriggerEnable | True: enable trigger circuit |
Terminate | True: terminate trigger input |
void Basda::MSXBOXDelay::set_MSXBOX__DG__DG_BME_ControlParameters | ( | xsd__unsignedLong | Pulse, |
xsd__BOOL | Gate_AB, | ||
xsd__unsignedLong | OutputLevel, | ||
xsd__unsignedLong | DG_Product, | ||
xsd__unsignedLong | GateFunction | ||
) |
this function is used to set the Control Parameters for the delay generator
Pulse | PulseWidth |
Gate_AB | True: enable Gate Combination |
OutputLevel | the Voltage Outputlevel |
DG_Product | Type of the delay generator |
GateFunction | Gate combination mode |
|
private |
this function stops the delay generator in the MSXBOX
DG_Number | the number of the delay generator to stop (counting starts with 0) |
|
private |
indicates if channel A is set
|
private |
indicates if channel B is set
|
private |
indicates if channel T0 is set
|
private |
indicates if control parameters are set
|
private |
vector containing the plx_Key data for the delay generators
|
private |
indicates if dg data is reserved on the server (dgs initialized or not)
|
private |
number of delay generators
|
private |
maximum Numbers of delay generators
|
private |
endpoint of the MSXBOX
|
private |
soap specific struct
|
private |
control parameter struct
|
private |
delay channel data struct for delay channel A
|
private |
delay channel data struct for delay channel B
|
private |
delay channel data struct for delay channel T0
|
private |
delay trigger data struct
|
private |
indicates if trigger data is set