cimforreduceloss/testHasttable/powertransformer.cpp

81 lines
2.5 KiB
C++
Raw Normal View History

#include "powertransformer.h"
PowerTransformer::PowerTransformer(QObject *parent):BasicElementInfo(parent),isTerminalA(true)
{
}
bool PowerTransformer::derivedParse(QXmlStreamReader &reader)
{
if(this->isTerminalA && "ConductingEquipment.Terminals"==reader.name() && reader.attributes().hasAttribute("rdf:resource"))
{
QString terminal;
terminal=reader.attributes().value("rdf:resource").toString();
this->terminalA=terminal.replace("#","").leftRef(-1).toString();
qDebug()<<"got "<<"ConductingEquipment.Terminals "<<this->terminalA<<"\n";
this->isTerminalA=false;
}
if(!this->isTerminalA && "ConductingEquipment.Terminals"==reader.name() && reader.attributes().hasAttribute("rdf:resource"))
{
QString terminal;
terminal=reader.attributes().value("rdf:resource").toString();
this->terminalB=terminal.replace("#","").leftRef(-1).toString();
qDebug()<<"got "<<"ConductingEquipment.Terminals "<<this->terminalB<<"\n";
}
if("Equipment.MemberOf_EquipmentContainer"==reader.name() && reader.attributes().hasAttribute("rdf:resource"))
{
QString ss;
ss=reader.attributes().value("rdf:resource").toString();
this->equipmentContainer=ss.replace("#","").leftRef(-1).toString();
qDebug()<<"got "<<"Equipment.MemberOf_EquipmentContainer "<<this->equipmentContainer<<"\n";
}
if("Naming.description"==reader.name())
{
this->namingDescription=reader.readElementText();
}
if("PowerTransformer.KV_H"==reader.name())
{
QString ratedkV=reader.readElementText();
bool ok;
double _ratedkV=ratedkV.toDouble(&ok);
this->powerTransformerKV_H=ok?_ratedkV:-10000;
}
if("PowerTransformer.ratedMVA_H"==reader.name())
{
QString ratedMVA=reader.readElementText();
bool ok;
double _ratedMVA=ratedMVA.toDouble(&ok);
double assignedMVA=ok?_ratedMVA:-10000;
if(assignedMVA>5)
{
assignedMVA=0.63;
}
this->powerTransformerRatedMVA_H=assignedMVA;
}
return true;
}
QString PowerTransformer::getEquipmentMemberOf_EquipmentContainer()
{
return this->equipmentContainer;
}
QString PowerTransformer::getNamingDescription()
{
return this->namingDescription;
}
double PowerTransformer::getMVA()
{
return this->powerTransformerRatedMVA_H;
}
double PowerTransformer::getRatedkV()
{
return this->powerTransformerKV_H;
}
bool PowerTransformer::parse(QXmlStreamReader &reader)
{
return this->parseBasicInfo(reader);
}