mirror of
https://github.com/MaSzyna-EU07/maszyna.git
synced 2026-07-22 16:19:19 +02:00
Poprawione pliki. Kompiluje się, ale nie buduje. Problem z linkerem.
This commit is contained in:
21
EU07.bpr
21
EU07.bpr
@@ -4,17 +4,16 @@
|
||||
<MACROS>
|
||||
<VERSION value="BCB.05.03"/>
|
||||
<PROJECT value="E:\Gry\MaSzyna_15_04\EU07.exe"/>
|
||||
<OBJFILES value="QueryParserComp.obj McZapkie\_mover.obj McZapkie\hamulce.obj EU07.obj
|
||||
dumb3d.obj Camera.obj Texture.obj World.obj Model3d.obj MdlMngr.obj
|
||||
Train.obj wavread.obj Timer.obj Event.obj MemCell.obj Logs.obj Spring.obj
|
||||
Button.obj Globals.obj Gauge.obj AnimModel.obj Ground.obj TrkFoll.obj
|
||||
Segment.obj Sound.obj AdvSound.obj Track.obj DynObj.obj RealSound.obj
|
||||
EvLaunch.obj FadeSound.obj Traction.obj TractionPower.obj parser.obj
|
||||
sky.obj AirCoupler.obj opengl\glew.obj ResourceManager.obj VBO.obj
|
||||
mtable.obj TextureDDS.obj opengl\ARB_Multisample.obj Float3d.obj
|
||||
Classes.obj Driver.obj Names.obj Console.obj Mover.obj
|
||||
McZapkie\Oerlikon_ESt.obj Console\PoKeys55.obj Forth.obj Console\LPT.obj
|
||||
PyInt.obj"/>
|
||||
<OBJFILES value="QueryParserComp.obj McZapkie\_mover.obj EU07.obj dumb3d.obj Camera.obj
|
||||
Texture.obj World.obj Model3d.obj MdlMngr.obj Train.obj wavread.obj
|
||||
Timer.obj Event.obj MemCell.obj Logs.obj Spring.obj Button.obj Globals.obj
|
||||
Gauge.obj AnimModel.obj Ground.obj TrkFoll.obj Segment.obj Sound.obj
|
||||
AdvSound.obj Track.obj DynObj.obj RealSound.obj EvLaunch.obj FadeSound.obj
|
||||
Traction.obj TractionPower.obj parser.obj sky.obj AirCoupler.obj
|
||||
opengl\glew.obj ResourceManager.obj VBO.obj mtable.obj TextureDDS.obj
|
||||
opengl\ARB_Multisample.obj Float3d.obj Classes.obj Driver.obj Names.obj
|
||||
Console.obj Mover.obj McZapkie\hamulce.obj McZapkie\Oerlikon_ESt.obj
|
||||
Console\PoKeys55.obj Forth.obj Console\LPT.obj PyInt.obj"/>
|
||||
<RESFILES value="EU07.res"/>
|
||||
<IDLFILES value=""/>
|
||||
<IDLGENFILES value=""/>
|
||||
|
||||
2
EU07.cpp
2
EU07.cpp
@@ -81,7 +81,7 @@ USEUNIT("Names.cpp");
|
||||
USEUNIT("Console.cpp");
|
||||
USEUNIT("Mover.cpp");
|
||||
USEUNIT("McZapkie\_mover.pas");
|
||||
USEUNIT("McZapkie\hamulce.pas");
|
||||
USEUNIT("McZapkie\hamulce.cpp");
|
||||
USEUNIT("McZapkie\Oerlikon_ESt.cpp");
|
||||
USEUNIT("Console\PoKeys55.cpp");
|
||||
USEUNIT("Forth.cpp");
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
// All rights reserved
|
||||
|
||||
// (DO NOT EDIT: machine generated header) '_mover.pas' rev: 5.00
|
||||
//Ra: eee... tam, sam siê generuje b³êdnie i trzeba rêcznie poprawiaæ!
|
||||
//Ra: eee... tam, sam si<EFBFBD> generuje b<EFBFBD><EFBFBD>dnie i trzeba r<EFBFBD>cznie poprawia<EFBFBD>!
|
||||
|
||||
#ifndef _moverHPP
|
||||
#define _moverHPP
|
||||
@@ -12,7 +12,7 @@
|
||||
#pragma option push -w-
|
||||
#pragma option push -Vx
|
||||
#include <Oerlikon_ESt.h> // Pascal unit
|
||||
#include <hamulce.hpp> // Pascal unit
|
||||
#include <hamulce.h> // Pascal unit
|
||||
#include <SysUtils.hpp> // Pascal unit
|
||||
#include <mctools.hpp> // Pascal unit
|
||||
#include <SysInit.hpp> // Pascal unit
|
||||
|
||||
@@ -22,7 +22,7 @@ double d2A(double d)
|
||||
|
||||
// ------ RURA ------
|
||||
|
||||
double __fastcall TRura::P(void)
|
||||
double TRura::P(void)
|
||||
{
|
||||
return Next->P();
|
||||
}
|
||||
@@ -209,7 +209,7 @@ void TPrzekED::Update(double dt)
|
||||
|
||||
// ------ OERLIKON EST NA BOGATO ------
|
||||
|
||||
double __fastcall TNESt3::GetPF(double PP, double dt, double Vel) // przeplyw miedzy komora wstepna i PG
|
||||
double TNESt3::GetPF(double PP, double dt, double Vel) // przeplyw miedzy komora wstepna i PG
|
||||
{
|
||||
double dV;
|
||||
double dV1;
|
||||
@@ -322,7 +322,7 @@ void TNESt3::EStParams(double i_crc) // parametry charakterystyczne dla ESt
|
||||
{
|
||||
}
|
||||
|
||||
void __fastcall TNESt3::Init(double PP, double HPP, double LPP, double BP, unsigned char BDF)
|
||||
void TNESt3::Init(double PP, double HPP, double LPP, double BP, unsigned char BDF)
|
||||
{
|
||||
ValveRes->CreatePress(1 * PP);
|
||||
BrakeCyl->CreatePress(1 * BP);
|
||||
@@ -347,7 +347,7 @@ void __fastcall TNESt3::Init(double PP, double HPP, double LPP, double BP, unsig
|
||||
RapidStaly = true;
|
||||
}
|
||||
|
||||
double __fastcall TNESt3::GetCRP()
|
||||
double TNESt3::GetCRP()
|
||||
{
|
||||
return CntrlRes->P();
|
||||
// return Przekladniki[1].P;
|
||||
@@ -462,7 +462,7 @@ void TNESt3::PLC(double mass)
|
||||
1);
|
||||
}
|
||||
|
||||
void __fastcall TNESt3::ForceEmptiness()
|
||||
void TNESt3::ForceEmptiness()
|
||||
{
|
||||
ValveRes->CreatePress(0);
|
||||
BrakeRes->CreatePress(0);
|
||||
|
||||
@@ -17,7 +17,7 @@ http://mozilla.org/MPL/2.0/.
|
||||
Copyright (C) 2007-2014 Maciej Cierniak
|
||||
*/
|
||||
|
||||
#include <hamulce.hpp> // Pascal unit
|
||||
#include "hamulce.h" // Pascal unit
|
||||
#include <friction.hpp> // Pascal unit
|
||||
#include <SysUtils.hpp> // Pascal unit
|
||||
#include <mctools.hpp> // Pascal unit
|
||||
@@ -93,7 +93,7 @@ class TRura : public TPrzekladnik // nieprzekladnik, rura laczaca
|
||||
{
|
||||
private:
|
||||
public:
|
||||
virtual __fastcall double P(void) /*override*/;
|
||||
virtual double P(void) /*override*/;
|
||||
virtual void Update(double dt) /*override*/;
|
||||
};
|
||||
|
||||
@@ -190,11 +190,11 @@ class TNESt3 : public TBrake
|
||||
double LBP; // cisnienie hamulca pomocniczego
|
||||
|
||||
public:
|
||||
virtual double __fastcall GetPF(double PP, double dt,
|
||||
virtual double GetPF(double PP, double dt,
|
||||
double Vel) /*override*/; // przeplyw miedzy komora wstepna i PG
|
||||
void EStParams(double i_crc); // parametry charakterystyczne dla ESt
|
||||
virtual void __fastcall Init(double PP, double HPP, double LPP, double BP, unsigned char BDF) /*override*/;
|
||||
virtual double __fastcall GetCRP() /*override*/;
|
||||
virtual void Init(double PP, double HPP, double LPP, double BP, unsigned char BDF) /*override*/;
|
||||
virtual double GetCRP() /*override*/;
|
||||
void CheckState(double BCP, double &dV1); // glowny przyrzad rozrzadczy
|
||||
void CheckReleaser(double dt); // odluzniacz
|
||||
double CVs(double BP); // napelniacz sterujacego
|
||||
@@ -202,7 +202,7 @@ class TNESt3 : public TBrake
|
||||
void SetSize(int size, std::string params); // ustawianie dysz (rozmiaru ZR), przekladniki
|
||||
void PLC(double mass); // wspolczynnik cisnienia przystawki wazacej
|
||||
void SetLP(double TM, double LM, double TBP); // parametry przystawki wazacej
|
||||
virtual void __fastcall ForceEmptiness() /*override*/; // wymuszenie bycia pustym
|
||||
virtual void ForceEmptiness() /*override*/; // wymuszenie bycia pustym
|
||||
void SetLBP(double P); // cisnienie z hamulca pomocniczego
|
||||
};
|
||||
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
#pragma delphiheader begin
|
||||
#pragma option push -w-
|
||||
#pragma option push -Vx
|
||||
#include <hamulce.hpp> // Pascal unit
|
||||
#include <hamulce.h> // Pascal unit
|
||||
#include <friction.hpp> // Pascal unit
|
||||
#include <SysUtils.hpp> // Pascal unit
|
||||
#include <mctools.hpp> // Pascal unit
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
#pragma option push -w-
|
||||
#pragma option push -Vx
|
||||
#include <Oerlikon_ESt.h> // Pascal unit
|
||||
#include <hamulce.hpp> // Pascal unit
|
||||
#include <hamulce.h> // Pascal unit
|
||||
#include <SysUtils.hpp> // Pascal unit
|
||||
#include <mctools.hpp> // Pascal unit
|
||||
#include <SysInit.hpp> // Pascal unit
|
||||
|
||||
@@ -14,7 +14,6 @@ Copyright (C) 2007-2014 Maciej Cierniak
|
||||
|
||||
#include "hamulce.h"
|
||||
#include "../Mover.h"
|
||||
#include <math.h>
|
||||
#include <typeinfo>
|
||||
#include <cmath>
|
||||
|
||||
@@ -46,7 +45,7 @@ double PF(double P1, double P2, double S, double DP = 0.25)
|
||||
double PH = Max0R(P1, P2) + 1; // wyzsze cisnienie absolutne
|
||||
double PL = P1 + P2 - PH + 2; // nizsze cisnienie absolutne
|
||||
double sg = PL * 1.0 / PH; // bezwymiarowy stosunek cisnien
|
||||
double FM = PH * 197 * S * sign(P2 - P1); // najwyzszy mozliwy przeplyw, wraz z kierunkiem
|
||||
double FM = PH * 197 * S * Sign(P2 - P1); // najwyzszy mozliwy przeplyw, wraz z kierunkiem
|
||||
if ((sg > 0.5)) // jesli ponizej stosunku krytycznego
|
||||
if ((PH - PL) < DP) // niewielka roznica cisnien
|
||||
return (1 - sg) * 1.0 / DPL * FM * 2 * sqrt((DP) * (PH - DP));
|
||||
@@ -64,7 +63,7 @@ double PF1(double P1, double P2, double S)
|
||||
double PH = Max0R(P1, P2) + 1; // wyzsze cisnienie absolutne
|
||||
double PL = P1 + P2 - PH + 2; // nizsze cisnienie absolutne
|
||||
double sg = PL * 1.0 / PH; // bezwymiarowy stosunek cisnien
|
||||
double FM = PH * 197 * S * sign(P2 - P1); // najwyzszy mozliwy przeplyw, wraz z kierunkiem
|
||||
double FM = PH * 197 * S * Sign(P2 - P1); // najwyzszy mozliwy przeplyw, wraz z kierunkiem
|
||||
if ((sg > 0.5)) // jesli ponizej stosunku krytycznego
|
||||
if ((sg < DPS)) // niewielka roznica cisnien
|
||||
return (1 - sg) * 1.0 / DPS * FM * 2 * sqrt((DPS) * (1 - DPS));
|
||||
@@ -74,6 +73,11 @@ double PF1(double P1, double P2, double S)
|
||||
return FM;
|
||||
}
|
||||
|
||||
long lround(double value)
|
||||
{
|
||||
return floorl(value + 0.5);
|
||||
}
|
||||
|
||||
double PFVa(double PH, double PL, double S, double LIM,
|
||||
double DP = 0.1) // zawor napelniajacy z PH do PL, PL do LIM
|
||||
{
|
||||
@@ -1841,24 +1845,24 @@ void TKE::CheckState(double BCP, double &dV1)
|
||||
// sprawdzanie stanu
|
||||
if ((BrakeStatus && 1) == 1)
|
||||
if ((VVP + 0.003 + BCP * 1.0 / BVM < CVP))
|
||||
BrakeStatus =
|
||||
(BrakeStatus || 2) // hamowanie stopniowe;else if( ( VVP-0.003+BCP*1.0/BVM>CVP ) )
|
||||
BrakeStatus = (BrakeStatus && 252) // luzowanie;else if( ( VVP+BCP*1.0/BVM>CVP ) )
|
||||
BrakeStatus = (BrakeStatus && 253) // zatrzymanie napelaniania;else
|
||||
BrakeStatus = (BrakeStatus || 2); // hamowanie stopniowe;
|
||||
else if ((VVP - 0.003 + BCP * 1.0 / BVM > CVP))
|
||||
BrakeStatus = (BrakeStatus && 252); // luzowanie;
|
||||
else if ((VVP + BCP * 1.0 / BVM > CVP))
|
||||
BrakeStatus = (BrakeStatus && 253); // zatrzymanie napelaniania;
|
||||
else
|
||||
;
|
||||
else if ((VVP + 0.10 < CVP) && (BCP < 0.1)) // poczatek hamowania
|
||||
{
|
||||
BrakeStatus = (BrakeStatus || 3);
|
||||
ValveRes.CreatePress(0.8 * VVP); // przyspieszacz
|
||||
ValveRes->CreatePress(0.8 * VVP); // przyspieszacz
|
||||
}
|
||||
else if ((VVP + BCP * 1.0 / BVM < CVP) &&
|
||||
((CVP - VVP) * BVM > 0.25)) // zatrzymanie luzowanie
|
||||
else if ((VVP + BCP * 1.0 / BVM < CVP) && ((CVP - VVP) * BVM > 0.25)) // zatrzymanie luzowanie
|
||||
BrakeStatus = (BrakeStatus || 1);
|
||||
}
|
||||
|
||||
double TKE::CVs(double BP)
|
||||
{
|
||||
double result;
|
||||
double VVP;
|
||||
double BVP;
|
||||
double CVP;
|
||||
@@ -1869,17 +1873,15 @@ double TKE::CVs(double BP)
|
||||
|
||||
// przeplyw ZS <-> PG
|
||||
if ((BP > 0.2))
|
||||
CVs = 0;
|
||||
return 0;
|
||||
else if ((VVP > CVP + 0.4))
|
||||
CVs = 0.05;
|
||||
return 0.05;
|
||||
else
|
||||
CVs = 0.23;
|
||||
return result;
|
||||
return 0.23;
|
||||
}
|
||||
|
||||
double TKE::BVs(double BCP)
|
||||
{
|
||||
double result;
|
||||
double VVP;
|
||||
double BVP;
|
||||
double CVP;
|
||||
@@ -1890,12 +1892,11 @@ double TKE::BVs(double BCP)
|
||||
|
||||
// przeplyw ZP <-> rozdzielacz
|
||||
if ((BVP > VVP))
|
||||
BVs = 0;
|
||||
return 0;
|
||||
else if ((BVP < CVP - 0.3))
|
||||
BVs = 0.6;
|
||||
return 0.6;
|
||||
else
|
||||
BVs = 0.13;
|
||||
return result;
|
||||
return 0.13;
|
||||
}
|
||||
|
||||
double TKE::GetPF(double PP, double dt, double Vel)
|
||||
@@ -2077,32 +2078,32 @@ void TKE::SetLBP(double P)
|
||||
|
||||
//---KRANY---
|
||||
|
||||
double HANDLE::GetPF(double i_bcp, double PP, double HP, double dt, double ep)
|
||||
double THandle::GetPF(double i_bcp, double PP, double HP, double dt, double ep)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
void HANDLE::Init(double Press)
|
||||
void THandle::Init(double Press)
|
||||
{
|
||||
Time = false;
|
||||
TimeEP = false;
|
||||
}
|
||||
|
||||
void HANDLE::SetReductor(double nAdj)
|
||||
void THandle::SetReductor(double nAdj)
|
||||
{
|
||||
}
|
||||
|
||||
double HANDLE::GetCP()
|
||||
double THandle::GetCP()
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
double HANDLE::GetSound(Byte i)
|
||||
double THandle::GetSound(Byte i)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
double HANDLE::GetPos(Byte i)
|
||||
double THandle::GetPos(Byte i)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -43,6 +43,9 @@ Knorr/West EP -
|
||||
|
||||
using namespace Friction;
|
||||
|
||||
namespace Hamulce
|
||||
{
|
||||
|
||||
static int const LocalBrakePosNo = 10; /*ilosc nastaw hamulca recznego lub pomocniczego*/
|
||||
static int const MainBrakeMaxPos = 10; /*max. ilosc nastaw hamulca zasadniczego*/
|
||||
|
||||
@@ -129,26 +132,26 @@ using namespace Friction;
|
||||
//zas dlugosc pojazdow jest podana w metrach
|
||||
//a predkosc przeplywu w m/s //3.5
|
||||
//7//1.5
|
||||
// BPT: array[-2..6] of array [0..1] of real= ((0, 5.0), (14, 5.4), (9, 5.0), (6, 4.6), (9, 4.5), (9, 4.0), (9, 3.5), (9, 2.8), (34, 2.8));
|
||||
// BPT: array[-2..6] of array [0..1] of real= ((0, 5.0), (7, 5.0), (2.0, 5.0), (4.5, 4.6), (4.5, 4.2), (4.5, 3.8), (4.5, 3.4), (4.5, 2.8), (8, 2.8));
|
||||
// BPT: array[-2..6] of array [0..1] of real= ((0, 5.0), (14, 5.4), (9, 5.0), (6, 4.6), (9, 4.5), (9, 4.0), (9, 3.5), (9, 2.8), (34, 2.8));
|
||||
// BPT: array[-2..6] of array [0..1] of real= ((0, 5.0), (7, 5.0), (2.0, 5.0), (4.5, 4.6), (4.5, 4.2), (4.5, 3.8), (4.5, 3.4), (4.5, 2.8), (8, 2.8));
|
||||
static double const BPT[ /*?*//*-2..6*/ (6) - (-2) + 1][2] = { (0 , 5.0) , (7 , 5.0) , (2.0 , 5.0) , (4.5 , 4.6) , (4.5 , 4.2) , (4.5 , 3.8) , (4.5 , 3.4) , (4.5 , 2.8) , (8 , 2.8) };
|
||||
static double const BPT_394[ /*?*//*-1..5*/ (5)-(-1)+1 ][2] = { ( 13 , 10.0 ) , ( 5 , 5.0 ) , ( 0 , -1 ) , ( 5 , -1 ) , ( 5 , 0.0 ) , ( 5 , 0.0 ) , ( 18 , 0.0 ) };
|
||||
// BPT: array[-2..6] of array [0..1] of real= ((0, 5.0), (12, 5.4), (9, 5.0), (9, 4.6), (9, 4.2), (9, 3.8), (9, 3.4), (9, 2.8), (34, 2.8));
|
||||
// BPT: array[-2..6] of array [0..1] of real= ((0, 0),(0, 0),(0, 0),(0, 0),(0, 0),(0, 0),(0, 0),(0, 0),(0, 0));
|
||||
static double const BPT_394[ /*?*//*-1..5*/ (5) - (-1) + 1][2] = { (13 , 10.0) , (5 , 5.0) , (0 , -1) , (5 , -1) , (5 , 0.0) , (5 , 0.0) , (18 , 0.0) };
|
||||
// BPT: array[-2..6] of array [0..1] of real= ((0, 5.0), (12, 5.4), (9, 5.0), (9, 4.6), (9, 4.2), (9, 3.8), (9, 3.4), (9, 2.8), (34, 2.8));
|
||||
// BPT: array[-2..6] of array [0..1] of real= ((0, 0),(0, 0),(0, 0),(0, 0),(0, 0),(0, 0),(0, 0),(0, 0),(0, 0));
|
||||
static int const i_bcpno = 6;
|
||||
|
||||
static double const pi = 3.141592653589793;
|
||||
|
||||
//klasa obejmujaca pojedyncze zbiorniki
|
||||
|
||||
|
||||
class TReservoir: public TObject
|
||||
{
|
||||
protected:
|
||||
class TReservoir
|
||||
{
|
||||
protected:
|
||||
double Cap;
|
||||
double Vol;
|
||||
double dVol;
|
||||
|
||||
public:
|
||||
public:
|
||||
TReservoir();
|
||||
void CreateCap(double Capacity);
|
||||
void CreatePress(double Press);
|
||||
@@ -157,28 +160,28 @@ public:
|
||||
void Flow(double dv);
|
||||
void Act();
|
||||
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
typedef TReservoir *PReservoir;
|
||||
|
||||
|
||||
class TBrakeCyl: public TReservoir
|
||||
class TBrakeCyl : public TReservoir
|
||||
|
||||
{
|
||||
public:
|
||||
double pa()/*override*/;
|
||||
double P()/*override*/;
|
||||
{
|
||||
public:
|
||||
virtual double pa()/*override*/;
|
||||
virtual double P()/*override*/;
|
||||
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
//klasa obejmujaca uklad hamulca zespolonego pojazdu
|
||||
|
||||
|
||||
class TBrake: public TObject
|
||||
{
|
||||
protected:
|
||||
class TBrake
|
||||
{
|
||||
protected:
|
||||
TReservoir *BrakeCyl; //silownik
|
||||
TReservoir *BrakeRes; //ZP
|
||||
TReservoir *ValveRes; //komora wstepna
|
||||
@@ -199,7 +202,7 @@ protected:
|
||||
Byte BrakeStatus; //flaga stanu
|
||||
Byte SoundFlag;
|
||||
|
||||
public:
|
||||
public:
|
||||
TBrake(double i_mbp, double i_bcr, double i_bcd, double i_brc,
|
||||
Byte i_bcn, Byte i_BD, Byte i_mat, Byte i_ba, Byte i_nbpa);
|
||||
//maksymalne cisnienie, promien, skok roboczy, pojemnosc ZP;
|
||||
@@ -222,16 +225,16 @@ public:
|
||||
void SetASBP(double Press); //ustalenie cisnienia pp
|
||||
virtual void ForceEmptiness();
|
||||
Byte GetSoundFlag();
|
||||
// procedure
|
||||
// procedure
|
||||
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
|
||||
class TWest: public TBrake
|
||||
class TWest : public TBrake
|
||||
|
||||
{
|
||||
private:
|
||||
{
|
||||
private:
|
||||
double LBP; //cisnienie hamulca pomocniczego
|
||||
double dVP; //pobor powietrza wysokiego cisnienia
|
||||
double EPS; //stan elektropneumatyka
|
||||
@@ -239,7 +242,7 @@ private:
|
||||
double TareBP; //cisnienie dla proznego
|
||||
double LoadC; //wspolczynnik przystawki wazacej
|
||||
|
||||
public:
|
||||
public:
|
||||
void SetLBP(double P); //cisnienie z hamulca pomocniczego
|
||||
double GetPF(double PP, double dt, double Vel)/*override*/; //przeplyw miedzy komora wstepna i PG
|
||||
void Init(double PP, double HPP, double LPP, double BP, Byte BDF)/*override*/;
|
||||
@@ -248,18 +251,21 @@ public:
|
||||
void SetEPS(double nEPS)/*override*/; //stan hamulca EP
|
||||
void SetLP(double TM, double LM, double TBP); //parametry przystawki wazacej
|
||||
|
||||
};
|
||||
inline TWest(double i_mbp, double i_bcr, double i_bcd, double i_brc,
|
||||
Byte i_bcn, Byte i_BD, Byte i_mat, Byte i_ba, Byte i_nbpa) : TBrake(i_mbp, i_bcr, i_bcd, i_brc, i_bcn
|
||||
, i_BD, i_mat, i_ba, i_nbpa) { }
|
||||
};
|
||||
|
||||
|
||||
|
||||
class TESt: public TBrake
|
||||
class TESt : public TBrake
|
||||
|
||||
{
|
||||
protected:
|
||||
{
|
||||
protected:
|
||||
TReservoir *CntrlRes; //zbiornik steruj¹cy
|
||||
double BVM; //przelozenie PG-CH
|
||||
|
||||
public:
|
||||
public:
|
||||
double GetPF(double PP, double dt, double Vel)/*override*/; //przeplyw miedzy komora wstepna i PG
|
||||
void EStParams(double i_crc); //parametry charakterystyczne dla ESt
|
||||
void Init(double PP, double HPP, double LPP, double BP, Byte BDF)/*override*/;
|
||||
@@ -269,70 +275,82 @@ public:
|
||||
double CVs(double BP); //napelniacz sterujacego
|
||||
double BVs(double BCP); //napelniacz pomocniczego
|
||||
|
||||
};
|
||||
inline TESt(double i_mbp, double i_bcr, double i_bcd, double i_brc,
|
||||
Byte i_bcn, Byte i_BD, Byte i_mat, Byte i_ba, Byte i_nbpa) : TBrake(i_mbp, i_bcr, i_bcd, i_brc, i_bcn
|
||||
, i_BD, i_mat, i_ba, i_nbpa) { }
|
||||
};
|
||||
|
||||
|
||||
|
||||
class TESt3: public TESt
|
||||
class TESt3 : public TESt
|
||||
|
||||
{
|
||||
private:
|
||||
{
|
||||
private:
|
||||
double CylFlowSpeed[2][2];
|
||||
|
||||
public:
|
||||
public:
|
||||
double GetPF(double PP, double dt, double Vel)/*override*/; //przeplyw miedzy komora wstepna i PG
|
||||
|
||||
};
|
||||
inline TESt3(double i_mbp, double i_bcr, double i_bcd, double i_brc,
|
||||
Byte i_bcn, Byte i_BD, Byte i_mat, Byte i_ba, Byte i_nbpa) : TESt(i_mbp, i_bcr, i_bcd, i_brc, i_bcn
|
||||
, i_BD, i_mat, i_ba, i_nbpa) { }
|
||||
};
|
||||
|
||||
|
||||
|
||||
class TESt3AL2: public TESt3
|
||||
class TESt3AL2 : public TESt3
|
||||
|
||||
{
|
||||
private:
|
||||
{
|
||||
private:
|
||||
double TareM; double LoadM; //masa proznego i pelnego
|
||||
double TareBP; //cisnienie dla proznego
|
||||
double LoadC;
|
||||
|
||||
public:
|
||||
public:
|
||||
TReservoir *ImplsRes; //komora impulsowa
|
||||
double GetPF(double PP, double dt, double Vel)/*override*/; //przeplyw miedzy komora wstepna i PG
|
||||
void PLC(double mass); //wspolczynnik cisnienia przystawki wazacej
|
||||
void SetLP(double TM, double LM, double TBP); //parametry przystawki wazacej
|
||||
void Init(double PP, double HPP, double LPP, double BP, Byte BDF)/*override*/;
|
||||
|
||||
};
|
||||
inline TESt3AL2(double i_mbp, double i_bcr, double i_bcd, double i_brc
|
||||
, Byte i_bcn, Byte i_BD, Byte i_mat, Byte i_ba, Byte i_nbpa) : TESt3(i_mbp, i_bcr, i_bcd, i_brc, i_bcn
|
||||
, i_BD, i_mat, i_ba, i_nbpa) { }
|
||||
};
|
||||
|
||||
|
||||
|
||||
class TESt4R: public TESt
|
||||
class TESt4R : public TESt
|
||||
|
||||
{
|
||||
private:
|
||||
{
|
||||
private:
|
||||
bool RapidStatus;
|
||||
protected:
|
||||
protected:
|
||||
TReservoir *ImplsRes; //komora impulsowa
|
||||
double RapidTemp; //akrualne, zmienne przelozenie
|
||||
|
||||
public:
|
||||
public:
|
||||
double GetPF(double PP, double dt, double Vel)/*override*/; //przeplyw miedzy komora wstepna i PG
|
||||
void Init(double PP, double HPP, double LPP, double BP, Byte BDF)/*override*/;
|
||||
|
||||
};
|
||||
inline TESt4R(double i_mbp, double i_bcr, double i_bcd, double i_brc
|
||||
, Byte i_bcn, Byte i_BD, Byte i_mat, Byte i_ba, Byte i_nbpa) : TESt(i_mbp, i_bcr, i_bcd, i_brc, i_bcn
|
||||
, i_BD, i_mat, i_ba, i_nbpa) { }
|
||||
};
|
||||
|
||||
|
||||
|
||||
class TLSt: public TESt4R
|
||||
class TLSt : public TESt4R
|
||||
|
||||
{
|
||||
private:
|
||||
{
|
||||
private:
|
||||
double CylFlowSpeed[2][2];
|
||||
protected:
|
||||
protected:
|
||||
double LBP; //cisnienie hamulca pomocniczego
|
||||
double RM; //przelozenie rapida
|
||||
double EDFlag; //luzowanie hamulca z powodu zalaczonego ED
|
||||
|
||||
public:
|
||||
public:
|
||||
void SetLBP(double P); //cisnienie z hamulca pomocniczego
|
||||
void SetRM(double RMR); //ustalenie przelozenia rapida
|
||||
double GetPF(double PP, double dt, double Vel)/*override*/; //przeplyw miedzy komora wstepna i PG
|
||||
@@ -341,14 +359,17 @@ public:
|
||||
virtual double GetEDBCP(); //cisnienie tylko z hamulca zasadniczego, uzywane do hamulca ED w EP09
|
||||
void SetED(double EDstate); //stan hamulca ED do luzowania
|
||||
|
||||
};
|
||||
inline TLSt(double i_mbp, double i_bcr, double i_bcd, double i_brc,
|
||||
Byte i_bcn, Byte i_BD, Byte i_mat, Byte i_ba, Byte i_nbpa) : TESt4R(i_mbp, i_bcr, i_bcd, i_brc, i_bcn
|
||||
, i_BD, i_mat, i_ba, i_nbpa) { }
|
||||
};
|
||||
|
||||
|
||||
|
||||
class TEStED: public TLSt //zawor z EP09 - Est4 z oddzielnym przekladnikiem, kontrola rapidu i takie tam
|
||||
class TEStED : public TLSt //zawor z EP09 - Est4 z oddzielnym przekladnikiem, kontrola rapidu i takie tam
|
||||
|
||||
{
|
||||
private:
|
||||
{
|
||||
private:
|
||||
double Nozzles[11]; //dysze
|
||||
bool Zamykajacy; //pamiec zaworka zamykajacego
|
||||
bool Przys_blok; //blokada przyspieszacza
|
||||
@@ -357,46 +378,52 @@ private:
|
||||
double TareBP; //cisnienie dla proznego
|
||||
double LoadC;
|
||||
|
||||
public:
|
||||
public:
|
||||
void Init(double PP, double HPP, double LPP, double BP, Byte BDF)/*override*/;
|
||||
double GetPF(double PP, double dt, double Vel)/*override*/; //przeplyw miedzy komora wstepna i PG
|
||||
double GetEDBCP()/*override*/; //cisnienie tylko z hamulca zasadniczego, uzywane do hamulca ED
|
||||
void PLC(double mass); //wspolczynnik cisnienia przystawki wazacej
|
||||
void SetLP(double TM, double LM, double TBP); //parametry przystawki wazacej
|
||||
|
||||
};
|
||||
inline TEStED(double i_mbp, double i_bcr, double i_bcd, double i_brc
|
||||
, Byte i_bcn, Byte i_BD, Byte i_mat, Byte i_ba, Byte i_nbpa) : TLSt(i_mbp, i_bcr, i_bcd, i_brc, i_bcn
|
||||
, i_BD, i_mat, i_ba, i_nbpa) { }
|
||||
};
|
||||
|
||||
|
||||
|
||||
class TEStEP2: public TLSt
|
||||
class TEStEP2 : public TLSt
|
||||
|
||||
{
|
||||
private:
|
||||
{
|
||||
private:
|
||||
double TareM; double LoadM; //masa proznego i pelnego
|
||||
double TareBP; //cisnienie dla proznego
|
||||
double LoadC;
|
||||
double EPS;
|
||||
|
||||
public:
|
||||
public:
|
||||
double GetPF(double PP, double dt, double Vel)/*override*/; //przeplyw miedzy komora wstepna i PG
|
||||
void Init(double PP, double HPP, double LPP, double BP, Byte BDF)/*override*/; //inicjalizacja
|
||||
void PLC(double mass); //wspolczynnik cisnienia przystawki wazacej
|
||||
void SetEPS(double nEPS)/*override*/; //stan hamulca EP
|
||||
void SetLP(double TM, double LM, double TBP); //parametry przystawki wazacej
|
||||
|
||||
};
|
||||
inline TEStEP2(double i_mbp, double i_bcr, double i_bcd, double i_brc
|
||||
, Byte i_bcn, Byte i_BD, Byte i_mat, Byte i_ba, Byte i_nbpa) : TLSt(i_mbp, i_bcr, i_bcd, i_brc, i_bcn
|
||||
, i_BD, i_mat, i_ba, i_nbpa) { }
|
||||
};
|
||||
|
||||
|
||||
|
||||
class TCV1: public TBrake
|
||||
class TCV1 : public TBrake
|
||||
|
||||
{
|
||||
private:
|
||||
{
|
||||
private:
|
||||
double BVM; //przelozenie PG-CH
|
||||
protected:
|
||||
protected:
|
||||
TReservoir *CntrlRes; //zbiornik steruj¹cy
|
||||
|
||||
public:
|
||||
public:
|
||||
double GetPF(double PP, double dt, double Vel)/*override*/; //przeplyw miedzy komora wstepna i PG
|
||||
void Init(double PP, double HPP, double LPP, double BP, Byte BDF)/*override*/;
|
||||
double GetCRP()/*override*/;
|
||||
@@ -404,46 +431,55 @@ public:
|
||||
double CVs(double BP);
|
||||
double BVs(double BCP);
|
||||
|
||||
};
|
||||
inline TCV1(double i_mbp, double i_bcr, double i_bcd, double i_brc,
|
||||
Byte i_bcn, Byte i_BD, Byte i_mat, Byte i_ba, Byte i_nbpa) : TBrake(i_mbp, i_bcr, i_bcd, i_brc, i_bcn
|
||||
, i_BD, i_mat, i_ba, i_nbpa) { }
|
||||
};
|
||||
|
||||
|
||||
|
||||
class TCV1R: public TCV1
|
||||
class TCV1R : public TCV1
|
||||
|
||||
{
|
||||
private:
|
||||
{
|
||||
private:
|
||||
TReservoir *ImplsRes; //komora impulsowa
|
||||
bool RapidStatus;
|
||||
|
||||
public:
|
||||
// function GetPF(PP, dt, Vel: real): real; override; //przeplyw miedzy komora wstepna i PG
|
||||
// procedure Init(PP, HPP, LPP, BP: real; BDF: byte); override;
|
||||
public:
|
||||
// function GetPF(PP, dt, Vel: real): real; override; //przeplyw miedzy komora wstepna i PG
|
||||
// procedure Init(PP, HPP, LPP, BP: real; BDF: byte); override;
|
||||
|
||||
};
|
||||
inline TCV1R(double i_mbp, double i_bcr, double i_bcd, double i_brc,
|
||||
Byte i_bcn, Byte i_BD, Byte i_mat, Byte i_ba, Byte i_nbpa) : TCV1(i_mbp, i_bcr, i_bcd, i_brc, i_bcn
|
||||
, i_BD, i_mat, i_ba, i_nbpa) { }
|
||||
};
|
||||
|
||||
|
||||
|
||||
class TCV1L_TR: public TCV1
|
||||
class TCV1L_TR : public TCV1
|
||||
|
||||
{
|
||||
private:
|
||||
{
|
||||
private:
|
||||
TReservoir *ImplsRes; //komora impulsowa
|
||||
double LBP; //cisnienie hamulca pomocniczego
|
||||
|
||||
public:
|
||||
public:
|
||||
double GetPF(double PP, double dt, double Vel)/*override*/; //przeplyw miedzy komora wstepna i PG
|
||||
void Init(double PP, double HPP, double LPP, double BP, Byte BDF)/*override*/;
|
||||
void SetLBP(double P); //cisnienie z hamulca pomocniczego
|
||||
double GetHPFlow(double HP, double dt)/*override*/; //przeplyw - 8 bar
|
||||
|
||||
};
|
||||
inline TCV1L_TR(double i_mbp, double i_bcr, double i_bcd, double i_brc
|
||||
, Byte i_bcn, Byte i_BD, Byte i_mat, Byte i_ba, Byte i_nbpa) : TCV1(i_mbp, i_bcr, i_bcd, i_brc, i_bcn
|
||||
, i_BD, i_mat, i_ba, i_nbpa) { }
|
||||
};
|
||||
|
||||
|
||||
|
||||
class TKE: public TBrake //Knorr Einheitsbauart — jeden do wszystkiego
|
||||
class TKE : public TBrake //Knorr Einheitsbauart — jeden do wszystkiego
|
||||
|
||||
{
|
||||
private:
|
||||
{
|
||||
private:
|
||||
bool RapidStatus;
|
||||
TReservoir *ImplsRes; //komora impulsowa
|
||||
TReservoir *CntrlRes; //zbiornik steruj¹cy
|
||||
@@ -455,7 +491,7 @@ private:
|
||||
double RM; //przelozenie rapida
|
||||
double LBP; //cisnienie hamulca pomocniczego
|
||||
|
||||
public:
|
||||
public:
|
||||
void SetRM(double RMR); //ustalenie przelozenia rapida
|
||||
double GetPF(double PP, double dt, double Vel)/*override*/; //przeplyw miedzy komora wstepna i PG
|
||||
void Init(double PP, double HPP, double LPP, double BP, Byte BDF)/*override*/;
|
||||
@@ -469,7 +505,10 @@ public:
|
||||
void SetLP(double TM, double LM, double TBP); //parametry przystawki wazacej
|
||||
void SetLBP(double P); //cisnienie z hamulca pomocniczego
|
||||
|
||||
};
|
||||
inline TKE(double i_mbp, double i_bcr, double i_bcd, double i_brc, Byte
|
||||
i_bcn, Byte i_BD, Byte i_mat, Byte i_ba, Byte i_nbpa) : TBrake(i_mbp, i_bcr, i_bcd, i_brc, i_bcn,
|
||||
i_BD, i_mat, i_ba, i_nbpa) { }
|
||||
};
|
||||
|
||||
|
||||
|
||||
@@ -478,12 +517,12 @@ public:
|
||||
//klasa obejmujaca krany
|
||||
|
||||
|
||||
class HANDLE: public TObject
|
||||
{
|
||||
private:
|
||||
// BCP: integer;
|
||||
class THandle
|
||||
{
|
||||
private:
|
||||
// BCP: integer;
|
||||
|
||||
public:
|
||||
public:
|
||||
bool Time;
|
||||
bool TimeEP;
|
||||
double Sounds[5]; //wielkosci przeplywow dla dzwiekow
|
||||
@@ -494,28 +533,30 @@ public:
|
||||
virtual double GetSound(Byte i);
|
||||
virtual double GetPos(Byte i);
|
||||
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
|
||||
class TFV4a: public HANDLE
|
||||
class TFV4a : public THandle
|
||||
|
||||
{
|
||||
private:
|
||||
{
|
||||
private:
|
||||
double CP; double TP; double RP; //zbiornik steruj¹cy, czasowy, redukcyjny
|
||||
|
||||
public:
|
||||
public:
|
||||
double GetPF(double i_bcp, double PP, double HP, double dt, double ep)/*override*/;
|
||||
void Init(double Press)/*override*/;
|
||||
|
||||
};
|
||||
inline TFV4a(void) : THandle() { }
|
||||
|
||||
};
|
||||
|
||||
|
||||
|
||||
class TFV4aM: public HANDLE
|
||||
class TFV4aM : public THandle
|
||||
|
||||
{
|
||||
private:
|
||||
{
|
||||
private:
|
||||
double CP; double TP; double RP; //zbiornik steruj¹cy, czasowy, redukcyjny
|
||||
double XP; //komora powietrzna w reduktorze — jest potrzebna do odwzorowania fali
|
||||
double RedAdj; //dostosowanie reduktora cisnienia (krecenie kapturkiem)
|
||||
@@ -523,28 +564,29 @@ private:
|
||||
bool Fala;
|
||||
double LPP_RP(double pos);
|
||||
bool EQ(double pos, double i_pos);
|
||||
public:
|
||||
public:
|
||||
double GetPF(double i_bcp, double PP, double HP, double dt, double ep)/*override*/;
|
||||
void Init(double Press)/*override*/;
|
||||
void SetReductor(double nAdj)/*override*/;
|
||||
double GetSound(Byte i)/*override*/;
|
||||
double GetPos(Byte i)/*override*/;
|
||||
|
||||
};
|
||||
inline TFV4aM(void) : THandle() { }
|
||||
};
|
||||
|
||||
|
||||
|
||||
class TMHZ_EN57: public HANDLE
|
||||
class TMHZ_EN57 : public THandle
|
||||
|
||||
{
|
||||
private:
|
||||
{
|
||||
private:
|
||||
double CP; double TP; double RP; //zbiornik steruj¹cy, czasowy, redukcyjny
|
||||
double RedAdj; //dostosowanie reduktora cisnienia (krecenie kapturkiem)
|
||||
bool Fala;
|
||||
double LPP_RP(double pos);
|
||||
bool EQ(double pos, double i_pos);
|
||||
|
||||
public:
|
||||
public:
|
||||
double GetPF(double i_bcp, double PP, double HP, double dt, double ep)/*override*/;
|
||||
void Init(double Press)/*override*/;
|
||||
void SetReductor(double nAdj)/*override*/;
|
||||
@@ -553,16 +595,17 @@ public:
|
||||
double GetCP()/*override*/;
|
||||
double GetEP(double pos);
|
||||
|
||||
};
|
||||
inline TMHZ_EN57(void) : THandle() { }
|
||||
};
|
||||
|
||||
|
||||
|
||||
/* FBS2= class(THandle)
|
||||
/* FBS2= class(TTHandle)
|
||||
private
|
||||
CP, TP, RP: real; //zbiornik steruj¹cy, czasowy, redukcyjny
|
||||
XP: real; //komora powietrzna w reduktorze — jest potrzebna do odwzorowania fali
|
||||
RedAdj: real; //dostosowanie reduktora cisnienia (krecenie kapturkiem)
|
||||
// Sounds: array[0..4] of real; //wielkosci przeplywow dla dzwiekow
|
||||
// Sounds: array[0..4] of real; //wielkosci przeplywow dla dzwiekow
|
||||
Fala: boolean;
|
||||
public
|
||||
function GetPF(i_bcp:real; pp, hp, dt, ep: real): real; override;
|
||||
@@ -572,12 +615,12 @@ public:
|
||||
function GetPos(i: byte): real; override;
|
||||
end; */
|
||||
|
||||
/* TD2= class(THandle)
|
||||
/* TD2= class(TTHandle)
|
||||
private
|
||||
CP, TP, RP: real; //zbiornik steruj¹cy, czasowy, redukcyjny
|
||||
XP: real; //komora powietrzna w reduktorze — jest potrzebna do odwzorowania fali
|
||||
RedAdj: real; //dostosowanie reduktora cisnienia (krecenie kapturkiem)
|
||||
// Sounds: array[0..4] of real; //wielkosci przeplywow dla dzwiekow
|
||||
// Sounds: array[0..4] of real; //wielkosci przeplywow dla dzwiekow
|
||||
Fala: boolean;
|
||||
public
|
||||
function GetPF(i_bcp:real; pp, hp, dt, ep: real): real; override;
|
||||
@@ -588,132 +631,142 @@ public:
|
||||
end;*/
|
||||
|
||||
|
||||
class TM394: public HANDLE
|
||||
class TM394 : public THandle
|
||||
|
||||
{
|
||||
private:
|
||||
{
|
||||
private:
|
||||
double CP; //zbiornik steruj¹cy, czasowy, redukcyjny
|
||||
double RedAdj; //dostosowanie reduktora cisnienia (krecenie kapturkiem)
|
||||
|
||||
public:
|
||||
public:
|
||||
double GetPF(double i_bcp, double PP, double HP, double dt, double ep)/*override*/;
|
||||
void Init(double Press)/*override*/;
|
||||
void SetReductor(double nAdj)/*override*/;
|
||||
double GetCP()/*override*/;
|
||||
double GetPos(Byte i)/*override*/;
|
||||
|
||||
};
|
||||
inline TM394(void) : THandle() { }
|
||||
};
|
||||
|
||||
|
||||
|
||||
class TH14K1: public HANDLE
|
||||
class TH14K1 : public THandle
|
||||
|
||||
{
|
||||
protected:
|
||||
{
|
||||
protected:
|
||||
double CP; //zbiornik steruj¹cy, czasowy, redukcyjny
|
||||
double RedAdj; //dostosowanie reduktora cisnienia (krecenie kapturkiem)
|
||||
|
||||
public:
|
||||
public:
|
||||
double GetPF(double i_bcp, double PP, double HP, double dt, double ep)/*override*/;
|
||||
void Init(double Press)/*override*/;
|
||||
void SetReductor(double nAdj)/*override*/;
|
||||
double GetCP()/*override*/;
|
||||
double GetPos(Byte i)/*override*/;
|
||||
|
||||
};
|
||||
inline TH14K1(void) : THandle() { }
|
||||
};
|
||||
|
||||
|
||||
|
||||
class TSt113: public TH14K1
|
||||
class TSt113 : public TH14K1
|
||||
|
||||
{
|
||||
private:
|
||||
{
|
||||
private:
|
||||
double EPS;
|
||||
|
||||
public:
|
||||
public:
|
||||
double GetPF(double i_bcp, double PP, double HP, double dt, double ep)/*override*/;
|
||||
double GetCP()/*override*/;
|
||||
double GetPos(Byte i)/*override*/;
|
||||
void Init(double Press)/*override*/;
|
||||
|
||||
};
|
||||
inline TSt113(void) : TH14K1() { }
|
||||
};
|
||||
|
||||
|
||||
|
||||
class Ttest: public HANDLE
|
||||
class Ttest : public THandle
|
||||
|
||||
{
|
||||
private:
|
||||
{
|
||||
private:
|
||||
double CP;
|
||||
|
||||
public:
|
||||
public:
|
||||
double GetPF(double i_bcp, double PP, double HP, double dt, double ep)/*override*/;
|
||||
void Init(double Press)/*override*/;
|
||||
|
||||
};
|
||||
inline Ttest(void) : THandle() { }
|
||||
};
|
||||
|
||||
|
||||
|
||||
class TFD1: public HANDLE
|
||||
class TFD1 : public THandle
|
||||
|
||||
{
|
||||
private:
|
||||
{
|
||||
private:
|
||||
double MaxBP; //najwyzsze cisnienie
|
||||
double BP; //aktualne cisnienie
|
||||
|
||||
public:
|
||||
public:
|
||||
double Speed; //szybkosc dzialania
|
||||
double GetPF(double i_bcp, double PP, double HP, double dt, double ep)/*override*/;
|
||||
void Init(double Press)/*override*/;
|
||||
double GetCP()/*override*/;
|
||||
void SetSpeed(double nSpeed);
|
||||
// procedure Init(press: real; MaxBP: real); overload;
|
||||
// procedure Init(press: real; MaxBP: real); overload;
|
||||
|
||||
};
|
||||
inline TFD1(void) : THandle() { }
|
||||
};
|
||||
|
||||
|
||||
|
||||
class TH1405: public HANDLE
|
||||
class TH1405 : public THandle
|
||||
|
||||
{
|
||||
private:
|
||||
{
|
||||
private:
|
||||
double MaxBP; //najwyzsze cisnienie
|
||||
double BP; //aktualne cisnienie
|
||||
|
||||
public:
|
||||
public:
|
||||
double GetPF(double i_bcp, double PP, double HP, double dt, double ep)/*override*/;
|
||||
void Init(double Press)/*override*/;
|
||||
double GetCP()/*override*/;
|
||||
// procedure Init(press: real; MaxBP: real); overload;
|
||||
// procedure Init(press: real; MaxBP: real); overload;
|
||||
|
||||
};
|
||||
inline TH1405(void) : THandle() { }
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
class TFVel6: public HANDLE
|
||||
class TFVel6 : public THandle
|
||||
|
||||
{
|
||||
private:
|
||||
{
|
||||
private:
|
||||
double EPS;
|
||||
|
||||
public:
|
||||
public:
|
||||
double GetPF(double i_bcp, double PP, double HP, double dt, double ep)/*override*/;
|
||||
double GetCP()/*override*/;
|
||||
double GetPos(Byte i)/*override*/;
|
||||
double GetSound(Byte i)/*override*/;
|
||||
void Init(double Press)/*override*/;
|
||||
|
||||
};
|
||||
inline TFVel6(void) : THandle() { }
|
||||
};
|
||||
|
||||
|
||||
extern double PF(double P1, double P2, double S, double DP = 0.25);
|
||||
extern double PF1(double P1, double P2, double S);
|
||||
|
||||
extern double PFVa(double PH, double PL, double S, double LIM, double DP = 0.1); //zawor napelniajacy z PH do PL, PL do LIM
|
||||
extern double PFVd(double PH, double PL, double S, double LIM, double DP = 0.1); //zawor wypuszczajacy z PH do PL, PH do LIM
|
||||
|
||||
extern double PF(double P1, double P2, double S, double DP = 0.25);
|
||||
extern double PF1(double P1, double P2, double S);
|
||||
|
||||
extern double PFVa(double PH, double PL, double S, double LIM, double DP = 0.1); //zawor napelniajacy z PH do PL, PL do LIM
|
||||
extern double PFVd(double PH, double PL, double S, double LIM, double DP = 0.1); //zawor wypuszczajacy z PH do PL, PH do LIM
|
||||
|
||||
extern long lround(double value); //zastepuje funkcje nieobecna w C++99
|
||||
}
|
||||
#if !defined(NO_IMPLICIT_NAMESPACE_USE)
|
||||
using namespace Hamulce;
|
||||
#endif
|
||||
#endif//INCLUDED_HAMULCE_H
|
||||
//END
|
||||
|
||||
@@ -22,6 +22,8 @@ http://mozilla.org/MPL/2.0/.
|
||||
#include "Timer.h"
|
||||
#include "Driver.h"
|
||||
#include "Console.h"
|
||||
#include "McZapkie\hamulce.h"
|
||||
#include <typeinfo>
|
||||
//---------------------------------------------------------------------------
|
||||
|
||||
#pragma package(smart_init)
|
||||
@@ -321,7 +323,7 @@ PyObject *TTrain::GetTrainState()
|
||||
bool bEP, bPN;
|
||||
bEP = (mvControlled->LocHandle->GetCP()>0.2) || (fEIMParams[0][2]>0.01);
|
||||
PyDict_SetItemString(dict, "dir_brake", PyGetBool(bEP));
|
||||
if (mvControlled->Hamulec->ClassNameIs("TLSt") || mvControlled->Hamulec->ClassNameIs("TEStED"))
|
||||
if (typeid(mvControlled->Hamulec) == typeid(TLSt) || typeid(mvControlled->Hamulec) == typeid(TEStED))
|
||||
{
|
||||
TBrake* temp_ham = mvControlled->Hamulec;
|
||||
// TLSt* temp_ham2 = temp_ham;
|
||||
|
||||
Reference in New Issue
Block a user