VR-Link API Documentation for HLA 1.3
 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-2010 VT MAK
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

Document ID: Generated on Mon Jun 22 21:18:40 EDT 2020 from SVN revision 213785
Copyright © 2005-2018 MAK Technologies. All Rights Reserved (www.mak.com)