SimGroup

Engine/source/console/simSet.h

A group of SimObjects.

More...

Public Types

Parent 

Public Friends

class
class

Private Functions

_addObject(SimObject * object, bool forcePushBack)

Public Functions

addObject(SimObject * object)

Add the given object to the set.

addObject(SimObject * object, const char * name)

Remove all objects from this set.

Return a shallow copy of this object.

Return a deep copy of this object.

findObject(const char * name)

Find a named sub-object of this object.

Called when the object is removed from the sim.

Remove an object from the end of the list.

bool

Process constructor options. (ie, new SimObject(1,2,3))

Add the given object to the end of the object list of this set.

Remove the given object from the set.

Detailed Description

A group of SimObjects.

A SimGroup is a stricter form of SimSet. SimObjects may only be a member of a single SimGroup at a time.

The SimGroup will automatically enforce the single-group-membership rule.

// From engine/sim/simPath.cc - getting a pointer to a SimGroup
SimGroup* pMissionGroup = dynamic_cast<SimGroup*>(Sim::findObject("MissionGroup"));

// From game/trigger.cc:46 - iterating over a SimObject's group.
SimObject* trigger = ...;
SimGroup* pGroup = trigger->getGroup();
for (SimGroup::iterator itr = pGroup->begin(); itr != pGroup->end(); itr++)
{
   // do something with *itr
}

Public Types

typedef SimSet Parent 

Public Friends

Private Attributes

SimNameDictionary mNameDictionary 

Private Functions

_addObject(SimObject * object, bool forcePushBack)

_removeObjectNoLock(SimObject * )

Public Functions

~SimGroup()

addObject(SimObject * object)

Reimplemented from: SimSet

Reimplemented by: ForestBrush, SimPath::Path, GuiContainer, GuiControlArrayControl, GuiDynamicCtrlArrayControl, GuiFrameSetCtrl, GuiRolloutCtrl, GuiScrollCtrl, GuiStackControl, GuiControl, GuiFormCtrl, GuiMenuBar, Scene

addObject(SimObject * object, const char * name)

addObject(SimObject * object, SimObjectId id)

clear()

Reimplemented from: SimSet

Reimplemented by: Forest, GuiPopUpMenuCtrl, GuiPopUpMenuCtrlEx, GuiTextListCtrl, DbgFileView, CreatorTree, VPath

clone()

Reimplemented from: SimSet

DECLARE_CONOBJECT(SimGroup )

deepClone()

Reimplemented from: SimObject

findObject(const char * name)

Reimplemented from: SimSet

getObject(const S32 & index)

onRemove()

Reimplemented from: SimSet

Reimplemented by: afxCamera, afxChoreographer, afxMagicMissile, afxMagicSpell, afxSelectron, afxSpellBook, afxBillboard, afxModel, afxMooring, afxParticleEmitter, afxParticleEmitterPath, afxProjectile, afxZodiacPlane, afxParticlePool, ScriptGroup, BasicClouds, CloudLayer, DecalRoad, MeshRoad, River, ScatterSky, SkyBox, Sun, TimeOfDay, VolumetricFog, VolumetricFogRTManager, WaterBlock, WaterObject, WaterPlane, Forest, ForestWindEmitter, GuiTextListCtrl, GuiCanvas, GuiControl, GuiOffscreenCanvas, GuiEditCtrl, GuiInspector, GuiMenuBar, GuiMessageVectorCtrl, EditTSCtrl, GuiConvexEditorCtrl, CoverPoint, NavMesh, NavPath, OpenVROverlay, OpenVRTrackedObject, DInputManager, UInputManager, PostEffect, SceneObject, SceneSpace, SimPath::Path, Marker, SceneRootZone, SFXSound, SFXSource, NetConnection, NetObject, AccumulationVolume, AIPlayer, Camera, ConvexShape, Debris, RenderMeshExample, RenderObjectExample, RenderShapeExample, Explosion, fxFoliageReplicator, fxShapeReplicator, GroundCover, Lightning, ParticleEmitter, ParticleEmitterNode, Precipitation, Ribbon, RibbonNode, Splash, GameBase, GameConnection, GroundPlane, Item, LevelInfo, LightBase, BoxEnvironmentProbe, ReflectionProbe, Skylight, SphereEnvironmentProbe, MissionArea, MissionMarker, CameraBookmark, NotesObject, PathCamera, PathShape, PhysicalZone, PhysicsDebris, PhysicsForce, PhysicsShape, Player, Prefab, Projectile, ProximityMine, RigidShape, Scene, SFXEmitter, ShapeBase, StaticShape, Trigger, TSStatic, AITurretShape, TurretShape, FlyingVehicle, HoverVehicle, Vehicle, VehicleBlocker, WheeledVehicle, TerrainBlock, VActor, VPath

popObject()

Reimplemented from: SimSet

processArguments(S32 argc, ConsoleValueRef * argv)

Reimplemented from: SimObject

Reimplemented by: WaterObject, GuiControl, SFXSource

pushObject(SimObject * object)

Reimplemented from: SimSet

removeObject(SimObject * object)

Reimplemented from: SimSet

Reimplemented by: SimPath::Path, GuiContainer, GuiControlArrayControl, GuiFrameSetCtrl, GuiRolloutCtrl, GuiStackControl, GuiControl, GuiFormCtrl, Scene