OSG::BalancedMultiWindowBase Class Reference

BalancedMultiWindow Base Class.

#include <OSGBalancedMultiWindowBase.h>

Inheritance diagram for OSG::BalancedMultiWindowBase:

OSG::MultiDisplayWindow OSG::MultiDisplayWindowBase OSG::ClusterWindow OSG::ClusterWindowBase OSG::Window OSG::WindowBase OSG::AttachmentContainer OSG::FieldContainer OSG::ReflexiveContainer OSG::BalancedMultiWindow List of all members.

asynchronous initialization



typedef bool(*) connectioncbfp (std::string server, Real32 progress)
bool initAsync (connectioncbfp fp)
void setConnectionCB (connectioncbfp fp)

dcast



typedef AttachmentContainer Self
typedef FieldContainerAttachment AttachmentObj
typedef FieldContainerAttachmentPtr AttachmentObjPtr
typedef SFFieldContainerAttachmentPtrMap SFAttachmentObjPtrMap
typedef SFAttachmentObjPtrMap::StoredType AttachmentObjPtrMap
typedef AttachmentObjPtrMap::iterator AttachmentObjPtrMapIt
 OSG_GEN_INTERNALPTR (AttachmentContainer)

Type definitions



static const bool isNodeCore = false
 OSG_GEN_INTERNALPTR (FieldContainer)
 OSG_RC_FIRST_FIELD_DECL (ChangedCallbacks)
 OSG_RC_LAST_FIELD_DECL (ChangedCallbacks)

Extension handling



GLExtensionFunction getFunctionByName (const Char8 *s)
UInt32 getGLVersion (void)
bool hasExtension (UInt32 extId)
bool hasExtension (const Char8 *s)
void * getFunction (UInt32 funcId)
void * getFunctionNoCheck (UInt32 funcId)
void dumpExtensions (void)
Real32 getConstantValue (GLenum val)
const Vec2fgetConstantValuev (GLenum val)
static void setGLLibraryName (const Char8 *s)
static Int32 getExtensionId (const Char8 *s)
static bool hasCommonExtension (UInt32 extId)

Extension string handling



const std::vector< std::string > & getRegisteredFunctions (void)
const std::vector< std::string > & getExtensions (void)
const std::vector< std::string > & getIgnoredExtensions (void)
static const std::vector<
std::string > & 
getRegisteredExtensions (void)

GL object handling



void validateGLObject (UInt32 osgId, DrawEnv *pEnv)
void validateAllGLObjects (DrawEnv *pEnv)
void setGLObjectId (UInt32 osgId, UInt32 id2)
UInt32 getGLObjectId (UInt32 osgId)
static UInt32 getGLObjectsSize (void)
static void refreshGLObject (UInt32 osgId)
static void refreshAllGLObjects (void)
static void reinitializeGLObject (UInt32 osgId)
static void reinitializeAllGLObjects (void)
static void destroyGLObject (UInt32 osgId, UInt32 num=1)

GL object handling



static void initRegisterGLObject (UInt32 osgId, UInt32 num)
void doInitRegisterGLObject (UInt32 osgId, UInt32 num)

MT Construction



static void staticAcquire (void)
static void staticRelease (void)
void onCreate (const Window *source=NULL)
void onCreateAspect (const Window *createAspect, const Window *source=NULL)
void onDestroy (UInt32 uiContainerId)
void onDestroyAspect (UInt32 uiContainerId, UInt32 uiAspect)

Public Types

