16
0
mirror of https://github.com/MaSzyna-EU07/maszyna.git synced 2026-07-22 15:09:19 +02:00

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

View File

@@ -28,7 +28,7 @@ http://mozilla.org/MPL/2.0/.
//--------------------------------------------------------------------------- //---------------------------------------------------------------------------
TTractionPowerSource::TTractionPowerSource() TTractionPowerSource::TTractionPowerSource(TGroundNode *node)
{ {
NominalVoltage = 0; NominalVoltage = 0;
VoltageFrequency = 0; VoltageFrequency = 0;
@@ -49,6 +49,7 @@ TTractionPowerSource::TTractionPowerSource()
psNode[0] = NULL; // sekcje zostan¹ pod³¹czone do zasilaczy psNode[0] = NULL; // sekcje zostan¹ pod³¹czone do zasilaczy
psNode[1] = NULL; psNode[1] = NULL;
bSection = false; // sekcja nie jest Ÿród³em zasilania, tylko grupuje przês³a bSection = false; // sekcja nie jest Ÿród³em zasilania, tylko grupuje przês³a
gMyNode = node;
}; };
TTractionPowerSource::~TTractionPowerSource(){}; TTractionPowerSource::~TTractionPowerSource(){};

View File

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