VR-Exchange 2.8 API Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
pSetDataInter.h
Go to the documentation of this file.
1 /****************************************************************************
2  * Copyright (c) 2016 VT MAK
3  * All rights reserved.
4  ****************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <portal/pInteraction.h>
13 
14 namespace MAKVrExchange
15 {
16 
17  class DtPortalConnection;
18 
22  : public DtPortalInteraction
23  {
24  public:
25 
27  typedef void (*functionCallback_type) (
28  const DtPortalSetDataInteraction& interaction, void* userData );
29 
32 
35 
37  virtual ~DtPortalSetDataInteraction();
38 
40  DtPortalSetDataInteraction& operator = ( const DtPortalSetDataInteraction& other );
41 
43  static void addCallback( DtPortalConnection* connection,
44  functionCallback_type callbackFunction, void* userData );
45 
47  static void removeCallback( DtPortalConnection* connection,
48  functionCallback_type callbackFunction, void* userData );
49 
52 
53  DtDEC_ATTRIBUTE( DtString, OriginatingEntity, originatingEntity );
54  DtDEC_ATTRIBUTE( DtString, ReceivingEntity, receivingEntity );
55  DtDEC_ATTRIBUTE( DtU32, RequestIdentifier, requestIdentifier );
56  DtDEC_ATTRIBUTE( DtFixedLengthDataArray, FixedDatums, fixedDatums );
57  DtDEC_ATTRIBUTE( DtAttributeValuePairList, VariableDatumSet, variableDatumSet );
58 
60 
62  public:
63 
65 
66  static DtPortalMessage* create();
67 
68  virtual unsigned int netSize() const;
69  virtual void writeSelfToBuffer( void* buffer, int bufferSize ) const;
70  virtual void readSelfFromBuffer( const void* buffer, int bufferSize );
71 
72  virtual std::ostream& printDataToStream( std::ostream& stream ) const;
73 
74  };
75 
76 
78  {
79  return new DtPortalSetDataInteraction();
80  }
81 
82 }
#define DT_DLL_LIBPORTAL
Definition: include/portal/dllExport.h:20
#define DtDEC_ATTRIBUTE(T, N, n)
A Macro to define an attribute; as well as make an accessor and mutator for that attribute.
Definition: addAttribute.h:49
The base class for all messages passed through the portal.
Definition: pMessage.h:65
Contains the DtPortalInteraction class declaration.
static const DtPortalMessageKind theKind
NOTE: DtDEC_ATTRIBUTE resets the access specifier to protected.
Definition: pSetDataInter.h:64
DtPortalInteractions are a special type of DtPortalMessages which are used to transmit simulation dat...
Definition: pInteraction.h:21
std::vector< DtFixedLengthData > DtFixedLengthDataArray
A container of DtFixedLengthData.
Definition: fixedLengthData.h:67
Connects a broker to the Portal Data Exchange.
Definition: pConnection.h:49
Portal Set Data Interaction class.
Definition: pSetDataInter.h:21
static DtPortalMessage * create()
Definition: pSetDataInter.h:77
std::list< DtAttributeValuePair > DtAttributeValuePairList
A list of DtAttributeValuePairs.
Definition: variableLengthData.h:79
DtPortalMessageKind
A List of message kinds distributed with the Portal.
Definition: pMessageKinds.h:23

Document ID: Generated on Tue Aug 16 16:15:26 EDT 2022 from SVN revision 245901
Copyright © 2005-2022 MAK Technologies. All Rights Reserved (www.mak.com)