.. _program_listing_file_include_input_PDJE_Input.hpp: Program Listing for File PDJE_Input.hpp ======================================= |exhale_lsh| :ref:`Return to documentation for file ` (``include\input\PDJE_Input.hpp``) .. |exhale_lsh| unicode:: U+021B0 .. UPWARDS ARROW WITH TIP LEFTWARDS .. code-block:: cpp #pragma once #include "Input_State.hpp" #include "PDJE_EXPORT_SETTER.hpp" #include "PDJE_Input_DataLine.hpp" #include "PDJE_Input_Device_Data.hpp" #include "PDJE_MIDI.hpp" #include #include #include #include #include #include #include "DefaultDevs.hpp" class PDJE_API PDJE_Input { private: std::optional default_devs; // std::optional input_buffer; // redef // on dev pipe bool FLAG_INPUT_ON = false; std::optional midi_engine; bool FLAG_MIDI_ON = false; PDJE_INPUT_STATE state = PDJE_INPUT_STATE::DEAD; void *platform_ctx0_ = nullptr; void *platform_ctx1_ = nullptr; bool use_internal_window_ = false; public: std::vector GetDevs(); std::vector GetMIDIDevs(); bool Init(void *platform_ctx0 = nullptr, void *platform_ctx1 = nullptr, bool use_internal_window = false); bool Config(std::vector &devs, const std::vector &midi_dev); bool Run(); bool Kill(); PDJE_INPUT_STATE GetState(); std::string GetCurrentInputBackend() const; PDJE_INPUT_DATA_LINE PullOutDataLine(); PDJE_Input(); ~PDJE_Input() { Kill(); } };