VR-Exchange 2.7 API Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
pEventReportInter.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 DtPortalEventReportInteraction& interaction, void* userData );
29 
32 
35 
38 
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, SenderId, senderId );
54  DtDEC_ATTRIBUTE( DtString, ReceiverId, receiverId );
55  DtDEC_ATTRIBUTE( DtU32, EventType, eventType );
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 &str ) const;
73 
74  };
75 
76 
78  {
79  return new DtPortalEventReportInteraction();
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.
DtPortalInteractions are a special type of DtPortalMessages which are used to transmit simulation dat...
Definition: pInteraction.h:21
Portal Event Report Interaction class.
Definition: pEventReportInter.h:21
std::vector< DtFixedLengthData > DtFixedLengthDataArray
A container of DtFixedLengthData.
Definition: fixedLengthData.h:67
static DtPortalMessage * create()
Definition: pEventReportInter.h:77
Connects a broker to the Portal Data Exchange.
Definition: pConnection.h:49
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
static const DtPortalMessageKind theKind
NOTE: DtDEC_ATTRIBUTE resets the access specifier to protected.
Definition: pEventReportInter.h:64

Document ID: Generated on Mon Apr 19 15:55:22 EDT 2021 from SVN revision 227909
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)