VR-Forces 4.8 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Protected Member Functions
DtGuiOnlyDe Class Reference

The combination of this DE and the entity editor application will only perform the functions of creating the main window and allowing this main window to have a menu, dockable widgets and pages associated with it. More...

Inheritance diagram for DtGuiOnlyDe:
Inheritance graph
[legend]

Public Member Functions

 DtGuiOnlyDe ()
 CTOR. More...
 
virtual ~DtGuiOnlyDe ()
 DTOR. More...
 
- Public Member Functions inherited from makVrv::DtDe
 DtDe ()
 CTOR. More...
 
virtual ~DtDe ()
 DTOR occur after the subclass of DtDe has been called. More...
 
bool destructing ()
 Get if the Display Engine is in the process of destructing (typically steps like disconnecting signals is unnecessary). More...
 
bool resetting ()
 During a reset, order of destruction of agent-based or singleton objects is not guaranteed. More...
 
virtual void setPathConfiguration (const DtDePathConfiguration &pathConfig)
 Set the path configuration for an uninitialized Display Engine. More...
 
bool initialized () const
 Get whether the application is initialized. More...
 
DtThreadId threadId ()
 Get the thread id that the Display Engine was initialized in and must rung in. More...
 
virtual void setDeConfiguration (const DtDeConfiguration &deConfig)
 Set the de configuration. More...
 
void retick ()
 Retick is a helper function for simply ticking using the current Simulation time. More...
 
virtual bool timeToStop () const
 Method for checking to see if the app should stop ticking. More...
 
virtual void setTimeToStop (bool flag=true)
 Set whether it is time to stop ticking. More...
 
virtual void quit ()
 Call this method to quit and exit the application. More...
 
virtual void reset ()
 Resets DtIG to a pre-configured state. More...
 
virtual void updateScene ()
 Update the scene if it needs to be updated. More...
 
void registerInitFunction (void *address)
 Register address of init function so DtDe instance knows that module was already instanced. More...
 
bool isInitFunctionRegistered (void *address)
 Returns true if init function has already been registered. More...
 
bool shouldSendMesssage ()
 Helper function used to check if a message needs to be created and sent. More...
 
virtual void setTargetFrameTime (double frameTimeInMs)
 used to control running the ICO and main thread system at the end of the frame, defaults to .016 More...
 
virtual double targetFrameTime ()
 how long each frame should take, VRV will use extra time at the end of rendering to stream more data down to the gpu More...
 
virtual void runSwapBufferWork ()
 runs tasks that have been added via DtOsgRenderer::addParallelThreadSwapBufferJob called by DtOsgAdapterQtWidget, currently used for merging speed trees More...
 
virtual void startProfilerNextFrame ()
 starts the profiler next frame, only safe for IMGui to call More...
 
virtual void stopProfilerNextFrame ()
 stops the profiler next frame, only safe for IMGui to call More...
 
virtual double lastUpdateTime () const
 last update time for profiling More...
 
virtual const DtDeConfigurationdeConfiguration () const
 DtDeConfiguration accessor. More...
 
virtual DtDeCommunicatorigCommunicator ()
 DtDeCommunicator accessor. More...
 
DtMainEventQueuemainEventQueue ()
 DtMainEventQueue. More...
 
virtual DtDisplaydisplay ()
 DtDisplay accessor. More...
 
virtual DtScenescene ()
 The DtScene accessor. More...
 
virtual DtDataBankdataBank ()
 The DtDataBank accessor. More...
 
virtual DtDriverManagerdriverManager ()
 The DtMasterScene accessor. More...
 
bool driverManagerCreated () const
 You can call this method to see if the DtDriverManager exists. More...
 
virtual DtMessageDispatcherdispatcher ()
 DtMessageDispatcher accessor. More...
 
DtDebugLoglog ()
 Inline access for the debug log object. More...
 
DtAgentManageragentManager ()
 Get the scene manager. More...
 
DtBackgroundLoaderbackgroundLoader ()
 Get the background loader. More...
 
virtual double simulationTime () const
 Get the simulation time. More...
 
