VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
organizedManagedObjectList.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2020 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
9 #pragma once
10 
13 
14 class DtLocalObject;
16 
18 {
19 private:
25 
26 public:
29  const DtVrfObjectPredicate& predicate, bool reevaluateEveryBegin = false,
30  const DtString& listName = "");
31 
33 
34  typedef std::vector<DtSimObjectReference>::iterator iterator;
35  typedef std::vector<DtSimObjectReference>::const_iterator const_iterator;
36 
41  virtual iterator begin();
42  virtual const_iterator begin() const;
43  virtual iterator end();
44  virtual const_iterator end() const;
45  virtual const_iterator find(const DtUUID& entity) const;
46  virtual size_t size() const;
48 
49 protected:
50  virtual void processSubordinateChanged(const DtUUID&);
51  virtual void init(const DtSubordinateManager*);
52  virtual void populateList();
53 
54 protected:
55  boost::signals2::scoped_connection mySubordinateAddedConnection;
56  boost::signals2::scoped_connection mySubordinateRemovedConnection;
59  std::vector<DtSimObjectReference> myFilteredObjectList;
63 };
64 
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: organizedManagedObjectList.h:17
DtVrfObjectPredicate * myPredicate
Definition: organizedManagedObjectList.h:60
voidpf void uLong size
Definition: ioapi.h:39
boost::signals2::scoped_connection mySubordinateRemovedConnection
Definition: organizedManagedObjectList.h:56
std::vector< DtSimObjectReference > myFilteredObjectList
Definition: organizedManagedObjectList.h:59
DtString myListName
Definition: organizedManagedObjectList.h:62
Contains the DtVrfObjectPredicate class declaration.
Definition: vrfObjectPredicate.h:20
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
std::vector< DtSimObjectReference >::iterator iterator
Definition: organizedManagedObjectList.h:34
boost::signals2::scoped_connection mySubordinateAddedConnection
Definition: organizedManagedObjectList.h:55
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
bool myNeedsListUpdate
Definition: organizedManagedObjectList.h:57
bool myReevaluateEveryBegin
Definition: organizedManagedObjectList.h:58
const DtSubordinateManager * mySubordinateManager
Definition: organizedManagedObjectList.h:61
std::vector< DtSimObjectReference >::const_iterator const_iterator
Definition: organizedManagedObjectList.h:35
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 Tue Sep 24 19:28:17 EDT 2024 from SVN revision 269799
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)