adds remaining missing PVs
This commit is contained in:
@@ -99,6 +99,10 @@ asynStreamGeneratorDriver::asynStreamGeneratorDriver(const char *portName,
|
||||
createParam(P_ResetString, asynParamInt32, &P_Reset));
|
||||
status = (asynStatus)(status | setIntegerParam(P_Reset, 0));
|
||||
|
||||
status = (asynStatus)(status |
|
||||
createParam(P_StopString, asynParamInt32, &P_Stop));
|
||||
status = (asynStatus)(status | setIntegerParam(P_Stop, 0));
|
||||
|
||||
status = (asynStatus)(status | createParam(P_CountPresetString,
|
||||
asynParamInt32, &P_CountPreset));
|
||||
status = (asynStatus)(status | setIntegerParam(P_CountPreset, 0));
|
||||
@@ -111,15 +115,32 @@ asynStreamGeneratorDriver::asynStreamGeneratorDriver(const char *portName,
|
||||
asynParamInt32, &P_ElapsedTime));
|
||||
status = (asynStatus)(status | setIntegerParam(P_ElapsedTime, 0));
|
||||
|
||||
status = (asynStatus)(status | createParam(P_ClearElapsedTimeString,
|
||||
asynParamInt32, &P_ClearElapsedTime));
|
||||
status = (asynStatus)(status | setIntegerParam(P_ClearElapsedTime, 0));
|
||||
|
||||
status =
|
||||
(asynStatus)(status | createParam(P_MonitorChannelString,
|
||||
asynParamInt32, &P_MonitorChannel));
|
||||
status = (asynStatus)(status | setIntegerParam(P_MonitorChannel, 0));
|
||||
|
||||
status =
|
||||
(asynStatus)(status | createParam(P_ThresholdString,
|
||||
asynParamInt32, &P_Threshold));
|
||||
status = (asynStatus)(status | setIntegerParam(P_Threshold, 1));
|
||||
|
||||
status =
|
||||
(asynStatus)(status | createParam(P_ThresholdChannelString,
|
||||
asynParamInt32, &P_ThresholdChannel));
|
||||
status = (asynStatus)(status | setIntegerParam(P_ThresholdChannel, 1));
|
||||
|
||||
|
||||
|
||||
// Create Parameters templated on Channel Number
|
||||
char pv_name_buffer[100];
|
||||
P_Counts = new int[this->num_channels];
|
||||
P_Rates = new int[this->num_channels];
|
||||
P_ClearCounts = new int[this->num_channels];
|
||||
for (size_t i = 0; i < this->num_channels; ++i) {
|
||||
memset(pv_name_buffer, 0, 100);
|
||||
epicsSnprintf(pv_name_buffer, 100, P_CountsString, i);
|
||||
@@ -134,6 +155,13 @@ asynStreamGeneratorDriver::asynStreamGeneratorDriver(const char *portName,
|
||||
(asynStatus)(status | createParam(pv_name_buffer, asynParamInt32,
|
||||
P_Rates + i));
|
||||
status = (asynStatus)(status | setIntegerParam(P_Rates[i], 0));
|
||||
|
||||
memset(pv_name_buffer, 0, 100);
|
||||
epicsSnprintf(pv_name_buffer, 100, P_ClearCountsString, i);
|
||||
status =
|
||||
(asynStatus)(status | createParam(pv_name_buffer, asynParamInt32,
|
||||
P_ClearCounts + i));
|
||||
status = (asynStatus)(status | setIntegerParam(P_ClearCounts[i], 0));
|
||||
}
|
||||
|
||||
if (status) {
|
||||
@@ -145,8 +173,8 @@ asynStreamGeneratorDriver::asynStreamGeneratorDriver(const char *portName,
|
||||
// Create Events
|
||||
this->pausedEventId = epicsEventCreate(epicsEventEmpty);
|
||||
|
||||
// this->monitorProducer = create_kafka_producer();
|
||||
// this->detectorProducer = create_kafka_producer();
|
||||
this->monitorProducer = create_kafka_producer();
|
||||
this->detectorProducer = create_kafka_producer();
|
||||
|
||||
// Setup for Thread Producing Monitor Kafka Events
|
||||
status =
|
||||
|
||||
@@ -82,13 +82,18 @@ struct __attribute__((__packed__)) NormalisedDetectorEvent {
|
||||
|
||||
#define P_StatusString "STATUS"
|
||||
#define P_ResetString "RESET"
|
||||
#define P_StopString "STOP"
|
||||
#define P_CountPresetString "P_CNT"
|
||||
#define P_TimePresetString "P_TIME"
|
||||
#define P_ElapsedTimeString "TIME"
|
||||
#define P_ClearElapsedTimeString "C_TIME"
|
||||
#define P_MonitorChannelString "MONITOR"
|
||||
#define P_ThresholdString "THRESH"
|
||||
#define P_ThresholdChannelString "THRESH_CH"
|
||||
|
||||
#define P_CountsString "COUNTS%d"
|
||||
#define P_RateString "RATE%d"
|
||||
#define P_ClearCountsString "C_%d"
|
||||
|
||||
/*******************************************************************************
|
||||
* Stream Generator Coordinating Class
|
||||
@@ -109,12 +114,17 @@ class asynStreamGeneratorDriver : public asynPortDriver {
|
||||
// Parameter Identifying IDs
|
||||
int P_Status;
|
||||
int P_Reset;
|
||||
int P_Stop;
|
||||
int P_CountPreset;
|
||||
int P_TimePreset;
|
||||
int P_ElapsedTime;
|
||||
int P_ClearElapsedTime;
|
||||
int P_MonitorChannel;
|
||||
int P_Threshold;
|
||||
int P_ThresholdChannel;
|
||||
int *P_Counts;
|
||||
int *P_Rates;
|
||||
int *P_ClearCounts;
|
||||
|
||||
private:
|
||||
asynUser *pasynUDPUser;
|
||||
|
||||
Reference in New Issue
Block a user