Much of the project has become a conglomerated mess. I tried to implement too many features at once, and it became awful spaghetti code that did a lot of little things and didn't accomplish the main goal.
There are several unnecessary features, especially with the air system, that can be removed to decrease maintenance headache. These include:
In the most recent commit for these efforts, I made the following changes to the temporary template file. I will implement the minor code changes in the physics engine for these changes later this evening.
Moved .prototype.realtime.air.compressor.calc() to .prototype.air.compressor.calcFlow()
Moved .prototype.realtime.air.reservoir.main into prototype.air.reservoir.main
Removed .prototype.realtime.air.reservoir.main.dump because I am removing that feature
Removed lineLength from brake object since it is redundant
Changed .prototype.air.compressor.flowrate to .prototype.air.compressor.flowrateCoeff to better describe it
Removed .prototype.realtime.fuel and added .prototype.fuel.status to make up for it
Removed .prototype.realtime.grade since it's not implemented and isn't feasible to implement without RAILCOM hardware
Changed .prototype.coefficientOf to .prototype.coeff for simplicity
Much of the project has become a conglomerated mess. I tried to implement too many features at once, and it became awful spaghetti code that did a lot of little things and didn't accomplish the main goal.
There are several unnecessary features, especially with the air system, that can be removed to decrease maintenance headache. These include:
air
portion of therealtime
object [DONE]prototype
toproto
to prevent obnoxiously long variable names [LONG TERM]coefficientOf
tocoeff
for succinctness [DONE]lineLength
variable from the brakes since we can just specify propagation time instead inlatency
[DONE]