IOType.hpp
1 #pragma once
2 #include <score/tools/std/Optional.hpp>
3 
4 #include <ossia/detail/enum_map.hpp>
5 #include <ossia/network/common/parameter_properties.hpp>
6 
7 #include <score_lib_device_export.h>
8 
9 class QString;
10 
11 namespace Device
12 {
14 SCORE_LIB_DEVICE_EXPORT
15 const ossia::enum_map<ossia::access_mode, QString, 3>& AccessModeText();
16 
18 SCORE_LIB_DEVICE_EXPORT
19 const ossia::enum_map<ossia::access_mode, QString, 3>& AccessModePrettyText();
20 
21 inline bool hasInput(const std::optional<ossia::access_mode>& t)
22 {
23  return t && (*t == ossia::access_mode::BI || *t == ossia::access_mode::GET);
24 }
25 inline bool hasOutput(const std::optional<ossia::access_mode>& t)
26 {
27  return t && (*t == ossia::access_mode::BI || *t == ossia::access_mode::SET);
28 }
29 }
Manipulation of Devices from Qt.
Definition: AddressSettings.cpp:14
const ossia::enum_map< ossia::access_mode, QString, 3 > & AccessModeText()
To save / reload in JSON.
Definition: IOType.cpp:12
const ossia::enum_map< ossia::access_mode, QString, 3 > & AccessModePrettyText()
To show to the user.
Definition: IOType.cpp:20