16#ifndef CPP_APP_CONNECTION_H
17#define CPP_APP_CONNECTION_H
23#include "nlohmann/json.hpp"
71 std::array<unsigned int, 2>
size;
74 std::vector<std::vector<std::string>>
values;
99 void fromJson(
const nlohmann::json &j);
Class to propagate CR3BP dynamics in characteristic units.
Definition statistics.hpp:22
gui_data_types_e
Type definition for valid connections in the warptwin GUI.
Definition Connection.h:38
@ FRAME_PTR
Definition Connection.h:44
@ UNDEFINED
Definition Connection.h:45
@ QUATERNION
Definition Connection.h:43
@ NUMERIC
Definition Connection.h:39
@ STD_VECTOR
Definition Connection.h:49
@ VECTOR3
Definition Connection.h:42
@ POINTER
Definition Connection.h:41
@ MATRIX
Definition Connection.h:46
@ TIME
Definition Connection.h:48
@ STRING
Definition Connection.h:40
@ ARRAY
Definition Connection.h:47
connection_type_e
Hold acceptable values for connection type.
Definition Connection.h:29
@ LOG
Definition Connection.h:32
@ ALL_INPUT
Definition Connection.h:33
@ OUTPUT
Definition Connection.h:34
@ INPUT
Definition Connection.h:31
@ PARAM
Definition Connection.h:30
const std::vector< std::pair< connection_type_e, std::string > > INPUT_CONN_TYPES
Hold all connection type enum values to loop through.
Definition Connection.h:53
Hold all information related to a connection point in the ImGUI UX.
Definition Connection.h:57
int writable
Boolean indicating whether the connection is writable (true) or not (false).
Definition Connection.h:77
std::string displayname
GUI display name of the connection.
Definition Connection.h:92
gui_data_types_e data_type
The data type associated with the connection.
Definition Connection.h:68
int user_set
Flag to indicate whether user has set this value via the GUI.
Definition Connection.h:89
long unique_id
The unique ID of the connection given by the ImGUI UX or other.
Definition Connection.h:62
std::vector< std::vector< std::string > > values
The values held within the connection. All values are stored as string.
Definition Connection.h:74
long paired_connection_id
The connection to which this connection is paired, given by unique ID.
Definition Connection.h:80
connection_type_e connection_type
The type of connection.
Definition Connection.h:65
long parent_node_id
The parent to this connection, given by its unique ID number.
Definition Connection.h:86
std::array< unsigned int, 2 > size
The size of the connection as rows, columns.
Definition Connection.h:71
void dump()
Output all connection information.
Definition Connection.cpp:84
void fromJson(const nlohmann::json &j)
Create Connection object from json.
Definition Connection.cpp:21
nlohmann::json toJson()
Create json object from Connection.
Definition Connection.cpp:55
std::string description
Description of the connection parsed from warptwin files.
Definition Connection.h:95
std::string name
The name of the connection.
Definition Connection.h:59
std::vector< long > log_connection_ids
Store multiple inputs for logging connections that allow it.
Definition Connection.h:83