chrono::cosimul::ChCosimulation Class Reference
  Description
Class for cosimulation interface.
Typically, a C::E program can instance an object from this class and use it to communicate with a 3rd party simulation tool at each time step. The communication is based on TCP sockets, where vectors of scalar values are exchanged back and forth. In this case, C::E will work as a server, waiting for a client to talk with.
#include <ChCosimulation.h>
| Public Member Functions | |
| ChCosimulation (utils::ChSocketFramework &mframework, int n_in_values, int n_out_values) | |
| Create a co-simulation interface.  More... | |
| bool | WaitConnection (int aport) | 
| Wait for a client to connect to the interface, on a given port, and wait until not connected.  More... | |
| bool | SendData (double mtime, ChVectorConstRef mdata) | 
| Exchange data with the client, by sending a vector of floating point values over TCP socket connection (values are double precision, little endian, 4 bytes each) Simulator actual time is also passed as first value. | |
| bool | ReceiveData (double &mtime, ChVectorRef mdata) | 
| Exchange data with the client, by receiving a vector of floating point values over TCP socket connection (values are double precision, little endian, 4 bytes each) External time is also received as first value. | |
Constructor & Destructor Documentation
◆ ChCosimulation()
| chrono::cosimul::ChCosimulation::ChCosimulation | ( | utils::ChSocketFramework & | mframework, | 
| int | n_in_values, | ||
| int | n_out_values | ||
| ) | 
Create a co-simulation interface.
- Parameters
- 
  mframework socket framework n_in_values number of scalar variables to receive each timestep n_out_values number of scalar variables to send each timestep 
Member Function Documentation
◆ WaitConnection()
| bool chrono::cosimul::ChCosimulation::WaitConnection | ( | int | aport | ) | 
Wait for a client to connect to the interface, on a given port, and wait until not connected.
aport is a free port number, for example 50009.
The documentation for this class was generated from the following files:
- /builds/uwsbel/chrono/src/chrono_cosimulation/ChCosimulation.h
- /builds/uwsbel/chrono/src/chrono_cosimulation/ChCosimulation.cpp