enum  {
  BalanceFieldId = Inherited::NextFieldId, BestCutFieldId = BalanceFieldId + 1, ShowBalancingFieldId = BestCutFieldId + 1, TileSizeFieldId = ShowBalancingFieldId + 1,
  ShortFieldId = TileSizeFieldId + 1, NextFieldId = ShortFieldId + 1
}
typedef MultiDisplayWindow Inherited
typedef MultiDisplayWindow ParentContainer
typedef Inherited::TypeObject TypeObject
typedef TypeObject::InitPhase InitPhase
enum  {
  HServersFieldId = Inherited::NextFieldId, VServersFieldId = HServersFieldId + 1, ManageClientViewportsFieldId = VServersFieldId + 1, XOverlapFieldId = ManageClientViewportsFieldId + 1,
  YOverlapFieldId = XOverlapFieldId + 1, NextFieldId = YOverlapFieldId + 1
}
enum  {
  ServersFieldId = Inherited::NextFieldId, ConnectionTypeFieldId = ServersFieldId + 1, ConnectionInterfaceFieldId = ConnectionTypeFieldId + 1, ConnectionDestinationFieldId = ConnectionInterfaceFieldId + 1,
  ConnectionParamsFieldId = ConnectionDestinationFieldId + 1, ServicePortFieldId = ConnectionParamsFieldId + 1, ServiceAddressFieldId = ServicePortFieldId + 1, ServiceInterfaceFieldId = ServiceAddressFieldId + 1,
  ClientWindowFieldId = ServiceInterfaceFieldId + 1, InterleaveFieldId = ClientWindowFieldId + 1, FrameCountFieldId = InterleaveFieldId + 1, ComposerFieldId = FrameCountFieldId + 1,
  AutostartFieldId = ComposerFieldId + 1, NextFieldId = AutostartFieldId + 1
}
enum  GLObjectStatusE {
  notused = 1, initialize, reinitialize, initialized,
  needrefresh, destroy, finaldestroy
}
enum  { invalidExtensionID = 0x7fffffff, invalidFunctionID = 0x7fffffff }
enum  {
  WidthFieldId = Inherited::NextFieldId, HeightFieldId = WidthFieldId + 1, PortFieldId = HeightFieldId + 1, ResizePendingFieldId = PortFieldId + 1,
  GlObjectEventCounterFieldId = ResizePendingFieldId + 1, GlObjectLastRefreshFieldId = GlObjectEventCounterFieldId + 1, GlObjectLastReinitializeFieldId = GlObjectLastRefreshFieldId + 1, DrawerIdFieldId = GlObjectLastReinitializeFieldId + 1,
  NextFieldId = DrawerIdFieldId + 1
}
Typedefs


typedef boost::function< void(DrawEnv *, UInt32, GLObjectStatusE)> GLObjectFunctor
typedef void(*) GLExtensionFunction (void)
Type definitions


typedef Field *(ReflexiveContainer::*) FieldEditMethod (void)
typedef const Field *(ReflexiveContainer::*) FieldGetMethod (void) const

Public Member Functions

 OSG_GEN_INTERNALPTR (BalancedMultiWindow)
 OSG_GEN_INTERNALPTR (MultiDisplayWindow)
 OSG_GEN_INTERNALPTR (ClusterWindow)
 OSG_GEN_INTERNALPTR (Window)
FieldContainer Get


virtual FieldContainerTypegetType (void)
virtual const FieldContainerTypegetType (void) const
virtual UInt32 getContainerSize (void) const
Field Get


SFBool * editSFBalance (void)
const SFBool * getSFBalance (void) const
SFBool * editSFBestCut (void)
const SFBool * getSFBestCut (void) const
SFBool * editSFShowBalancing (void)
const SFBool * getSFShowBalancing (void) const
SFUInt32 * editSFTileSize (void)
const SFUInt32 * getSFTileSize (void) const
SFBool * editSFShort (void)
const SFBool * getSFShort (void) const
bool & editBalance (void)
 Get the value of the BalancedMultiWindow::_sfBalance field.
const bool & getBalance (void) const
 Get the value of the BalancedMultiWindow::_sfBalance field.
bool & editBestCut (void)
 Get the value of the BalancedMultiWindow::_sfBestCut field.
const bool & getBestCut (void) const
 Get the value of the BalancedMultiWindow::_sfBestCut field.
bool & editShowBalancing (void)
 Get the value of the BalancedMultiWindow::_sfShowBalancing field.
const bool & getShowBalancing (void) const
 Get the value of the BalancedMultiWindow::_sfShowBalancing field.
UInt32 & editTileSize (void)
 Get the value of the BalancedMultiWindow::_sfTileSize field.
const UInt32 & getTileSize (void) const
 Get the value of the BalancedMultiWindow::_sfTileSize field.
