IMS2
Pre-Alpha
An Orbiter add-on to allow on-runtime construction of spacecraft from predefined modules
|
Abstract base class for objects capable of moving around between modules, such as storables and crew. More...
Public Member Functions | |
IMS_Movable (IMS_Location *location, bool fixed=false) | |
virtual double | GetMass () |
virtual void | PreStep (IMS_Location *location)=0 |
void | Move (IMS_Location *from, IMS_Location *to) |
Public Member Functions inherited from EventHandler | |
void | ConnectToMyEventGenerator (EventSink *sink, EVENTPIPE pipe) |
connects an EventSink to the EventGenerator of this in the appropriate pipe. More... | |
void | ConnectToMyEventSink (EventSink *sink, EVENTPIPE pipe) |
Connects an EventSink on this to the passed event sink. More... | |
void | ConnectMySinkToYourNode (EventNode *node, EVENTPIPE pipe) |
Connects an EventSink on this to the passed EventNode, no matter whether generator or another sink. More... | |
EVENTHANDLERTYPE | GetEventHandlerType () |
Returns the EVENTHANDLERTYPE of this event handler. | |
UINT | GetUID () |
Returns the globaly unique identifier of this event handler. | |
Protected Member Functions | |
void | removeFrom (IMS_Location *location) |
takes all necessary steps to remove a movable from a module More... | |
void | addTo (IMS_Location *location) |
takes all necessary steps to add a movable to a module More... | |
Protected Member Functions inherited from EventHandler | |
EventGenerator * | createEventGenerator (EVENTPIPE pipe) |
Creates a new EventGenerator for this handler instance. More... | |
EventSink * | createEventSink (EVENTPIPE pipe) |
creates a new EventSink in this handler instance More... | |
void | disconnect (EventHandler *handler, bool bidirectional=true) |
Completely severs connections to and from the passed EventHandler, all sinks, all generators. More... | |
void | sendEvents () |
Tells all event generators in this event handler to advance their event cue. More... | |
void | processWaitingQueue () |
processes all events in the waiting queue. More... | |
void | addEvent (Event_Base *_event, EVENTPIPE _pipe=DEFAULT_PIPE) |
Adds an event to the eventcue of an eventpipe. More... | |
void | addEventToWaitingQueue (Event_Base *_event) |
Adds an event to this handlers waiting queue. More... | |
void | relayEvent (Event_Base *_event, EVENTPIPE _pipe) |
Relays an event to another event pipe. More... | |
EventSink * | getEventSink (EVENTPIPE pipe) |
returns the EventSink on this EventHandler that belongs to the passed event pipe More... | |
EventGenerator * | getEventGenerator (EVENTPIPE pipe) |
Returns the EventGenerator on this EventHandler that belongs to the passed event pipe. More... | |
virtual bool | ProcessEvent (Event_Base *e)=0 |
Receives all events coming through this EventHandler. More... | |
Protected Attributes | |
bool | fixedpos = false |
double | mass |
Protected Attributes inherited from EventHandler | |
EVENTPIPE | defaultpipe = DEFAULT_PIPE |
Use this to set the defualt event pipe of this event handler. | |
EVENTHANDLERTYPE | eventhandlertype |
An identifier that offers a group identification. | |
Friends | |
class | IMS_Location |
Abstract base class for objects capable of moving around between modules, such as storables and crew.
IMS_Movable::IMS_Movable | ( | IMS_Location * | location, |
bool | fixed = false |
||
) |
location | The module instance the movable is initially a part of |
fixed | Whether the movable can be moved from module to module |
|
protected |
takes all necessary steps to add a movable to a module
module | The module instance to which to add the movable |
|
protected |
takes all necessary steps to remove a movable from a module
module | The module instance to remove the movable from |