virtual double syncedTime () const
 Get the simulation time or the synced NTP time (if the –hasNTPSync / -O flag has been set) Currently this method is used to synchronize triton ocean and speedtree. More...
 
virtual DtSynchronizedTimeManagerfindSynchronizedTimeManager ()
 The DtSynchronizedTimeManager manages synchronized time when used. More...
 
virtual int displayCount () const
 Get the display count. More...
 
virtual const DtDeInitializerdeInitializer () const
 Return the DtDeInitializer. More...
 
virtual const
DtDePathConfiguration
dePathConfiguration () const
 Return the DtDePathConfiguration. More...
 
virtual bool isInMasterMode () const
 Returns true if the DtDe is in master mode. More...
 
virtual bool isInSlaveMode () const
 Returns true if the DtDe is in slave mode. More...
 
virtual DtDeSharedStatesharedState ()
 Returns the DtDeSharedState object. More...
 
virtual const DtDeSharedStatesharedState () const
 
virtual const DtSchemaManagerfindSchemaManager () const
 DtSchemaManager accessor. More...
 
virtual DtSchemaManagerfindSchemaManager ()
 
virtual DtFileCachefileCache ()
 Returns DtFileCache. More...
 
virtual const DeErrors deErrors () const
 Returns myIgErrors. More...
 
virtual void clearDeErrors ()
 Clears myIgErrors. More...
 
virtual DtRendererrenderer () const
 Get the renderer. More...
 
bool renderFrameThisTick () const
 Gets if we will render this frame. More...
 
virtual bool licenseAvailable () const
 Gets if a license can be found to run with the features specified in the DtDeInitializer. More...
 
virtual bool addDisplayConfiguration (const DtDisplayConfiguration &)
 Add a new display, if the display engine matches the local name then the de display engine is realized. More...
 
virtual void realizeDisplayConfiguration (const std::string &clientName, const std::string &displayName)
 Make a client realize a display configuration. More...
 
virtual void destroyDisplay (DtDisplayProxySP display)
 Remove a display. More...
 
virtual void destroyDisplay (const std::string &displayName)
 Remove a display. More...
 
virtual void destroyAllDisplays ()
 Removes all display. More...
 
virtual bool modifyDisplay (const std::string &displayName, const DtDisplayConfiguration &config)
 Modify a display. More...
 
virtual void onSlaveConnected (const std::string &igName)
 Called when a client is added. More...
 
virtual void emitDeError (const DtDeError &error, bool criticalError)
 Called when an error is emitted. More...
 
virtual void setSimulationTime (double time)
 Set the simulation time. More...
 
virtual double systemTime () const
 Used in special cases of absolute time stamping, this will return absolute wall clock time from the DtClock. More...
 
virtual bool isPaused () const
 Returns whether simulation time is paused. More...
 
virtual void pause ()
 This pauses the advancement of time, but the renderer continues to render. More...
 
virtual void resume ()
 Resume the advancement of simulation time. More...
 
double pausedTime () const
 pausedTime() provides an advancing time for use by objects that need it (such as the observer and observer eventProcessor) when simTime is paused. More...
 
virtual DtVirtualBaseClassfindFastInstance (StaticInstanceFunction classInstanceFunction) const
 Find an instance with the given name. More...
 
template<typename Class >
DtVirtualBaseClassfindFastInstance (Class &(*staticInstFunc)(DtDe &)) const
 The instance key is always return the subclass of the virtual base class, since it returns a reference (aka a pointer) it is safe to cast the function pointer. More...
 
virtual void registerFastInstance (StaticInstanceFunction classInstanceFunction, DtVirtualBaseClass *inst)
 Register a fast instance, if the inst is a null pointer the instance key is removed. More...
 
template<typename Class >
void registerFastInstance (Class &(*staticInstFunc)(DtDe &), DtVirtualBaseClass *inst)
 The instance key is always return the subclass of the virtual base class, since it returns a reference (aka a pointer) it is safe to cast the function pointer. More...
 
virtual DtVirtualBaseClassfindInstance (const std::string &instanceName) const
 Find an instance with the given name. More...
 
virtual void registerInstance (const std::string &instanceName, DtVirtualBaseClass *instance)
 Register an instance with a given name for later retrieval. More...
 
virtual void registerProctor (unsigned short handlerId, DtProctor *)
 Register an proctor object. More...
 
virtual void unregisterProctor (unsigned short handlerId)
 Unregister a handler This should be called before the handler is deallocated. More...
 
DtProctorfindProctor (unsigned short handlerId) const
 Find a handler. More...
 
DtDisplayProxySP findDisplay (const std::string &displayName)
 Find a Display by name. More...
 
virtual DtDisplayProxySP findDisplayByIndex (int index)
 Get the display by index. More...
 
void setRenderFrameThisTick (bool update)
 Sets that the frame will be rendered this tick. More...
 
virtual bool modelSetActive (int i) const
 Indicate if the specified model set is active this tick. More...
 
virtual void determineActiveModelSets ()
 Determine which model sets are active this frame. More...
 
virtual bool isValidDisplayConfiguration (const DtDisplayConfiguration &dec)
 Returns true if the display configuration is valid and can be realized. More...
 
virtual void createDebugLog (const std::string &fileName, DtDebugLog::PrintLevel level)
 create the debug log for logging information to a file More...
 
virtual void startLogFrameTime ()
 Start logging a list of frametimes. More...
 
virtual void stopLogFrameTime ()
 

Protected Member Functions

virtual InitializationResult initialize ()
 Limited initialize and post-initialize. More...
 
virtual InitializationResult initialize (bool abortOnFailure, bool useLicenseErrorDialog)
 Initialize the application prior to running it. More...
 
virtual void postInitialize ()
 Connect initialized components and call postInit signal. More...
 
virtual void setDeInitializer (const makVrv::DtDeInitializer &initializer)
 Set the Display Engine initializer used to initialize the Display Engine. More...
 
virtual void tick (double)
 A very important function which provides a since tick of execution which is required for the app to run for one 'logical' frame. More...
 
- Protected Member Functions inherited from makVrv::DtDe
void slaveTick ()
 Default implementation of a slave's tick. More...
 
void masterTick (double simulationTime)
 Default implementation of a master's tick. More...
 
void renderTick (double elapsedTime)
 Update the scene and render, elapsedTimeis used to figure out how much time is left for additional streaming. More...
 
DtDeProctorproctor ()
 Get the proctor. More...
 
virtual bool local_realizeDisplayConfiguration (const std::string &clientName, const std::string &displayName)
 Attempt to realize a display configuration. More...
 
virtual void local_destroyDisplay (const std::string &displayName)
 Remove a display. More...
 
virtual bool local_modifyDisplay (const std::string &displayName, const DtDisplayConfiguration &config)
 Modify a display. More...
 
void createDisplay (DtDisplayConfiguration &)
 create the display engine. More...
 
void createIgCommunicator (DtDriverConfiguration &config)
 Create the Display Engine Driver. More...
 
void destroyDisplay ()
 Destroy the display. More...
 
bool local_addDisplayConfiguration (const DtDisplayConfiguration &dec)
 Internal implementation of adding a display. More...
 
virtual void intializeStatsManager (void)
 Internal initialization of stats manager. More...
 
virtual unsigned int countEmbeddedWindows (const DtDisplayConfiguration &dec)
 Count the number of embedded windows in the display configuration. More...
 
virtual void initializeSchemaManager ()
 
virtual void initializeLibXmlIfNecessary ()
 
virtual bool shouldSkipThisTick (double simulationTime)
 Check whether the DtDe should skip this tick to maintain a fixed frame rate. More...
 
virtual void postInitializeMaster ()
 Master-only post initialize code. More...
 
virtual void checkForData ()
 Check that the data package is installed, and emit an error if not. More...
 

Additional Inherited Members

- Public Types inherited from makVrv::DtDe
enum  InitializationResult { Initialized = 1, UnableToInitialize = 0, UnableToInitializeDueToLicense = -1 }
 Result codes for the initialize() function. More...
 
typedef std::vector< std::pair
< DtDeError, bool > > 
DeErrors
 Typedef of a vector of error/critical. More...
 
typedef DtVirtualBaseClass &(* StaticInstanceFunction )(DtDe &)
 Define the static instance function type for fast instance lookup. More...
 
- Static Public Member Functions inherited from makVrv::DtDe
static const charclassName ()
 Returns the name of this class. More...
 
- Public Attributes inherited from makVrv::DtDe
boost::signal< void()> signal_initializeDefaultState
 Signal emitted during initialization at at time when it is possible to initialize default state. More...
 
boost::signal< void()> signal_postInitialize
 Signal emitted at the end of the initialization function. More...
 
boost::signal< void(DtDe &)> signal_preTick
 Signal emitted at the beginning of the tick function. More...
 
boost::signal< void()> signal_postTick
 Signal emitted at the end of the tick function. More...
 
boost::signal< void(const
std::string &, const
std::string &)> 
signal_displayConfigurationRealized
 Emitted when a Display Engine is told to realize a display configuration. More...
 
boost::signal< void(const
DtDisplayConfiguration &)> 
signal_displayConfigurationAdded
 Emitted when a display is added. More...
 
boost::signal< void(const
std::string &)> 
signal_displayToBeDestroyed
 Emitted when a display is removed. More...
 
boost::signal< void(const
std::string &, const
DtDisplayConfiguration &)> 
signal_displayModified
 Emitted when a display is modified. More...
 
boost::signal< void(const
std::string &, const
DtWindowConfiguration &)> 
signal_windowConfigurationAdded
 Emitted when a window is added. More...
 
boost::signal< void(const
std::string &, const
std::string &)> 
signal_windowConfigurationToBeDestroyed
 Emitted when a window is destroyed. More...
 
boost::signal< void(const
std::string &, const
std::string &, const
DtWindowConfiguration &)> 
signal_windowConfigurationModified
 Emitted when an realized window is modified. More...
 
boost::signal< void(const
std::string &, const
std::string &, const
DtChannelConfiguration &)> 
signal_channelConfigurationAdded
 Emitted when a channel is added. More...
 
boost::signal< void(const
std::string &, const
std::string &, const
std::string &)> 
signal_channelToBeDestroyed
 Signal is emitted, then the channel is destroyed. More...
 
boost::signal< void(const
std::string &, const
std::string &, const
std::string &, const
DtChannelConfiguration &)> 
signal_channelConfigurationModified
 Emitted when a channel is modified. More...
 
boost::signal< void(const
DtDeError &error, bool
critical)> 
signal_deError
 Listen to this signal for Display Engine errors. More...
 
boost::signal< void()> signal_quit
 Signal emitted by the quit method. More...
 
boost::signal< void()> signal_pause
 signal emitted by the pause method. More...
 
boost::signal< void()> signal_resume
 signal emitted by the resume method. More...
 
boost::signal< void()> signal_aboutToAutoStartDrivers
 
- Protected Types inherited from makVrv::DtDe
enum  LicenseTypes { NoLicense = -1, Master3D_License = 0, XR_License = 1, PVD_License = 2 }
 
typedef std::vector< void * > InitFunctionVector
 This vector stores the address of registered init functions. More...
 
typedef std::map< std::string,
DtVirtualBaseClass * > 
RootedSingletonMap
 
typedef std::map
< StaticInstanceFunction,
DtVirtualBaseClass * > 
FastRootedSingletonMap
 
typedef std::map< std::string,
DtDisplayProxyWP
DisplayEngineProxyMap
 
- Protected Attributes inherited from makVrv::DtDe
RootedSingletonMap myRootedSingletonMap
 
FastRootedSingletonMap myFastRootedSingletonMap
 
DtDeInitializer myInitializer
 
DtDePathConfiguration myPathConfiguration
 
bool myStopFlag
 
bool myInitializeFlag
 
double mySimulationTime
 
double myNextFixedTime
 
DtDebugLogmyDebugLog
 
DtDeConfiguration myConfiguration
 
DtMainEventQueue myMainEventQueue
 
DtDisplaymyDisplayEngine
 
DtDeCommunicatormyCommunicator
 
DtMessageDispatchermyDispatcher
 
DtDeProctormyIgProctor
 
DtDriverManagermyDriverManager
 
DtAgentManagermyAgentManager
 
DisplayEngineProxyMap myDisplayProxies
 
DtDeSharedStatemyDeSharedState
 
DtDataBankmyDataBank
 
DtSchemaManagermySchemaManager
 
DtBackgroundLoadermyBackgroundLoader
 
InitFunctionVector myRegisteredInitFunctions
 
void * myRegInitFunction
 
DtFileCachemyFileCache
 
DeErrors myIgErrors
 
DtRenderermyRenderer
 
bool mySceneNeedsUpdateFlag
 
bool myDestructionFlag
 
bool myInTickFlag
 
std::vector< boolmyActiveModelSets
 
std::string myLastInstanceName
 
RootedSingletonMap::const_iterator myLastInstance
 
tbb::mutex myInternalDataMutex
 
tbb::recursive_mutex myErrorMutex
 
DtThreadId myThreadId
 
DtClockmySimulationClock
 
DtSynchronizedTimeManagermySynchronizedTimeManager
 
LicenseTypes myLicenseType
 
DtInMemoryProfilerDistributorAgent * myFrameTimeLogger
 
bool myRenderedLastFrame
 
bool myResettingFlag
 
double mySystemPausedTime
 
double myTargetFrameTime
 used to budget streaming at the end of a frame More...
 
double myLastUpdateTime
 used by stats system More...
 
bool myStartProfilerNextFrame
 
bool myStopProfilerNextFrame
 
- Static Protected Attributes inherited from makVrv::DtDe
static const charmyClassName
 

Detailed Description

The combination of this DE and the entity editor application will only perform the functions of creating the main window and allowing this main window to have a menu, dockable widgets and pages associated with it.

It will also load plugins. This de will not perform any rendering to an osg widget, so, use this with care

Constructor & Destructor Documentation

DtGuiOnlyDe::DtGuiOnlyDe ( )

CTOR.

virtual DtGuiOnlyDe::~DtGuiOnlyDe ( )
virtual

DTOR.

Member Function Documentation

virtual InitializationResult DtGuiOnlyDe::initialize ( )
inlineprotectedvirtual

Limited initialize and post-initialize.

References initialize().

Referenced by initialize().

virtual InitializationResult DtGuiOnlyDe::initialize ( bool  abortOnLicenseFailure,
bool  useLicenseErrorDialog 
)
protectedvirtual

Initialize the application prior to running it.

It is required that this function be called prior to a call to run. If the default DtDe::run is not used, and rather tick is called repeatedly, it is still required that this function get called. Note that the Display Engine must run in the thread that calls initialize. If useLicenseErrorDialog is true and the appropriate DLLs have been included, failure to check out a VR-Vantage license will cause a dialog to be raised requesting licensing information. (this may still ultimately result in not finding a license). If abortOnLicenseFailure is true, the application will exit on license failure. Set this to false to utilize the InitializationResult return value.

Reimplemented from makVrv::DtDe.

virtual void DtGuiOnlyDe::postInitialize ( )
protectedvirtual

Connect initialized components and call postInit signal.

Reimplemented from makVrv::DtDe.

virtual void DtGuiOnlyDe::setDeInitializer ( const makVrv::DtDeInitializer initializer)
protectedvirtual

Set the Display Engine initializer used to initialize the Display Engine.

This call will do nothing if the Display Engine is already initialized. Also sets the DtDePathConfiguration and DtDeConfiguration from the initializer

Reimplemented from makVrv::DtDe.

virtual void DtGuiOnlyDe::tick ( double  simTime)
protectedvirtual

A very important function which provides a since tick of execution which is required for the app to run for one 'logical' frame.

This function must be called repeatedly typically as often as possible.

Exceptions
DtCorruptedStateif called before the Display Engine is initialized.
Parameters
Input
simTimeis the simulation time of the 'update cycle'. Typically this is the amount of time in seconds since the DtDe was started (to get real time behavior).

Reimplemented from makVrv::DtDe.


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

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)