bool & editShort (void)
 Get the value of the BalancedMultiWindow::_sfShort field.
const bool & getShort (void) const
 Get the value of the BalancedMultiWindow::_sfShort field.
Field Set


void setBalance (const bool &value)
 Set the value of the BalancedMultiWindow::_sfBalance field.
void setBestCut (const bool &value)
 Set the value of the BalancedMultiWindow::_sfBestCut field.
void setShowBalancing (const bool &value)
 Set the value of the BalancedMultiWindow::_sfShowBalancing field.
void setTileSize (const UInt32 &value)
 Set the value of the BalancedMultiWindow::_sfTileSize field.
void setShort (const bool &value)
 Set the value of the BalancedMultiWindow::_sfShort field.
Binary Access


virtual UInt32 getBinSize (ConstFieldMaskArg whichField)
virtual void copyToBin (BinaryDataHandler &pMem, ConstFieldMaskArg whichField)
virtual void copyFromBin (BinaryDataHandler &pMem, ConstFieldMaskArg whichField)
Copy


virtual FieldContainerPtr shallowCopy (void) const
Sync


virtual void changed (ConstFieldMaskArg whichField, UInt32 origin, BitVector detail)
Output


virtual void dump (UInt32 uiIndent=0, const BitVector bvFlags=0) const
Field Get


SFUInt32 * editSFHServers (void)
const SFUInt32 * getSFHServers (void) const
SFUInt32 * editSFVServers (void)
const SFUInt32 * getSFVServers (void) const
SFBool * editSFManageClientViewports (void)
const SFBool * getSFManageClientViewports (void) const
SFInt32 * editSFXOverlap (void)
const SFInt32 * getSFXOverlap (void) const
SFInt32 * editSFYOverlap (void)
const SFInt32 * getSFYOverlap (void) const
UInt32 & editHServers (void)
 Get the value of the MultiDisplayWindow::_sfHServers field.
const UInt32 & getHServers (void) const
 Get the value of the MultiDisplayWindow::_sfHServers field.
UInt32 & editVServers (void)
 Get the value of the MultiDisplayWindow::_sfVServers field.
const UInt32 & getVServers (void) const
 Get the value of the MultiDisplayWindow::_sfVServers field.
bool & editManageClientViewports (void)
 Get the value of the MultiDisplayWindow::_sfManageClientViewports field.
const bool & getManageClientViewports (void) const
 Get the value of the MultiDisplayWindow::_sfManageClientViewports field.
Int32 & editXOverlap (void)
 Get the value of the MultiDisplayWindow::_sfXOverlap field.
const Int32 & getXOverlap (void) const
 Get the value of the MultiDisplayWindow::_sfXOverlap field.
Int32 & editYOverlap (void)
 Get the value of the MultiDisplayWindow::_sfYOverlap field.
const Int32 & getYOverlap (void) const
 Get the value of the MultiDisplayWindow::_sfYOverlap field.
Field Set


void setHServers (const UInt32 &value)
 Set the value of the MultiDisplayWindow::_sfHServers field.
void setVServers (const UInt32 &value)
 Set the value of the MultiDisplayWindow::_sfVServers field.
void setManageClientViewports (const bool &value)
 Set the value of the MultiDisplayWindow::_sfManageClientViewports field.
void setXOverlap (const Int32 &value)
 Set the value of the MultiDisplayWindow::_sfXOverlap field.
void setYOverlap (const Int32 &value)
 Set the value of the MultiDisplayWindow::_sfYOverlap field.
GL implementation functions


virtual void(* getFunctionByName (const Char8 *s))()
Window system implementation functions


virtual void activate (void)
virtual void deactivate (void)
virtual bool swap (void)
virtual void init (void)
virtual void frameInit (void)
virtual void frameExit (void)
connection pool


ClusterNetworkgetNetwork (void)
Statistics


StatCollectorgetStatistics (void) const
void setStatistics (StatCollector *stat)
Field Get


