VR-Link API Documentation for HLA 1516
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
vlBaseMsg.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 1992-2025 MAK Technologies, Inc
3 ** All rights reserved.
4 *********************************************************************/
8 #pragma once
9 
10 #include "vlMachineTypes.h"
11 
12 #ifdef DtUSE_UTILITIES_NAMESPACE
13 namespace DtUSE_UTILITIES_NAMESPACE
14 {
15 #endif
16 
17 typedef struct DtBufferPlaceHolder *DtBufferPtr;
18 #define DtUSE_INTERNAL_BUFFER_REP 0
19 #ifdef DtUSE_UTILITIES_NAMESPACE
20 #define DtUSE_INTERNAL_BUFFER (DtUSE_UTILITIES_NAMESPACE::DtBufferPtr(0))
21 #else
22 #define DtUSE_INTERNAL_BUFFER (DtBufferPtr(0))
23 #endif
24 
28 {
29 public:
30 
32  virtual ~DtBaseMsg();
33 
35  DtBaseMsg(const DtBaseMsg& msg,
37 
39  DtBaseMsg &operator=(const DtBaseMsg& msg);
40 
42  virtual const char* netRep() const;
43 
45  virtual int length() const;
46 
49  DtBaseMsg();
50 
51  void initMsg(int size, DtBufferPtr bufferPtr);
52  void initMsg(const void *initial, int size, DtBufferPtr bufferPtr);
53 
59  virtual void changeSize(int size);
60 
65  virtual void changeBufferSize(int size);
66 
70  virtual void insertBytes(int offset, int numBytes);
71 
75  virtual void insertBytes(void *address, int numBytes);
76 
79  virtual void deleteBytes(int offset, int numBytes);
80 
84  virtual void deleteBytes(void *address, int numBytes);
85 
87  virtual void clearAll();
88 
92  virtual void *newInternalBuffer(int size);
93 
96  virtual void sizeChanged(int size) = 0;
97 
98 protected:
99 
100  void *myNetMsg;
105 };
106 
107 
108 inline const char* DtBaseMsg::netRep() const
109 {
110  return (char*) myNetMsg;
111 }
112 
113 #ifdef DtUSE_UTILITIES_NAMESPACE
114 }
115 #endif
int myIntBuffSize
Definition: vlBaseMsg.h:102
void * myInternalBuff
Definition: vlBaseMsg.h:101
virtual const char * netRep() const
Get network representation.
Definition: vlBaseMsg.h:108
void * myNetMsg
Definition: vlBaseMsg.h:100
int myNetworkMsgSize
Definition: vlBaseMsg.h:104
A bass class for PDUs and other network messages.
Definition: vlBaseMsg.h:27
int myMsgSize
Definition: vlBaseMsg.h:103
struct DtBufferPlaceHolder * DtBufferPtr
Definition: vlBaseMsg.h:17
#define DtUSE_INTERNAL_BUFFER
Definition: vlBaseMsg.h:22
This file contains typedefs for machine dependant types.
#define DT_DLL_VLUTIL
Definition: vlMachineTypes.h:109

Document ID: Generated on Thu Oct 16 00:12:25 EDT 2025 from SVN revision 280738
Copyright © 1992-2025 MAK Technologies. All Rights Reserved (www.mak.com)