CrystalSpace

Public API Reference

Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

iBase Struct Reference
[Shared Class Facility (SCF)]

This is the basic interface: all other interfaces should be derived from this one, this will allow us to always use at least some minimal functionality given any interface pointer. More...

#include <csutil/scf_interface.h>

Inheritance diagram for iBase:

iAnimatedImage iAnimTimeUpdateHandler iAws iAws iAwsCanvas iAwsComponentFactory iAwsConnectionNodeFactory iAwsDockableWindow iAwsDockSite iAwsKey iAwsKeyFactory iAwsLayoutManager iAwsParmList iAwsPrefManager iAwsSink iAwsSinkManager iAwsSlot iAwsSource iAwsWindow iBallState iBaseHalo iBezierFactoryState iBezierState iBinaryLoaderPlugin iBinarySaverPlugin iBodyGroup iBugPlug iBugPlugRenderObject iCacheManager iCamera iCameraPosition iCameraPositionList iCameraSectorListener iClipper2D iCollection iCollectionList iCollider iCollideSystem iCommandLineParser iComponent iConfigFile iConfigIterator iConsoleExecCallback iConsoleInput iConsoleOutput iConsoleWatcher iCrossBuilder iCrossHalo iCursor iCurve iDataBuffer iDebugHelper iDocument iDocumentAttribute iDocumentAttributeIterator iDocumentNode iDocumentNodeIterator iDocumentSystem iDynamics iDynamicsCollisionCallback iDynamicsMoveCallback iDynamicsSystemCollider iDynamicSystem iEmitFactoryState iEmitGen3D iEmitState iEngine iEngineSectorCallback iEngineSequenceManager iEngineSequenceParameters iEvent iEventAttributeIterator iEventCord iEventHandler iEventOutlet iEventPlug iEventQueue iEventTimer iExplosionState iFactory iFile iFireState iFireTexture iFlareHalo iFoliageFactoryState iFoliageGeometry iFoliageMeshState iFoliageObject iFont iFontDeleteNotify iFontServer iFountainState iFrustumView iFrustumViewUserdata iGeneralMeshCommonState iGenerateImageFunction iGenericRenderStep iGenMeshAnimationControl iGenMeshAnimationControlFactory iGenMeshAnimationControlState iGenMeshAnimationControlType iGenMeshSkeletonBone iGenMeshSkeletonBoneUpdateCallback iGenMeshSkeletonControlState iGenMeshSkeletonScript iGLDriverDatabase iGraphics2D iGraphics3D iGraphicsMemory iHalo iHazeFactoryState iHazeHull iHazeHullBox iHazeHullCone iHazeHullCreation iImage iImageFileLoader iImageIO iImageVector iImposter iInputBinder iJob iJobQueue iJoint iJoystickDriver iKeyboardDriver iKeyComposer iKeyValuePair iLight iLightCallback iLightingInfo iLightingManager iLightingProcessData iLightIterator iLightIterRenderStep iLightList iLightManager iLightningFactoryState iLightRenderStep iLoader iLoaderContext iLoaderPlugin iLoaderStatus iLODControl iMapNode iMaterialEngine iMaterialList iMaterialWrapper iMemoryTracker iMeshDrawCallback iMeshFactoryList iMeshFactoryWrapper iMeshList iMeshObject iMeshObjectDrawCallback iMeshObjectFactory iMeshObjectType iMeshWrapper iMeshWrapperIterator iModelConverter iModelData iModelDataAction iModelDataCamera iModelDataLight iModelDataMaterial iModelDataObject iModelDataPolygon iModelDataTexture iModelDataVertices iMouseDriver iMovable iMovableListener iMovieRecorder iNativeWindow iNativeWindowManager iNovaHalo iNullMeshState iObject iObjectIterator iObjectModel iObjectModelListener iObjectNameChangeListener iObjectRegistry iObjectRegistryIterator iObjectWatcher iObjectWatcherListener iODEBallJoint iODEDynamicState iODEDynamicSystemState iODEFrameUpdateCallback iODEGeneralJointState iODEJointState iOffscreenCanvasCallback iOpenGLInterface iOSXAssistant iParameterESM iParticle iParticlesColorCallback iParticlesPhysics iParticlesStateBase iParticleState iPath iPluginConfig iPluginIterator iPluginManager iPolygonHandle iPolygonMesh iPolygonRenderer iPortal iPortalCallback iPortalContainer iProcTexCallback iProcTexture iProgressMeter iProtoFactoryState iProtoMeshState iPVSCuller iRainState iRefTracker iRegion iRegionList iRenderBuffer iRenderBufferAccessor iRendererLightmap iRenderLoopManager iRenderStep iRenderStepContainer iRenderStepFactory iRenderStepType iRenderView iReporter iReporterIterator iReporterListener iRigidBody iSaver iSaverPlugin iSCF iScript iScriptObject iSector iSectorCallback iSectorIterator iSectorList iSectorMeshCallback iSequence iSequenceCondition iSequenceManager iSequenceOperation iSequenceTimedOperation iSequenceTrigger iSequenceWrapper iShaderCompiler iShaderPriorityList iShaderProgram iShaderProgramPlugin iShaderRenderInterface iShaderTUResolver iShaderVariableAccessor iShaderVariableContext iShadowBlock iShadowBlockList iShadowCaster iShadowIterator iShadowReceiver iSharedVariable iSharedVariableList iSharedVariableListener iSimpleFormerState iSnowState iSoundData iSoundDriver iSoundHandle iSoundListener iSoundLoader iSoundRender iSoundSource iSoundWrapper iSpiralState iSprite2DFactoryState iSprite2DUVAnimation iSprite2DUVAnimationFrame iSprite3DFactoryState iSprite3DState iSpriteAction iSpriteCal3DFactoryState iSpriteCal3DSocket iSpriteCal3DState iSpriteFrame iSpriteSocket iStandardReporterListener iStarsState iStaticPVSTree iStream iStreamFormat iStreamIterator iString iStringArray iStringSet iSuperLightmap iSyntaxService iTerraFormer iTerrainFactoryState iTerrainObjectState iTerraSampler iTextureCallback iTextureFactory iTextureHandle iTextureList iTextureLoaderContext iTextureManager iTextureType iTextureWrapper iThingEnvironment iThingFactoryState iThingState iTimerEvent iUserRenderBufferIterator iVerbosityManager iVFS iView iVirtualClock iVisibilityCuller iVisibilityCullerListener iVisibilityObject iVisibilityObjectIterator iVosA3DL iVosApi iVosObject3D iVosSector iWin32Assistant iWxWindow scfImplementation< Class > List of all members.

