-// Copyright (C) 2009 - 2011 Mathias Froehlich - Mathias.Froehlich@web.de
+// Copyright (C) 2009 - 2012 Mathias Froehlich - Mathias.Froehlich@web.de
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
#include <string>
#include "simgear/structure/SGWeakReferenced.hxx"
+#include "RTIInteractionClass.hxx"
#include "RTIObjectClass.hxx"
#include "RTIObjectInstance.hxx"
virtual bool timeAdvanceRequest(const SGTimeStamp& fedTime) = 0;
virtual bool timeAdvanceRequestAvailable(const SGTimeStamp& timeStamp) = 0;
+ virtual bool flushQueueRequest(const SGTimeStamp& timeStamp) = 0;
virtual bool getTimeAdvancePending() = 0;
virtual bool queryFederateTime(SGTimeStamp& timeStamp) = 0;
virtual bool queryGALT(SGTimeStamp& timeStamp) = 0;
virtual bool queryLITS(SGTimeStamp& timeStamp) = 0;
+ enum ProcessMessageResult {
+ ProcessMessagePending,
+ ProcessMessageLast,
+ ProcessMessageFatal
+ };
+
/// Process messages
- virtual bool processMessage() = 0;
- virtual bool processMessages(const double& minimum, const double& maximum) = 0;
+ virtual ProcessMessageResult processMessage() = 0;
+ virtual ProcessMessageResult processMessages(const double& minimum, const double& maximum) = 0;
virtual RTIObjectClass* createObjectClass(const std::string& name, HLAObjectClass* hlaObjectClass) = 0;
- // virtual RTIInteractionClass* createInteractionClass(const std::string& name) = 0;
+ virtual RTIInteractionClass* createInteractionClass(const std::string& name, HLAInteractionClass* interactionClass) = 0;
virtual RTIObjectInstance* getObjectInstance(const std::string& name) = 0;