From 9a70026cf37b0193a406543ceacfb4fa1003af2f Mon Sep 17 00:00:00 2001 From: "facat@lab.com" Date: Thu, 25 Dec 2014 11:44:46 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8B=93=E6=89=91=E8=A7=A3=E6=9E=90=E4=B9=9F?= =?UTF-8?q?=E5=AE=8C=E6=88=90=E4=BA=86=EF=BC=8C=E8=99=BD=E7=84=B6=E7=94=A8?= =?UTF-8?q?=E4=BA=86=E4=B8=80=E4=BA=9Bdirty=E7=9A=84=E6=96=B9=E6=B3=95?= =?UTF-8?q?=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: facat@lab.com --- testHasttable/elementhashtable.cpp | 7 ++++++- testHasttable/powertransformer.cpp | 7 +++++++ testHasttable/powertransformer.h | 2 ++ testHasttable/substation.cpp | 6 ++++++ testHasttable/substation.h | 1 + testHasttable/topologyrecorder.cpp | 17 ++++++++++++++++- testHasttable/topologyrecorder.h | 1 + 7 files changed, 39 insertions(+), 2 deletions(-) diff --git a/testHasttable/elementhashtable.cpp b/testHasttable/elementhashtable.cpp index 42c27a8..ee82c01 100644 --- a/testHasttable/elementhashtable.cpp +++ b/testHasttable/elementhashtable.cpp @@ -37,6 +37,11 @@ bool ElementHashtable::child(QXmlStreamReader &reader) pointer=new Breaker(this); pointer->parse(reader); } + if(elementName=="Substation") + { + pointer=new Substation(this); + pointer->parse(reader); + } // if(elementName=="Compensator") // { // pointer=new Compensator(this); @@ -80,7 +85,7 @@ bool ElementHashtable::GoPath() // if(p->getName()=="ACLineSegment"){ // std::cout<getID().toStdString()<getName()=="ACLineSegment" && p->getID()=="AC-456491") + if(p->getName()=="ACLineSegment" && p->getID()=="AC-671400") { ACLineSegment *ac=static_cast(p);//BusbarSection也就是线路头节点 QString acTerminal=ac->getTerminalB(); diff --git a/testHasttable/powertransformer.cpp b/testHasttable/powertransformer.cpp index cba4ae4..c3cc5b1 100644 --- a/testHasttable/powertransformer.cpp +++ b/testHasttable/powertransformer.cpp @@ -36,11 +36,18 @@ bool PowerTransformer::derivedParse(QXmlStreamReader &reader) return true; } +QString PowerTransformer::getEquipmentMemberOf_EquipmentContainer() +{ + return this->equipmentContainer; +} + QString PowerTransformer::getNamingDescription() { return this->namingDescription; } + + bool PowerTransformer::parse(QXmlStreamReader &reader) { return this->parseBasicInfo(reader); diff --git a/testHasttable/powertransformer.h b/testHasttable/powertransformer.h index 05e861c..72cf3e6 100644 --- a/testHasttable/powertransformer.h +++ b/testHasttable/powertransformer.h @@ -8,6 +8,7 @@ public: explicit PowerTransformer(QObject *parent = 0); virtual bool parse(QXmlStreamReader& reader); QString getNamingDescription(); + QString getEquipmentMemberOf_EquipmentContainer(); protected: QString terminalA; QString terminalB; @@ -16,6 +17,7 @@ protected: virtual bool derivedParse(QXmlStreamReader& reader); private: bool isTerminalA; +// QString equipmentMemberOf_EquipmentContainer; }; #endif // POWERTRANSFORMER_H diff --git a/testHasttable/substation.cpp b/testHasttable/substation.cpp index f190120..4480e39 100644 --- a/testHasttable/substation.cpp +++ b/testHasttable/substation.cpp @@ -23,3 +23,9 @@ bool Substation::derivedParse(QXmlStreamReader& reader) } return true; } + + +QString Substation::getSubstationMemberOf_Feeder() +{ + return this->substationMemberOf_Feeder; +} diff --git a/testHasttable/substation.h b/testHasttable/substation.h index fa390c2..e13c738 100644 --- a/testHasttable/substation.h +++ b/testHasttable/substation.h @@ -7,6 +7,7 @@ class Substation:public BasicElementInfo public: explicit Substation(QObject *parent = 0); virtual bool parse(QXmlStreamReader& reader); + QString getSubstationMemberOf_Feeder(); protected: virtual bool derivedParse(QXmlStreamReader& reader); QString namingDescription; diff --git a/testHasttable/topologyrecorder.cpp b/testHasttable/topologyrecorder.cpp index 4787bc4..e7bcfb8 100644 --- a/testHasttable/topologyrecorder.cpp +++ b/testHasttable/topologyrecorder.cpp @@ -44,7 +44,6 @@ bool TopologyRecorder::startWithNode(const QString& node) // std::cout<<"can not find "<getNamingDescription()=="") terminalA=AC->getTerminalA(); terminalB=AC->getTerminalB(); std::cout<<"find"<getID().toStdString()<(ht[tfID]); std::cout<<"TF"<getNamingDescription().toStdString()<getEquipmentMemberOf_EquipmentContainer(); + Substation *sfd=static_cast(ht[equipmentContainer]); + if(sfd==NULL) + { + std::cout<<"can not find"<getSubstationMemberOf_Feeder(); + if(feederID!="FD-2004") + { + std::cout<getNamingDescription().toStdString()<<"not belong"<