VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
outputPort.h
Go to the documentation of this file.
1 /****************************************************************************
2  * Copyright (c) 2022 MAK Technologies, Inc.
3  * All rights reserved.
4  ****************************************************************************/
5 
9 
10 #pragma once
11 
13 
14 #include <vlutil/vlString.h>
15 #include <vlutil/vlList.h>
16 
17 class DtPortConnection;
18 class DtPortData;
19 
43 {
44 public:
45 
48  DtOutputPort( const DtString& portName );
49 
51  virtual ~DtOutputPort();
52 
53 private:
54 
56  DtOutputPort();
57 
59  DtOutputPort( const DtOutputPort& );
60 
62  DtOutputPort& operator = ( const DtOutputPort& );
63 
64 public:
65 
68  virtual bool init();
69 
71  virtual const DtString& name() const;
72 
76  virtual const DtString type() const = 0;
77 
80  virtual void createPortData() = 0;
81 
85  virtual DtPortData* data();
86  virtual const DtPortData* data() const;
88 
90  virtual void sendData();
91 
93  virtual void addConnection(DtPortConnection* conn);
95  virtual void removeConnection(DtPortConnection* conn);
96 
100  virtual bool attemptToActivate();
101 
107  virtual bool attemptToActivateAtLowestPriority();
108 
111  virtual bool canActivate() const;
112 
115  virtual void deactivate();
116 
120  virtual void allowDeactivation();
121 
123  virtual bool active() const;
124 
126  virtual const DtList* connectionList() const;
127 
130  virtual void setConnectionPriority(int priority);
131 
134  virtual bool enabled() const;
135  virtual void setEnabled(bool flag);
137 
138  virtual void updateImgui();
140  virtual void updateImguiValue();
141 
142 protected:
143 
145  bool myEnabled;
146 
149 
152 
153 };
bool myEnabled
Definition: outputPort.h:145
This is an abstract base class for all data elements that are passed through ports. Derived types will be such things as DtAnalogPortData which manage a double, or more complex data types such as a target list. Derived types must provide a type() method with a unique type string and a clone() method for copying the data.
Definition: portData.h:25
DtString myName
Definition: outputPort.h:144
A DtPortConnection represents a connection between a DtOutputPort and a DtInputPort. PortConnections can be either active or inactive. An active connection is a connection which is supplying data, while an inactive connection is not currently supplying data. Data must be passed through connections as DtPortData.
Definition: portConnection.h:29
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
DtOutputPorts are data ports owned by data producers. They are connected to DtPortConnections and sen...
Definition: outputPort.h:42
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
DtList myConnectionList
List of outgoing connections.
Definition: outputPort.h:151
DtPortData * myData
locally instantiated.
Definition: outputPort.h:148

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)