/* Copyright (c) 2014-2015, Stanislaw Halik * Permission to use, copy, modify, and/or distribute this * software for any purpose with or without fee is hereby granted, * provided that the above copyright notice and this permission * notice appear in all copies. */ #pragma once #include "api/plugin-support.hpp" #include "export.hpp" #include #include #include // XXX todo remove camel case in identifier struct runtime_event_handler { using ext_event_ordinal = IExtension::event_ordinal; using ext = std::shared_ptr; enum : unsigned { ext_max_events = 64 }; using ext_list = std::array; std::array extension_events; void run_events(ext_event_ordinal k, Pose& pose); }; struct OTR_LOGIC_EXPORT SelectedLibraries : runtime_event_handler { using dylibptr = std::shared_ptr; std::shared_ptr pTracker; std::shared_ptr pFilter; std::shared_ptr pProtocol; SelectedLibraries(QFrame* frame, dylibptr t, dylibptr p, dylibptr f); SelectedLibraries() : pTracker(nullptr), pFilter(nullptr), pProtocol(nullptr), correct(false) {} bool correct; };