Go to the documentation of this file. 1 #ifndef OALPLUS_ALC_API_API_TRAITS_HPP
9 #define OALPLUS_ALC_API_API_TRAITS_HPP
34 template <
typename Api,
typename Type>
36 -> std::tuple<Type, bool>;
39 template <
typename Api,
typename Tag,
typename Signature>
41 -> std::add_pointer_t<Signature>;
44 std::string _full_name;
49 #endif // OALPLUS_ALC_API_API_TRAITS_HPP
Class wrapping the result of a C-API function call.
Definition: c_api_wrap.hpp:210
Primary template for conditionally valid values.
Definition: decl.hpp:49
api_opt_result< Result, alc_result_info > alc_opt_result
Class wrapping the result of a ALC API function call.
Definition: result.hpp:120
auto link_function(Api &api, Tag, string_view name, type_identity< Signature >) -> std::add_pointer_t< Signature >
Links an ALC function with the specified name and Signature.
auto load_constant(Api &api, string_view name, type_identity< Type >) -> std::tuple< Type, bool >
Loads an ALC constant with the specified name and Type.
api_no_result< Result, alc_no_result_info > alc_no_result
Alias for always-invalid result of a missing ALC API function call.
Definition: result.hpp:106
Template type used mostly for function type-tag dispatching.
Definition: type_identity.hpp:19
Policy customizing the generic C-API wrappers for the ALC API.
Definition: api_traits.hpp:19
AL-related code is placed in this namespace.
Definition: oalplus.hpp:11
Policy class customizing C-API constant value loading and function linking.
Definition: c_api_wrap.hpp:901