VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
taskInterHLA.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2025 MAK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 
8 
9 #pragma once
10 
11 #if DtHLA
12 
14 #include <vlutil/vlString.h>
15 #include <vl/globalObjectDesignator.h>
16 #include <vl/hlaLogicalTime.h>
17 #include <vl/hlaLogicalTimeInterval.h>
18 #include <vl/interactionWithEncDec.h>
19 #include <vlpi/entityType.h>
20 #include <vlpi/entityIdentifier.h>
21 #include <matrix/vlVector.h>
24 
25 class DtExerciseConn;
28 
29 class DtTaskInter;
30 
31 const unsigned START_WHEN_SIZE = 18;
32 
34 typedef void (*DtTaskInterCb) (DtTaskInter* inter,
35  void* usr);
36 
40 {
41 public:
42 
44  DtTaskInter();
45 
47  virtual ~DtTaskInter() override;
48 
50  DtTaskInter(const DtTaskInter& orig);
51 
53  DtTaskInter& operator=(const DtTaskInter& orig);
54 
56  virtual void printData() const override;
57 
59  virtual void printDataToStream(std::ostream &stream) const override;
60 
62  virtual void setTaskId(unsigned val);
63 
65  virtual unsigned taskId() const;
66 
68  virtual void setTaskee(const DtVrlUuid& val);
69 
71  virtual const DtVrlUuid& taskee() const;
72 
74  virtual void setTasker(const std::wstring& val);
75 
77  virtual const std::wstring& tasker() const;
78 
80  virtual void setStartWhen(const std::wstring& val);
81 
83  virtual const std::wstring& startWhen() const;
84 
86  virtual void setWhy(const std::wstring& val);
87 
89  virtual const std::wstring& why() const;
90 
92  virtual void setTaskMode(DtTaskModeEnum8 val);
93 
95  virtual DtTaskModeEnum8 taskMode() const;
96 
98  virtual const char *name() const override { return "DtTaskInter"; }
99 
100 public:
101 
104  static DtInteraction* create();
105 
108  static void addCallback(DtExerciseConn* conn,
109  DtTaskInterCb cb, void* usr,
110  DtDDMRegionSP region = DtDDMRegionSP());
111  static void removeCallback(DtExerciseConn* conn,
112  DtTaskInterCb cb, void* usr,
113  DtDDMRegionSP region = DtDDMRegionSP());
114 
115 protected:
116  virtual const char *
117  interactionClassToUse(DtExerciseConn *exConn) const override;
118 
119  virtual DtInteractionDecoder *
120  createDecoder(DtExerciseConn *exConn) const override;
121  virtual DtInteractionEncoder *
122  createEncoder(DtExerciseConn *exConn) const override;
123 
124 
125 protected:
126 
127  unsigned myTaskId;
128  DtVrlUuid myTaskee;
129  std::wstring myTasker;
130  std::wstring myStartWhen;
131  std::wstring myWhy;
133 
134 };
135 
136 
137 #endif
DtTaskModeEnum8
Definition: taskInterEnums.h:11
std::wstring myWhy
Definition: taskInterHLA.h:131
std::wstring myStartWhen
Definition: taskInterHLA.h:130
virtual const char * name() const override
Name of the interaction. (Not necessarily the ClassName from the FOM.)
Definition: taskInterHLA.h:98
void(* DtTaskInterCb)(DtTaskInter *inter, void *usr)
DtTaskInter callback function signature.
Definition: taskInterHLA.h:34
std::wstring myTasker
Definition: taskInterHLA.h:129
unsigned myTaskId
Definition: taskInterHLA.h:127
const unsigned START_WHEN_SIZE
Definition: taskInterHLA.h:31
voidpf stream
Definition: ioapi.h:39
DtTaskModeEnum8 myTaskMode
Definition: taskInterHLA.h:132
Defines enumerations used in task interactions.
Instances of DtTaskInter are used to store state data for ETR_Root.ETR_Task interactions.
Definition: taskInterHLA.h:39
DtVrlUuid myTaskee
Definition: taskInterHLA.h:128
#define DT_DLL_vrfExtObjects
Definition: dllExport.h:23

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)