VR-Exchange 2.7 API Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
pVrfCreateObj.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/dllExport.h>
13 #include <portal/pInteraction.h>
14 
15 namespace MAKVrExchange
16 {
17 
18  class DtPortalConnection;
19 
23  {
24  public:
25 
27  typedef void (*functionCallback_type) (
28  const DtPortalVrfCreateObjInteraction &interaction, void *userData);
29 
32 
35 
37  static void addCallback( DtPortalConnection* connection,
38  functionCallback_type callbackFunction, void* userData );
39 
41  static void removeCallback( DtPortalConnection* connection,
42  functionCallback_type callbackFunction, void* userData );
43 
46  DtDEC_ATTRIBUTE( DtEntityIdentifier, Address, address );
47  DtDEC_ATTRIBUTE( DtString, Name, name );
48  DtDEC_ATTRIBUTE( DtEntityType, ObjectType, objectType );
49  DtDEC_ATTRIBUTE( DtU32, ForceType, forceType );
50  DtDEC_ATTRIBUTE( DtString, Label, label );
51  DtDEC_ATTRIBUTE( DtReal, Heading, heading );
52  DtDEC_ATTRIBUTE( DtAttributeValuePairList, Vertices, vertices );
53  DtDEC_ATTRIBUTE( bool, Projection, projection );
54  DtDEC_ATTRIBUTE( bool, ClosedFigure, closedFigure );
55  DtDEC_ATTRIBUTE( DtU32, Appearance, appearance );
56  DtDEC_ATTRIBUTE( bool, CreateSubObjects, createSubObjects );
57  DtDEC_ATTRIBUTE( bool, ClampToGround, clampToGround);
59 
61  public:
62 
64  virtual void addVertex( DtVector point );
65 
67 
68  static DtPortalMessage* create();
69 
70  virtual unsigned int netSize() const;
71  virtual void writeSelfToBuffer( void* buffer, int bufferSize ) const;
72  virtual void readSelfFromBuffer( const void* buffer, int bufferSize );
73 
74  virtual std::ostream& printDataToStream( std::ostream& stream ) const;
75 
76  private:
77 
80 
82  bool operator == ( const DtPortalVrfCreateObjInteraction& ) const;
83 
85  bool operator != ( const DtPortalVrfCreateObjInteraction& ) const;
86 
87  };
88 
89 
91  {
93  }
94 
95 }
#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
static const DtPortalMessageKind theKind
Definition: pVrfCreateObj.h:66
The base class for all messages passed through the portal.
Definition: pMessage.h:65
Contains the DtPortalInteraction class declaration.
static DtPortalMessage * create()
Definition: pVrfCreateObj.h:90
DtPortalInteractions are a special type of DtPortalMessages which are used to transmit simulation dat...
Definition: pInteraction.h:21
Vrf CreateObj Interaction class.
Definition: pVrfCreateObj.h:22
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

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)