This commit is contained in:
2026-04-30 16:29:08 +02:00
parent 61617a60da
commit d228b193fd
2 changed files with 13 additions and 16 deletions
+11 -14
View File
@@ -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,13 +122,15 @@ void ePowerSwitchEquipment::updateSocketNumber() {
std::string epicsSetRecordName =
format(EPOWERSWITCH_SOCKET_SET_PREFIX, i);
this->outletSetRecords.push_back(
new mEpicsCa<std::string>(epicsSetRecordName.c_str()));
mEpicsCa<std::string> record =
mEpicsCa<std::string>(epicsSetRecordName.c_str());
this->outletSetRecords.push_back(record);
std::string epicsGetRecordName =
format(EPOWERSWITCH_SOCKET_GET_PREFIX, i);
this->outletGetRecords.push_back(
new mEpicsCa<std::string>(epicsGetRecordName.c_str()));
// this->outletGetRecords.push_back();
// mEpicsCa<std::string>(epicsGetRecordName.c_str()));
}
if (this->numberOfOutlet > epicsOutletNumber)
@@ -137,10 +139,8 @@ void ePowerSwitchEquipment::updateSocketNumber() {
this->numberOfOutlet - epicsOutletNumber);
for (int i = epicsOutletNumber; i < this->numberOfOutlet; i++) {
mEpicsCa<std::string> *setRecord = this->outletSetRecords.back();
delete setRecord;
mEpicsCa<std::string> *getRecord = this->outletGetRecords.back();
delete getRecord;
this->outletSetRecords.pop_back();
this->outletGetRecords.pop_back();
std::string requestedVarname =
format("Socket ", i) + std::string(" requested");
@@ -156,9 +156,6 @@ 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;
+2 -2
View File
@@ -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;