MAK RTIspy API Documentation for HLA 1.3
Home
Modules
Namespaces
Classes
Files
Examples
Libraries
File List
File Members
include
HLA1516
RTI
RTI/VariableLengthData.h
Go to the documentation of this file.
1
/***********************************************************************
2
IEEE 1516.1 High Level Architecture Interface Specification C++ API
3
File: RTI/VariableLengthData.h
4
***********************************************************************/
5
6
#ifndef RTI_VariableLengthData_h
7
#define RTI_VariableLengthData_h
8
9
#include <RTI/SpecificConfig.h>
10
11
// A class to hold an arbitrary array of bytes for encoded values,
12
// attribute values, parameter values, etc. The class provides
13
// several ways of setting data, allowing tradeoffs between
14
// efficiency and memory management reponsibility.
15
16
namespace
rti1516
17
{
18
// Forward declaration for the RTI-internal class
19
// used to implement VariableLengthData
20
class
VariableLengthDataImplementation;
21
22
class
RTI_EXPORT
VariableLengthData
23
{
24
public
:
25
VariableLengthData
();
26
27
// Caller is free to delete inData after the call
28
VariableLengthData
(
void
const
* inData,
unsigned
long
inSize);
29
30
// Caller is free to delete rhs after the call
31
VariableLengthData
(
VariableLengthData
const
& rhs);
32
33
~
VariableLengthData
();
34
35
// Caller is free to delete rhs after the call
36
VariableLengthData
&
37
operator=(
VariableLengthData
const
& rhs);
38
39
// This pointer should not be expected to be valid past the
40
// lifetime of this object, or past the next time this object
41
// is given new data
42
void
const
* data()
const
;
43
unsigned
long
size()
const
;
44
45
// Caller is free to delete inData after the call
46
void
setData(
void
const
* inData,
unsigned
long
inSize);
47
48
// Caller is responsible for ensuring that the data that is
49
// pointed to is valid for the lifetime of this object, or past
50
// the next time this object is given new data.
51
void
setDataPointer(
void
* inData,
unsigned
long
inSize);
52
53
// Caller gives up ownership of inData to this object.
54
// This object assumes the responsibility of deleting inData
55
// when it is no longer needed.
56
void
takeDataPointer(
void
* inData,
unsigned
long
inSize);
57
58
private
:
59
60
// Friend declaration for an RTI-internal class that
61
// can access the implementation of a VariableLengthValue
62
friend
class
VariableLengthDataFriend;
63
64
VariableLengthDataImplementation*
_impl
;
65
};
66
}
67
68
#endif // RTI_VariableLengthData_h
Document ID: Generated on Tue May 7 16:26:47 EDT 2013 from SVN revision 126903
Copyright © 2005-2013 VT MÄK Inc. All Rights Reserved (
www.mak.com
)