VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
aggregateLocalObjectFacade.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2020 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
6 #pragma once
7 
13 
14 class DtLocalObject;
17 class DtFormationState;
18 
28 {
29 public:
32 
35 
36  bool isUsable() const;
37 
38  void setNextFrameDestroyed(bool);
39 
43  enum DtAggregateState nextFrameAggregateState() const;
44  void setNextFrameAggregateState(enum DtAggregateState);
45 
46  DtString nextFrameFormationName() const;
47  void setNextFrameFormationName(const DtString&);
48 
49  DtAggregateFormation nextFrameFormation() const;
50  void setNextFrameFormation(DtAggregateFormation);
52 
53  void nextFrameAddSubordinate(const DtUUID&, int index = -1);
54  bool nextFrameRemoveSubordinate(const DtUUID&);
55  void nextFrameRemoveAllSubordinates();
56 
57  bool isNextFrameSubordinate(const DtUUID&) const;
58 
59  bool nextFrameCanHaveSubordinates() const;
60 
61  const DtSimObjectReferenceList& nextFrameSubordinates() const;
62 
63  double nextFrameFormationHalfLength() const;
64 
65  virtual bool computeExtentFromParameters(const DtString& formationName, DtExtent& extent) const;
66 
67  bool nextFrameAggregatedExtent(DtExtent& extent) const;
68  int nextFrameNumSubordinates() const;
69 
70  DtFormationState* formationState();
71  const DtFormationState* formationState() const;
72 
73  DtSubordinateManager* nextFrameSubordinateManager();
74 
75  void setNextFrameActivity(const DtString&);
76  DtString nextFrameActivity() const;
77 
78  bool needsDesignatorReorder() const;
79 
80 protected:
81  virtual DtLocalObject* localObject() const = 0;
82  virtual void setupDecorator() override;
83 
84 protected:
88 };
89 
DtExtent myCachedExtent
Definition: aggregateLocalObjectFacade.h:86
UUID is a unique ID wrapper class.
Definition: uuid.h:59
Objects may contain a collection of other objects, such as overlays or pseudo-aggregate entities...
Definition: subordinateManager.h:43
Definition: formationState.h:41
virtual DtLocalObject * localObject() const =0
The DtExtent represents an axis-aligned 3d bounding box.
Definition: extent.h:43
DtString myExtentCachedForFormation
Definition: aggregateLocalObjectFacade.h:85
This DtMovementLocalObjectFacadeInterface class will provide API functionality for objects that have ...
Definition: movementLocalObjectFacade.h:12
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
This class will contain the subordinate manager that is used to manage the subordinates of this objec...
Definition: aggregateDecorator.h:49
DtLocalObjectFacade< DtAggregateSimObjectFacadeInterface, DtAggregateLocalObjectFacadeInterface > DtAggregateLocalObjectFacade
Definition: aggregateLocalObjectFacade.h:90
This DtAppearanceLocalObjectFacadeInterface class will provide API functionality for objects that hav...
Definition: appearanceLocalObjectFacade.h:15
This is a convenience list that will add DtSimObjectReference objects and modify the list as objects ...
Definition: simObjectReferenceList.h:23
This DtAggregateLocalObjectFacadeInterface class will provide API functionality for aggregate level c...
Definition: aggregateLocalObjectFacade.h:24
DtAggregateLocalObjectDecorator * myAggregateLocalObjectDecorator
Definition: aggregateLocalObjectFacade.h:87
The DtRangeItemLocalObjectFacadeInterface class deals with range ring items for objects that support ...
Definition: rangeItemLocalObjectFacade.h:15
A locally simulated VRF object. Holds all internal and external data for the object, and provides access to both the current frame and next frame state data for the object. All current frame data is read-only, and next-frame data can be written to. No thread safety guarantees are made on this object during the simulation frame and it should only be accessed by the thread that is simulating the object.
Definition: localObject.h:86

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)