MFString * editMFServers (void)
const MFString * getMFServers (void) const
SFString * editSFConnectionType (void)
const SFString * getSFConnectionType (void) const
SFString * editSFConnectionInterface (void)
const SFString * getSFConnectionInterface (void) const
SFString * editSFConnectionDestination (void)
const SFString * getSFConnectionDestination (void) const
SFString * editSFConnectionParams (void)
const SFString * getSFConnectionParams (void) const
SFUInt32 * editSFServicePort (void)
const SFUInt32 * getSFServicePort (void) const
SFString * editSFServiceAddress (void)
const SFString * getSFServiceAddress (void) const
SFString * editSFServiceInterface (void)
const SFString * getSFServiceInterface (void) const
const SFWindowPtr * getSFClientWindow (void) const
 Get the ClusterWindow::_sfClientWindow field.
SFUInt32 * editSFInterleave (void)
const SFUInt32 * getSFInterleave (void) const
SFUInt32 * editSFFrameCount (void)
const SFUInt32 * getSFFrameCount (void) const
const SFImageComposerPtr * getSFComposer (void) const
 Get the ClusterWindow::_sfComposer field.
MFString * editMFAutostart (void)
const MFString * getMFAutostart (void) const
std::string & editServers (const UInt32 index)
MFString & editServers (void)
 Get the ClusterWindow::_mfServers field.
const std::string & getServers (const UInt32 index) const
 Get the value of the index element the ClusterWindow::_mfServers field.
const MFString & getServers (void) const
 Get the ClusterWindow::_mfServers field.
std::string & editConnectionType (void)
 Get the value of the ClusterWindow::_sfConnectionType field.
const std::string & getConnectionType (void) const
 Get the value of the ClusterWindow::_sfConnectionType field.
std::string & editConnectionInterface (void)
 Get the value of the ClusterWindow::_sfConnectionInterface field.
const std::string & getConnectionInterface (void) const
 Get the value of the ClusterWindow::_sfConnectionInterface field.
std::string & editConnectionDestination (void)
 Get the value of the ClusterWindow::_sfConnectionDestination field.
const std::string & getConnectionDestination (void) const
 Get the value of the ClusterWindow::_sfConnectionDestination field.
std::string & editConnectionParams (void)
 Get the value of the ClusterWindow::_sfConnectionParams field.
const std::string & getConnectionParams (void) const
 Get the value of the ClusterWindow::_sfConnectionParams field.
UInt32 & editServicePort (void)
 Get the value of the ClusterWindow::_sfServicePort field.
const UInt32 & getServicePort (void) const
 Get the value of the ClusterWindow::_sfServicePort field.
std::string & editServiceAddress (void)
 Get the value of the ClusterWindow::_sfServiceAddress field.
const std::string & getServiceAddress (void) const
 Get the value of the ClusterWindow::_sfServiceAddress field.
std::string & editServiceInterface (void)
 Get the value of the ClusterWindow::_sfServiceInterface field.
const std::string & getServiceInterface (void) const
 Get the value of the ClusterWindow::_sfServiceInterface field.
WindowPtrConst getClientWindow (void) const
 Get the value of the ClusterWindow::_sfClientWindow field.
UInt32 & editInterleave (void)
 Get the value of the ClusterWindow::_sfInterleave field.
const UInt32 & getInterleave (void) const
 Get the value of the ClusterWindow::_sfInterleave field.
UInt32 & editFrameCount (void)
 Get the value of the ClusterWindow::_sfFrameCount field.
const UInt32 & getFrameCount (void) const
 Get the value of the ClusterWindow::_sfFrameCount field.
ImageComposerPtrConst getComposer (void) const
 Get the value of the ClusterWindow::_sfComposer field.
std::string & editAutostart (const UInt32 index)
MFString & editAutostart (void)
 Get the ClusterWindow::_mfAutostart field.
const std::string & getAutostart (const UInt32 index) const
 Get the value of the index element the ClusterWindow::_mfAutostart field.
const MFString & getAutostart (void) const
 Get the ClusterWindow::_mfAutostart field.
Field Set


void setConnectionType (const std::string &value)
 Set the value of the ClusterWindow::_sfConnectionType field.
void setConnectionInterface (const std::string &value)
 Set the value of the ClusterWindow::_sfConnectionInterface field.
