Sygaldry
Loading...
Searching...
No Matches
list.hpp
1#pragma once
2/*
3Copyright 2023 Travis J. West, https://traviswest.ca, Input Devices and Music Interaction Laboratory
4(IDMIL), Centre for Interdisciplinary Research in Music Media and Technology
5(CIRMMT), McGill University, Montréal, Canada, and Univ. Lille, Inria, CNRS,
6Centrale Lille, UMR 9189 CRIStAL, F-59000 Lille, France
7
8SPDX-License-Identifier: MIT
9*/
10
11#include <type_traits>
12#include "sygah-consteval.hpp"
13#include "sygac-components.hpp"
14#include "sygbp-osc_string_constants.hpp"
15
16namespace sygaldry { namespace sygbp {
19
20struct List
21{
22 static _consteval auto name() { return "/list"; }
23 static _consteval auto usage() { return ""; }
24 static _consteval auto description() { return "List the components available to interact with through the CLI"; }
25
26 int main(int argc, char** argv, auto& log, auto& components)
27 {
28 for_each_component(components, [&](const auto& component)
29 {
30 log.println(osc_path_v< std::remove_cvref_t<decltype(component)>
31 , std::remove_cvref_t<decltype(components)>
32 >);
33 });
34 return 0;
35 }
36};
37
39} }
Definition list.hpp:21