VR-Exchange 2.9 API Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
actionRequestInteraction.h
Go to the documentation of this file.
1 /****************************************************************************
2  * Copyright (c) 2014 MAK Technologies, Inc.
3  * All rights reserved.
4  ****************************************************************************/
5 
9 
10 #if DtTENA
11 
12 #pragma once
13 
14 #include <vlTena/dllExport.h>
16 #include <vl/globalObjectDesignator.h>
17 #include <vlpi/entityIdentifier.h>
18 
19 namespace MAKVrExchange
20 {
21 
22  namespace DtTenaBroker
23  {
24 
25  class DtActionRequestInteraction;
26 
28  typedef void (*DtActionRequestInteractionCb)
29  (DtActionRequestInteraction* inter, void* usr);
30 
36  class DT_DLL_VLTENA DtActionRequestInteraction : public DtInteractionWithData
37  {
38  public:
39 
42  static DtInteraction* create();
43 
45  DtActionRequestInteraction();
46 
48  DtActionRequestInteraction( const DtActionRequestInteraction& orig );
49 
51  virtual ~DtActionRequestInteraction();
52 
54  DtActionRequestInteraction& operator=(
55  const DtActionRequestInteraction& orig);
56 
58  virtual void setSenderId( const DtEntityIdentifier& id );
59 
61  virtual const DtEntityIdentifier& senderId() const;
62 
64  virtual void setReceiverId( const DtEntityIdentifier& id );
65 
67  virtual const DtEntityIdentifier& receiverId() const;
68 
70  virtual void setRequestId( unsigned long id );
71 
73  virtual unsigned long requestId() const;
74 
76  virtual void setActionId( DtActionId id );
77 
79  virtual DtActionId actionId() const;
80 
82  virtual const char* name() const;
83 
85  virtual void printData() const;
86 
88  virtual void printDataToStream( std::ostream& stream ) const;
89 
92  static void addCallback( DtExerciseConn* conn,
93  DtActionRequestInteractionCb cb, void* usr );
94 
97  static void removeCallback( DtExerciseConn* conn,
98  DtActionRequestInteractionCb cb, void* usr );
99 
100  protected:
101 
102  DtEntityIdentifier myOrigEnt;
103  DtEntityIdentifier myReceiveEnt;
104  int myRequestId;
105  DtActionId myActionId;
106 
107  };
108 
109  }
110 }
111 
112 #endif // DtTENA
Contains the DtInteractionWithData class declaration.
#define DT_DLL_VLTENA
Definition: brokers/tenaBroker/vlTena/dllExport.h:26

Document ID: Generated on Tue Jun 25 16:45:35 EDT 2024 from SVN revision 267383
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)