/home/runner/work/kynema/kynema/kynema/src/interfaces/components/controller_input.hpp Source File

Kynema API: /home/runner/work/kynema/kynema/kynema/src/interfaces/components/controller_input.hpp Source File
Kynema API
A flexible multibody structural dynamics code for wind turbines
Loading...
Searching...
No Matches
controller_input.hpp
Go to the documentation of this file.
1#pragma once
2
3#include <string>
4
6
16 std::string shared_lib_path;
17 std::string function_name;
18 std::string input_file_path;
19 std::string simulation_name;
20
22 ControllerInput() = default;
23
32 std::string lib_path, std::string func_name = "DISCON", std::string inp_file_path = "",
33 std::string sim_name = ""
34 )
35 : shared_lib_path(std::move(lib_path)),
36 function_name(std::move(func_name)),
37 input_file_path(std::move(inp_file_path)),
38 simulation_name(std::move(sim_name)) {}
39
42 [[nodiscard]] bool IsEnabled() const { return !shared_lib_path.empty(); }
43};
44
45} // namespace kynema::interfaces::components
Definition aerodynamics.cpp:3
Configuration parameters for a DISCON-style turbine controller.
Definition controller_input.hpp:15
std::string simulation_name
Simulation name for controller.
Definition controller_input.hpp:19
std::string function_name
Controller function name (default: "DISCON")
Definition controller_input.hpp:17
ControllerInput(std::string lib_path, std::string func_name="DISCON", std::string inp_file_path="", std::string sim_name="")
Constructor with all parameters.
Definition controller_input.hpp:31
std::string input_file_path
Path to controller input file.
Definition controller_input.hpp:18
std::string shared_lib_path
Path to controller shared library.
Definition controller_input.hpp:16
bool IsEnabled() const
Check if controller is enabled (i.e. has library path)
Definition controller_input.hpp:42
ControllerInput()=default
Default constructor - creates empty controller input.