I have added two functions for you, to manipulate the SSME data in a safe and transparent way:
With this, you can now change the engine parameters. You will not be able to directly access the ET, this will be done internally. For the future, the ET propellant resource will not get deleted after ET separation. Instead, we can use it for also representing the mass of the propellant stored inside the lines in the aft compartment - which will be important during the MPS dumps.Code:class SubsystemDirector { public: /** * @param usMPSNo numerical ID of the SSME * @param fThrust0 Vacuum thrust * @param fISP0 Vacuum ISP * @param fISP1 Sealevel ISP * @return false for failure, true for success */ bool SetSSMEParams(unsigned short usMPSNo, double fThrust0, double fISP0, double fISP1); /** * @param usMPSNo numerical ID of the SSME * @param dir direction vector of the SSME force vector * @return false for failure, true for success */ bool SetSSMEDir(unsigned short usMPSNo, const VECTOR3& dir); };
For the implementation of the ET and the propellant management system, just tell me how it would be best for you to get the data of the ET.
So, I call SetSSMEParams from the constructor, forget about the funct Realize and all engine creation activities, and SetSSMEDir is for use in the ATVC, correct??
I haven't really made a lot of thinking about the ET and PMS... for a simple MPS dump (no He use in the first version...) I would need the ET handle (both on MPS and SSME classes) and when the dump is comanded the vlvs open and I would decrement the prop.... is the vent propulsive? If it is, then I could create a little weak thruster (on the engines and LH2 dump port) with exhust and it would make it both simpler and pretty!:speakcool:
