Free Electron
Classes | Public Member Functions | Private Member Functions | Private Attributes | List of all members
fe::ext::MOAViewer Class Reference

MOA compatible Viewer. More...

#include <MOAViewer.h>

Inheritance diagram for fe::ext::MOAViewer:
Inheritance graph
[legend]

Classes

class  ViewerTask
 Worker object for the internal viewer worker. More...
 

Public Member Functions

void initialize ()
 
void open (sp< OrchestratorI > orchestrator) override
 Open the viewer window. More...
 
void close () override
 Close the viewer window. More...
 
Real frameRate (void) const override
 Returns frames per seconds. More...
 
- Public Member Functions inherited from fe::ext::ViewerI
virtual void bind (sp< WindowI > spWindowI)
 Adopts a WindowI. More...
 
virtual void bind (sp< DrawI > spDrawI)
 Adopts a DrawI. More...
 
virtual sp< DrawIgetDrawI (void) const
 Returns the current DrawI. More...
 
virtual sp< CameraControllerIgetCameraControllerI (void) const
 Returns the current CameraControllerI. More...
 
virtual void setCameraControllerI (sp< CameraControllerI > spCameraControllerI)
 Replaces the current CameraControllerI. More...
 
- Public Member Functions inherited from fe::Component
const Stringname (void) const
 Return the components chosen name. More...
 
const String verboseName (void) const
 Return the annotated chosen name. More...
 
void setName (const String &name)
 Rename the component to anything you want. More...
 
hp< Registryregistry (void) const
 Get the Registry that created this component. More...
 
void adjoin (sp< Component > spComponent)
 Tie this component's lifetime to another. More...
 
sp< Componentcreate (const String &implementation, BWORD quiet=FALSE) const
 Convienience function to registry()->create() More...
 
void disjoin (void)
 Untie component from Hub, if connected. More...
 
String factoryName (void)
 
void setLibrary (sp< Library > spLibrary)
 Store a reference to the library used to instantiate this component. More...
 
sp< Librarylibrary (void)
 Get the library that created the component. More...
 
void setFactoryIndex (I32 a_factoryIndex)
 Set the library's factory index. More...
 
I32 factoryIndex (void)
 Get the library's factory index. More...
 
void setSingleton (BWORD set)
 Specify whether component is a singleton. More...
 
BWORD isSingleton (void)
 Return whether component is a singleton. More...
 
virtual void acquire (void)
 Specialized reference increment. More...
 
virtual void release (void)
 Specialized reference decrement. More...
 
- Public Member Functions inherited from fe::Handled< Component >
const hp< Component > & getHandle (void) const
 Get a safe handle to this object. More...
 
- Public Member Functions inherited from fe::Protectable
virtual I32 protection (void) const
 
virtual void protect (void)
 
virtual void unprotect (void)
 
virtual Protectableclone (Protectable *pInstance=NULL)
 
- Public Member Functions inherited from fe::Counted
virtual void acquire (int &rCount)
 Increment the reference count (and get the count) More...
 
virtual void abandon (void)
 Decrement the reference count. More...
 
int count (void) const
 Return the count of references. More...
 
void setName (const String &)
 
void trackReference (void *pReference, String what)
 
void untrackReference (void *pReference)
 
void registerRegion (void *pT, U32 bytes)
 
- Public Member Functions inherited from fe::Initialized
void initializeAll (void)
 
void setActive (bool a_active)
 

Private Member Functions

Color getDefaultBgColor () const
 Get the default background color. More...
 

Private Attributes

bool isOpen
 Is the viewer window open? More...
 
ViewerTask viewerTask
 The worker object. More...
 
Thread * viewerThread
 The worker thread. More...
 
sp< ScopewindowScope
 The window events run on their own scope for now. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from fe::Counted
static String reportTracker (void)
 
static U32 trackerCount (void)
 
- Protected Types inherited from fe::Initialized
typedef void(* InitializeFunction) (Initialized *)
 
- Protected Member Functions inherited from fe::Handled< Component >
void abandonHandle (void)
 
- Protected Member Functions inherited from fe::Counted
int releaseInternal (void)
 Decrement the reference count. More...
 
void suppressReport (void)
 
- Protected Member Functions inherited from fe::Initialized
void addInitializer (InitializeFunction function)
 

Detailed Description

MOA compatible Viewer.

Member Function Documentation

◆ close()

void fe::ext::MOAViewer::close ( )
overridevirtual

◆ frameRate()

Real fe::ext::MOAViewer::frameRate ( void  ) const
inlineoverridevirtual

Returns frames per seconds.

Reimplemented from fe::ext::ViewerI.

◆ getDefaultBgColor()

Color fe::ext::MOAViewer::getDefaultBgColor ( ) const
private

Get the default background color.

Can be set using the FE_VIEWER_BG_COLOR environment variable.

References fe::String::c_str(), fe::String::empty(), and fe::System::getEnvironmentVariable().

◆ open()

void fe::ext::MOAViewer::open ( sp< OrchestratorI orchestrator)
overridevirtual

Open the viewer window.

The viewer will start in a separate thread.

Parameters
orchestratorThe orchestrator determines the systems that get signalled by the render thread. It also provides a scope and dataset that we attach ourselves to.

Implements fe::ext::ThreadedViewerI.

References isOpen, fe::ext::MOAViewer::ViewerTask::orchestrator, viewerTask, and viewerThread.

Member Data Documentation

◆ isOpen

bool fe::ext::MOAViewer::isOpen
private

Is the viewer window open?

Referenced by close(), and open().

◆ viewerTask

ViewerTask fe::ext::MOAViewer::viewerTask
private

The worker object.

Referenced by close(), and open().

◆ viewerThread

Thread* fe::ext::MOAViewer::viewerThread
private

The worker thread.

Referenced by close(), and open().

◆ windowScope

sp<Scope> fe::ext::MOAViewer::windowScope
private

The window events run on their own scope for now.


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