void setConnectionDestination (const std::string &value)
 Set the value of the ClusterWindow::_sfConnectionDestination field.
void setConnectionParams (const std::string &value)
 Set the value of the ClusterWindow::_sfConnectionParams field.
void setServicePort (const UInt32 &value)
 Set the value of the ClusterWindow::_sfServicePort field.
void setServiceAddress (const std::string &value)
 Set the value of the ClusterWindow::_sfServiceAddress field.
void setServiceInterface (const std::string &value)
 Set the value of the ClusterWindow::_sfServiceInterface field.
void setClientWindow (WindowPtrConstArg value)
 Set the value of the ClusterWindow::_sfClientWindow field.
void setInterleave (const UInt32 &value)
 Set the value of the ClusterWindow::_sfInterleave field.
void setFrameCount (const UInt32 &value)
 Set the value of the ClusterWindow::_sfFrameCount field.
void setComposer (ImageComposerPtrConstArg value)
 Set the value of the ClusterWindow::_sfComposer field.
Ptr MField Set


void pushToServers (const std::string &value)
void insertIntoServers (UInt32 uiIndex, const std::string &value)
void replaceInServers (UInt32 uiIndex, const std::string &value)
void replaceInServers (const std::string &pOldElem, const std::string &pNewElem)
void removeFromServers (UInt32 uiIndex)
void removeFromServers (const std::string &value)
void clearServers (void)
void pushToAutostart (const std::string &value)
void insertIntoAutostart (UInt32 uiIndex, const std::string &value)
void replaceInAutostart (UInt32 uiIndex, const std::string &value)
void replaceInAutostart (const std::string &pOldElem, const std::string &pNewElem)
void removeFromAutostart (UInt32 uiIndex)
void removeFromAutostart (const std::string &value)
void clearAutostart (void)
Size handling


bool isResizePending (void)
virtual void resize (int width, int height)
virtual void resizeGL (void)
void setSize (UInt16 width, UInt16 height)
Sync


StageValidatorgetStageValidator (void)
Field Get


SFUInt16 * editSFWidth (void)
const SFUInt16 * getSFWidth (void) const
SFUInt16 * editSFHeight (void)
const SFUInt16 * getSFHeight (void) const
const MFViewportPtr * getMFPort (void) const
 Get the Window::_mfPort field.
SFBool * editSFResizePending (void)
const SFBool * getSFResizePending (void) const
SFUInt32 * editSFDrawerId (void)
const SFUInt32 * getSFDrawerId (void) const
UInt16 & editWidth (void)
 Get the value of the Window::_sfWidth field.
const UInt16 & getWidth (void) const
 Get the value of the Window::_sfWidth field.
UInt16 & editHeight (void)
 Get the value of the Window::_sfHeight field.
const UInt16 & getHeight (void) const
 Get the value of the Window::_sfHeight field.
ViewportPtrConst getPort (const UInt32 index) const
 Get the value of the index element the Window::_mfPort field.
const MFViewportPtr & getPort (void) const
 Get the Window::_mfPort field.
bool & editResizePending (void)
 Get the value of the Window::_sfResizePending field.
const bool & getResizePending (void) const
 Get the value of the Window::_sfResizePending field.
UInt32 & editDrawerId (void)
 Get the value of the Window::_sfDrawerId field.
const UInt32 & getDrawerId (void) const
 Get the value of the Window::_sfDrawerId field.
Field Set


void setWidth (const UInt16 &value)
 Set the value of the Window::_sfWidth field.
void setHeight (const UInt16 &value)
 Set the value of the Window::_sfHeight field.
void setResizePending (const bool &value)
 Set the value of the Window::_sfResizePending field.
void setDrawerId (const UInt32 &value)
 Set the value of the Window::_sfDrawerId field.
Ptr MField Set