Public Member Functions

virtual void AddRefOwner (iBase **ref_owner)=0
 For weak references: add a reference owner.
virtual void DecRef ()=0
 Decrement the reference count.
virtual int GetRefCount ()=0
 Get the ref count (only for debugging).
virtual void IncRef ()=0
 Increment the number of references to this object.
virtual void * QueryInterface (scfInterfaceID iInterfaceID, int iVersion)=0
 Query a particular interface implemented by this object.
virtual void RemoveRefOwner (iBase **ref_owner)=0
 For weak references: remove a reference owner.

Detailed Description

This is the basic interface: all other interfaces should be derived from this one, this will allow us to always use at least some minimal functionality given any interface pointer.

Definition at line 104 of file scf_interface.h.


Member Function Documentation

virtual void iBase::AddRefOwner iBase **  ref_owner  )  [pure virtual]
 

For weak references: add a reference owner.

Implemented in scfImplementation< Class >.

virtual void iBase::DecRef  )  [pure virtual]
 

Decrement the reference count.

Implemented in csPoolEvent, and scfImplementation< Class >.

Referenced by csLoadPlugin(), csQueryPluginClass(), csQueryRegistry(), csQueryRegistryTagInterface(), scfImplementation< Class >::DecRef(), and scfCreateInstance().

virtual int iBase::GetRefCount  )  [pure virtual]
 

Get the ref count (only for debugging).

Implemented in scfImplementation< Class >.

virtual void iBase::IncRef  )  [pure virtual]
 

Increment the number of references to this object.

Implemented in scfImplementation< Class >.

Referenced by scfImplementation< Class >::scfImplementation(), and csParticleSystem::SetVisibleCallback().

virtual void* iBase::QueryInterface scfInterfaceID  iInterfaceID,
int  iVersion
[pure virtual]
 

Query a particular interface implemented by this object.

You are _not_ allowed to cast this to anything but a pointer to this interface (not even iBase). Use scfQueryInterface<interface> instead of using this method directly.

Implemented in scfImplementation< Class >.

Referenced by csLoadPlugin(), csQueryPluginClass(), csQueryRegistry(), csQueryRegistryTagInterface(), csTypedObjectIterator< T >::FindName(), scfImplementation< Class >::QueryInterface(), and scfCreateInstance().

virtual void iBase::RemoveRefOwner iBase **  ref_owner  )  [pure virtual]
 

For weak references: remove a reference owner.

Implemented in scfImplementation< Class >.


The documentation for this struct was generated from the following file:
Generated for Crystal Space by doxygen 1.4.4