@@ -57,7 +57,7 @@ void ePowerSwitchEquipment::refreshSocket(int socketId) {
|
||||
|
||||
std::string epicsCurrentSocketState;
|
||||
mepicscaReturnCode =
|
||||
this->outletGetRecords.at(socketId).get(&epicsCurrentSocketState);
|
||||
this->outletGetRecords.at(socketId)->get(&epicsCurrentSocketState);
|
||||
|
||||
if (mepicscaReturnCode != CM_SUCCESS) {
|
||||
fMfe->Msg(MERROR, __FUNCTION__,
|
||||
@@ -68,8 +68,8 @@ void ePowerSwitchEquipment::refreshSocket(int socketId) {
|
||||
}
|
||||
|
||||
if (epicsCurrentSocketState != midasRequestedSocketState) {
|
||||
mepicscaReturnCode =
|
||||
this->outletSetRecords.at(socketId).put(&midasRequestedSocketState);
|
||||
mepicscaReturnCode = this->outletSetRecords.at(socketId)->put(
|
||||
&midasRequestedSocketState);
|
||||
|
||||
if (mepicscaReturnCode != CM_SUCCESS) {
|
||||
fMfe->Msg(MERROR, __FUNCTION__,
|
||||
@@ -122,15 +122,13 @@ void ePowerSwitchEquipment::updateSocketNumber() {
|
||||
std::string epicsSetRecordName =
|
||||
format(EPOWERSWITCH_SOCKET_SET_PREFIX, i);
|
||||
|
||||
mEpicsCa<std::string> record =
|
||||
mEpicsCa<std::string>(epicsSetRecordName.c_str());
|
||||
|
||||
this->outletSetRecords.push_back(record);
|
||||
this->outletSetRecords.push_back(
|
||||
new mEpicsCa<std::string>(epicsSetRecordName.c_str()));
|
||||
|
||||
std::string epicsGetRecordName =
|
||||
format(EPOWERSWITCH_SOCKET_GET_PREFIX, i);
|
||||
// this->outletGetRecords.push_back();
|
||||
// mEpicsCa<std::string>(epicsGetRecordName.c_str()));
|
||||
this->outletGetRecords.push_back(
|
||||
new mEpicsCa<std::string>(epicsGetRecordName.c_str()));
|
||||
}
|
||||
|
||||
if (this->numberOfOutlet > epicsOutletNumber)
|
||||
@@ -139,8 +137,10 @@ void ePowerSwitchEquipment::updateSocketNumber() {
|
||||
this->numberOfOutlet - epicsOutletNumber);
|
||||
|
||||
for (int i = epicsOutletNumber; i < this->numberOfOutlet; i++) {
|
||||
this->outletSetRecords.pop_back();
|
||||
this->outletGetRecords.pop_back();
|
||||
mEpicsCa<std::string> *setRecord = this->outletSetRecords.back();
|
||||
delete setRecord;
|
||||
mEpicsCa<std::string> *getRecord = this->outletGetRecords.back();
|
||||
delete getRecord;
|
||||
|
||||
std::string requestedVarname =
|
||||
format("Socket ", i) + std::string(" requested");
|
||||
@@ -156,6 +156,9 @@ void ePowerSwitchEquipment::updateSocketNumber() {
|
||||
fOdbEqVariables->Delete(currentVarname.c_str(), &ovbError);
|
||||
if (ovbError.fError)
|
||||
fMfe->Msg(MERROR, __FUNCTION__, ovbError.fErrorString);
|
||||
|
||||
this->outletSetRecords.pop_back();
|
||||
this->outletGetRecords.pop_back();
|
||||
}
|
||||
|
||||
this->numberOfOutlet = epicsOutletNumber;
|
||||
|
||||
@@ -23,8 +23,8 @@ class ePowerSwitchEquipment : public TMFeEquipment {
|
||||
void HandlePeriodic();
|
||||
|
||||
private:
|
||||
std::vector<mEpicsCa<std::string>> outletSetRecords;
|
||||
std::vector<mEpicsCa<std::string>> outletGetRecords;
|
||||
std::vector<mEpicsCa<std::string> *> outletSetRecords;
|
||||
std::vector<mEpicsCa<std::string> *> outletGetRecords;
|
||||
mEpicsCa<int> outletNumberRecord;
|
||||
int numberOfOutlet;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user