void addPort (ViewportPtrConstArg value)
void assignPort (const MFViewportPtr &value)
void insertPort (UInt32 uiIndex, ViewportPtrConstArg value)
void replacePort (UInt32 uiIndex, ViewportPtrConstArg value)
void replacePortBy (ViewportPtrConstArg pOldElem, ViewportPtrConstArg pNewElem)
void subPort (UInt32 uiIndex)
void subPort (ViewportPtrConstArg value)
void clearPorts (void)
Constructors


 OSG_RC_FIRST_FIELD_DECL (Attachments)
 OSG_RC_LAST_FIELD_DECL (Attachments)
Set


void addAttachment (const AttachmentObjPtr attachmentP, UInt16 binding=0)
void subAttachment (const AttachmentObjPtr attachmentP, UInt16 binding=0)
AttachmentObjPtr findAttachment (UInt32 groupId, UInt16 binding=0)
AttachmentObjPtr findAttachment (const FieldContainerType &type, UInt16 binding=0)
your_category


const SFAttachmentObjPtrMapgetSFAttachments (void) const
Set


void callChangedFunctors (ConstFieldMaskArg whichField)
Container Access


UInt32 addChangedFunctor (ChangedFunctor func, std::string createSymbol)
template<class FunctorT>
void subChangedFunctor (FunctorT func)
void subChangedFunctor (UInt32 uiId)
void clearChangedFunctors (void)
Field Flags


const FieldFlagsgetFieldFlags (void)
Helper


OSG_SYSTEM_DLLMAPPING void addReference (void)
OSG_SYSTEM_DLLMAPPING void subReference (void)
OSG_SYSTEM_DLLMAPPING void subReferenceLocalVar (void)
OSG_SYSTEM_DLLMAPPING Int32 getRefCount (void) const
Comparison


virtual OSG_SYSTEM_DLLMAPPING
void 
invalidateVolume (void)
dcast


OSG_SYSTEM_DLLMAPPING UInt32 getTypeId (void) const
OSG_SYSTEM_DLLMAPPING UInt16 getGroupId (void) const
OSG_SYSTEM_DLLMAPPING const
Char8 * 
getTypeName (void) const
Get Field


OSG_SYSTEM_DLLMAPPING UInt32 getNumFields (void) const
OSG_SYSTEM_DLLMAPPING EditFieldHandlePtr editField (UInt32 fieldId)
OSG_SYSTEM_DLLMAPPING EditFieldHandlePtr editField (const Char8 *fieldName)
OSG_SYSTEM_DLLMAPPING GetFieldHandlePtr getField (UInt32 fieldId) const
OSG_SYSTEM_DLLMAPPING GetFieldHandlePtr getField (const Char8 *fieldName) const
Get Field Description


OSG_SYSTEM_DLLMAPPING FieldDescriptionBasegetFieldDescription (UInt32 fieldId)
OSG_SYSTEM_DLLMAPPING FieldDescriptionBasegetFieldDescription (const Char8 *fieldName)
Comparison


OSG_SYSTEM_DLLMAPPING EditFieldHandlePtr invalidEditField (void)
OSG_SYSTEM_DLLMAPPING GetFieldHandlePtr invalidGetField (void) const

Static Public Member Functions

Class Get


static FieldContainerTypegetClassType (void)
 access the type of the class
static UInt32 getClassTypeId (void)
 access the numerical type of the class
static UInt16 getClassGroupId (void)
 access the type of the class
Construction


static BalancedMultiWindowPtr create (void)
 create a new instance of the class
static BalancedMultiWindowPtr createEmpty (void)
 create an empty new instance of the class, do not copy the prototype
Extension registration


static UInt32 registerExtension (const Char8 *s)
static void ignoreExtensions (const Char8 *s)
static UInt32 registerFunction (const Char8 *s, Int32 ext=-1, UInt32 version=0xffff)
static void registerConstant (GLenum val)
GL object registration


static UInt32 registerGLObject (GLObjectFunctor functor, GLObjectFunctor destroyFunctor, UInt32 num=1)

Public Attributes

General Fieldcontainer Declaration


 OSG_ABSTR_FIELD_CONTAINER_DECL

Static Public Attributes

static const OSG::BitVector BalanceFieldMask
static const OSG::BitVector BestCutFieldMask
static const OSG::BitVector ShowBalancingFieldMask
static const OSG::BitVector TileSizeFieldMask
static const OSG::BitVector