Poprawienie przypisania węzła rodzica do TTracionPowerSource, gdyż w przypadku automatycznego generowania na podstawie wpisu w tor wskaźnik był na NULL

This commit is contained in:
firleju
2016-03-19 07:58:02 +01:00
parent 1f939735ce
commit fb407a63aa
3 changed files with 7 additions and 8 deletions

View File

@@ -1704,9 +1704,7 @@ TGroundNode *__fastcall TGround::AddGroundNode(cParser *parser)
parser->getTokens(3);
*parser >> tmp->pCenter.x >> tmp->pCenter.y >> tmp->pCenter.z;
tmp->pCenter += pOrigin;
tmp->psTractionPowerSource = new TTractionPowerSource();
tmp->psTractionPowerSource->gMyNode =
tmp; // Ra 2015-03: znowu prowizorka, aby mieæ nazwê do logowania
tmp->psTractionPowerSource = new TTractionPowerSource(tmp);
tmp->psTractionPowerSource->Load(parser);
break;
case TP_MEMCELL:
@@ -3374,7 +3372,7 @@ void TGround::InitTraction()
nTemp = new TGroundNode();
nTemp->iType = TP_TRACTIONPOWERSOURCE;
nTemp->asName = Traction->asPowerSupplyName;
nTemp->psTractionPowerSource = new TTractionPowerSource();
nTemp->psTractionPowerSource = new TTractionPowerSource(nTemp);
nTemp->psTractionPowerSource->Init(Traction->NominalVoltage, Traction->MaxCurrent);
nTemp->nNext = nRootOfType[nTemp->iType]; // ostatni dodany do³¹czamy na koñcu
// nowego

View File

@@ -28,7 +28,7 @@ http://mozilla.org/MPL/2.0/.
//---------------------------------------------------------------------------
TTractionPowerSource::TTractionPowerSource()
TTractionPowerSource::TTractionPowerSource(TGroundNode *node)
{
NominalVoltage = 0;
VoltageFrequency = 0;
@@ -49,6 +49,7 @@ TTractionPowerSource::TTractionPowerSource()
psNode[0] = NULL; // sekcje zostan¹ pod³¹czone do zasilaczy
psNode[1] = NULL;
bSection = false; // sekcja nie jest Ÿród³em zasilania, tylko grupuje przês³a
gMyNode = node;
};
TTractionPowerSource::~TTractionPowerSource(){};
@@ -62,7 +63,7 @@ void TTractionPowerSource::Init(double u, double i)
bool TTractionPowerSource::Load(cParser *parser)
{
std::string token;
std::string token;
// AnsiString str;
// str= Parser->GetNextSymbol()LowerCase();
// asName= str;

View File

@@ -33,15 +33,15 @@ class TTractionPowerSource
bool SlowFuse;
double FuseTimer;
int FuseCounter;
TGroundNode *gMyNode; // wskaŸnik na wêze³ rodzica
protected:
public: // zmienne publiczne
TTractionPowerSource *psNode[2]; // zasilanie na koñcach dla sekcji
bool bSection; // czy jest sekcj¹
TGroundNode *gMyNode; // Ra 2015-03: znowu prowizorka, aby mieæ nazwê do logowania
public:
// AnsiString asName;
TTractionPowerSource();
TTractionPowerSource(TGroundNode *node);
~TTractionPowerSource();
void Init(double u, double i);
bool Load(cParser *parser);