VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
environmentProcessPublisherForBulk.h
Go to the documentation of this file.
1 /****************************************************************************
2  * Copyright (c) 2017 VT MAK
3  * All rights reserved.
4  ****************************************************************************/
5 
9 
10 #pragma once
11 
14 #include <vl/environmentProcessPublisher.h>
15 #include <vlutil/vlString.h>
16 #include <vlutil/vlSmartPointers.h>
17 
20 
24 {
25 public:
26 
29 
31  virtual void setBulkManager(std::weak_ptr<DtBulkEnvironmentProcessManager> bulkMgr);
32 
35  virtual bool tick() override;
36 
39  virtual int addToBulk(int index, DtBulkEnvironmentProcessPublisher* bulkPub);
40 
43  virtual unsigned totalEnvironmentalRecordSize() const;
44 
45 #if DtDIS
46  static DtEnvironmentProcessPublisherForBulk* createPublisherForBulk(
48  DtExerciseConn* conn,
49  const DtObjectId& id = DtObjectId::defaultId());
50 
51  typedef DtEnvironmentProcessPublisherForBulk* (*CreatorFunction)(
52  DtExerciseConn* conn, const DtObjectId& id);
53 #else
54  static DtEnvironmentProcessPublisherForBulk* createPublisherForBulk(
56  DtExerciseConn* conn,
57  const char* name = 0,
58  const DtDDMRegionSet* regionSetToUse = 0);
59 
60  typedef DtEnvironmentProcessPublisherForBulk* (*CreatorFunction)(
61  DtExerciseConn* conn, const char* name, const DtDDMRegionSet* regionSetToUse);
62 #endif
63 
65  static CreatorFunction setCreatorFunction(CreatorFunction creator);
66 
67 protected:
68 
69 #if DtDIS
72  DtExerciseConn* conn,
73  const DtObjectId& id = DtObjectId::defaultId());
74 #else
77  DtExerciseConn* conn,
78  const char* name = 0,
79  const DtDDMRegionSet* regionSetToUse = 0);
80 #endif
81 
84 
87 
91 
92 protected:
93 
95  static CreatorFunction theCreator;
96 
98  std::weak_ptr<DtBulkEnvironmentProcessManager> myBulkManager;
99 
102 
103 };
DtEnvironmentProcessPublisherForBulk. An EnvironmentProcess Publisher that adds a single EnvironmentP...
Definition: environmentProcessPublisherForBulk.h:23
DtEnvironmentBulkRecord is an environmental record that acts as the separator between individual envi...
Definition: environmentalBulkRecord.h:37
std::weak_ptr< DtBulkEnvironmentProcessManager > myBulkManager
The bulk environment process manager that keeps track of this publisher.
Definition: environmentProcessPublisherForBulk.h:98
DtEnvironmentBulkRecord myBulkRecord
For assembling the record that precedes a new environmental.
Definition: environmentProcessPublisherForBulk.h:101
Contains the DtEnvironmentBulkRecord class declaration.
DtBulkEnvironmentProcessPublisher. An EnvironmentProcess Publisher that publishes a series of Environ...
Definition: bulkEnvironmentProcessPublisher.h:22
static CreatorFunction theCreator
The current creator function.
Definition: environmentProcessPublisherForBulk.h:95
DtBulkEnvironmentProcessManager. A class to manage bulk EnvironmentProcess publishers, ensuring that no publisher handles more individual EnvironmentProcess data than it should.
Definition: bulkEnvironmentProcessManager.h:24
#define DT_DLL_vrfExtObjects
Definition: dllExport.h:23

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)