cimforreduceloss/testHasttable/aclinesegment.cpp

77 lines
2.2 KiB
C++
Raw Normal View History

#include "aclinesegment.h"
#include <iostream>
ACLineSegment::ACLineSegment(QObject *parent):BasicElementInfo(parent),isTerminalA(true)
{
}
bool ACLineSegment::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("ConductingEquipment.Substation"==reader.name() && reader.attributes().hasAttribute("rdf:resource"))
{
QString ss;
ss=reader.attributes().value("rdf:resource").toString();
this->containsOfSubstation=ss.replace("#","").leftRef(-1).toString();
qDebug()<<"got "<<"ConductingEquipment.Substation "<<this->containsOfSubstation<<"\n";
}
if("Naming.description"==reader.name())
{
this->namingDescription=reader.readElementText();
}
if("Conductor.length"==reader.name())
{
bool ok;
this->conductorLength=reader.readElementText().toDouble(&ok);
if(!ok)
{
this->conductorLength=-100000;
}
}
return true;
}
double ACLineSegment::getLength()
{
return this->conductorLength;
}
QString ACLineSegment::getNamingDescription()
{
return this->namingDescription;
}
QString ACLineSegment::getTerminalA()
{
return this->terminalA;
}
QString ACLineSegment::getTerminalB()
{
return this->terminalB;
}
void ACLineSegment::setLength(double length)
{
this->conductorLength=length;
}
bool ACLineSegment::parse(QXmlStreamReader &reader)
{
return this->parseBasicInfo(reader);
}