13#include <simgear/compiler.h>
14#include <simgear/props/props.hxx>
15#include <simgear/structure/subsystem_mgr.hxx>
20class FGIO :
public SGSubsystem
32 void update(
double dt)
override;
47 FGProtocol* parse_port_config(
const std::string& cfgstr,
bool& o_ok);
50 void addToPropertyTree(
const std::string
name,
const std::string config);
51 void removeFromPropertyTree(
const std::string
name);
52 std::string generateName(
const std::string protocol);
58 typedef std::vector<FGProtocol*> ProtocolVec;
59 ProtocolVec io_channels;
61 SGPropertyNode_ptr _realDeltaTime;
63 bool commandAddChannel(
const SGPropertyNode* arg, SGPropertyNode* root);
64 bool commandRemoveChannel(
const SGPropertyNode* arg, SGPropertyNode* root);
static const char * staticSubsystemClassId()
void update(double dt) override
static bool isMultiplayerRequested()
helper to determine early in startup, if MP will be used.
std::vector< std::string > string_list
static bool add_channel(const string &type, const string &channel_str)