#pragma once #include "NonRealtime.hpp" #include "Realtime.hpp" namespace fluid { namespace client { template class FluidSCWrapper; namespace impl { template struct ChooseRTOrNRT; template<> struct ChooseRTOrNRT { template using type = NonRealTime; }; template<> struct ChooseRTOrNRT { template using type = RealTime; }; template struct BaseChooser { using RT = typename Client::isRealTime; static constexpr bool UseRealTime = RT::value && !IsModel_t::value; using type = typename ChooseRTOrNRT::template type; }; template using BaseChooser_t = typename BaseChooser::type; template using FluidSCWrapperBase = BaseChooser_t>; } } }