Kerbal Space Program  1.12.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Events Macros
Public Types | Public Member Functions | Public Attributes | Properties | List of all members
TransferDataBase Class Referenceabstract

This class is the base data class for a Maneuver Transfer. More...

Inheritance diagram for TransferDataBase:
KSP.UI.AppUI_Data IConfigNode TransferDataSimple

Public Types

enum  ManeuverCalculationState { ManeuverCalculationState.waiting, ManeuverCalculationState.calculating, ManeuverCalculationState.failed, ManeuverCalculationState.complete }
 The state that a TransferData instance can be in. More...
 

Public Member Functions

abstract string GetAlarmDescription ()
 Gets the text to use for description for an alarm created by the manuever tool More...
 
abstract string GetAlarmTitle ()
 Gets the text to use for title for an alarm created by the manuever tool More...
 
abstract bool IsAnyDropdownOpen (AppUIInputPanel panel)
 This should return true or false if any dropdown is open in the UI. More...
 
 TransferDataBase (Callback dataChangedCallback, Callback< ManeuverCalculationState, int > calculationStateChangedCallback)
 
- Public Member Functions inherited from KSP.UI.AppUI_Data
void Load (ConfigNode node)
 
virtual void OnLoad (ConfigNode node)
 IConfigNode hook for the Load routine More...
 
virtual void OnSave (ConfigNode node)
 
void Save (ConfigNode node)
 
virtual void UIInputPanelDataChanged ()
 Called when the input fields are set and can be overridden directly in the data class to catch these there More...
 
virtual void UIInputPanelUpdate ()
 Method called by the AppUIInputPanel in Update when the class is shown in a panel More...
 

Public Attributes

int calculationPercentage = 0
 This is used to store the current calculation percentage when calculations are running for a transfer type. It will be reflected into the Maneuver planner UI automatically when the CalculationState is changed and so should be set before changing CalculationState. More...
 
Callback
< ManeuverCalculationState,
int > 
calculationStateChangedCallback
 This callback will be called whenever the CalculationState value is changed. ManeuverCalculationState is the new state value and int is the percentage complete. More...
 
ManeuverNode currentPositionNode
 Will be set to the Maneuver Node that is set in the position dropdown. If the dropdown is set to current orbit then this will be null. More...
 
Callback dataChangedCallback
 This callback should be called by any transfer type whenever any of the data items are changed in the data class. More...
 
int positionNodeIdx
 This will be the starting position dropdown value for the transfer. IF it's from the current orbit this value will be 0. IF it's a subsequence maneuver node it will be the maneuver nodes index. More...
 
double startBurnTime
 The time to start the Transfer Burn. More...
 
Orbit startingOrbit
 This is the starting Orbit/Patch for our transfer. More...
 
double startUT
 This is the start UT that the Maths should use. It will be set to 0 if the position dropdown is set to Current Orbit. Otherwise it will be set to the Position dropdowns currently selected maneuver nodes UT. More...
 
Vessel vessel
 The vessel the Transfer is for. More...
 

Properties

ManeuverCalculationState CalculationState [get, set]
 The state of the TransferData calculations. When updating this value the Maneuver Tool UI will automatically be notified to update the UI. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from KSP.UI.AppUI_Data
static List< T > CreateAppUIDataList< T > (ConfigNode[] nodes)
 
static T CreateInstanceOfAppUIData< T > (ConfigNode node)
 Creates a new part module adjuster, then loads the node information into it. More...
 
static T CreateInstanceOfAppUIData< T > (string className)
 Creates a new part module adjuster. More...
 
- Protected Attributes inherited from KSP.UI.AppUI_Data
Callback onDataChanged
 

Detailed Description

This class is the base data class for a Maneuver Transfer.

Member Enumeration Documentation

The state that a TransferData instance can be in.

Enumerator
waiting 
calculating 
failed 
complete 

Constructor & Destructor Documentation

TransferDataBase.TransferDataBase ( Callback  dataChangedCallback,
Callback< ManeuverCalculationState, int >  calculationStateChangedCallback 
)
inline

Member Function Documentation

abstract string TransferDataBase.GetAlarmDescription ( )
pure virtual

Gets the text to use for description for an alarm created by the manuever tool

Implemented in TransferDataSimple.

abstract string TransferDataBase.GetAlarmTitle ( )
pure virtual

Gets the text to use for title for an alarm created by the manuever tool

Returns

Implemented in TransferDataSimple.

abstract bool TransferDataBase.IsAnyDropdownOpen ( AppUIInputPanel  panel)
pure virtual

This should return true or false if any dropdown is open in the UI.

Returns

Implemented in TransferDataSimple.

Member Data Documentation

int TransferDataBase.calculationPercentage = 0

This is used to store the current calculation percentage when calculations are running for a transfer type. It will be reflected into the Maneuver planner UI automatically when the CalculationState is changed and so should be set before changing CalculationState.

Callback<ManeuverCalculationState, int> TransferDataBase.calculationStateChangedCallback

This callback will be called whenever the CalculationState value is changed. ManeuverCalculationState is the new state value and int is the percentage complete.

ManeuverNode TransferDataBase.currentPositionNode

Will be set to the Maneuver Node that is set in the position dropdown. If the dropdown is set to current orbit then this will be null.

Callback TransferDataBase.dataChangedCallback

This callback should be called by any transfer type whenever any of the data items are changed in the data class.

int TransferDataBase.positionNodeIdx

This will be the starting position dropdown value for the transfer. IF it's from the current orbit this value will be 0. IF it's a subsequence maneuver node it will be the maneuver nodes index.

double TransferDataBase.startBurnTime

The time to start the Transfer Burn.

Orbit TransferDataBase.startingOrbit

This is the starting Orbit/Patch for our transfer.

double TransferDataBase.startUT

This is the start UT that the Maths should use. It will be set to 0 if the position dropdown is set to Current Orbit. Otherwise it will be set to the Position dropdowns currently selected maneuver nodes UT.

Vessel TransferDataBase.vessel

The vessel the Transfer is for.

Property Documentation

ManeuverCalculationState TransferDataBase.CalculationState
getset

The state of the TransferData calculations. When updating this value the Maneuver Tool UI will automatically be notified to update the UI.


The documentation for this class was generated from the following file: