- Aldebaran documentation |
- C++ Libraries |
- index

libqi-api 2.8.7.4

- Main Page
- Related Pages
- Namespaces
- Classes
- Files
- Examples

- File List
- File Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Classes | Namespaces | Macros | Typedefs | Functions
trackable.hxx File Reference
`#include <type_traits>`
`#include <boost/function.hpp>`
`#include <boost/bind.hpp>`
`#include <boost/weak_ptr.hpp>`
`#include <boost/function_types/result_type.hpp>`

Go to the source code of this file.

## Classes
class | qi::detail::LockAndCall< WT, F >
struct | qi::detail::ObjectWrap< T, IsActor >
struct | qi::detail::ObjectWrap< T, false >
struct | qi::detail::ObjectWrap< T, true >
struct | qi::detail::IsAsyncBindImpl
struct | qi::detail::IsAsyncBindImpl::ArbitraryBigBuf
struct | qi::detail::IsAsyncBind< T >
struct | qi::detail::BindTransformImpl< T, IsTrackable >
struct | qi::detail::BindTransformImpl< T *, false >
struct | qi::detail::BindTransformImpl< T *, true >
struct | qi::detail::WorkaroundVS2015< AF, Arg0, Args >

## Namespaces
| qi
| Deprecated in 2.5. Use int8_t from <cstdint>.
| qi::detail

## Macros
#define | _QI_DETAIL_TRACKABLE_HXX_

## Typedefs
template<typename T >
using | qi::detail::BindTransform = BindTransformImpl< typename std::decay< T >::type, std::is_base_of< TrackableBase, typename std::remove_pointer< typename std::decay< T >::type >::type >::value >

## Functions
template<typename T >
T | qi::detail::defaultConstruct ()
template<>
void | qi::detail::defaultConstruct< void > ()
void | qi::detail::throwPointerLockException ()
template<typename RF , typename AF , typename Arg0 , typename... Args>
std::enable_if < std::is_function< RF > ::value, boost::function< RF > >::type | qi::bindWithFallback (boost::function< void()> onFail, AF &&fun, Arg0 &&arg0, Args &&...args)
template<typename RF , typename AF , typename Arg0 , typename... Args>
std::enable_if < std::is_function< RF > ::value, boost::function< RF > >::type | qi::bindSilent (AF &&fun, Arg0 &&arg0, Args &&...args)
template<typename RF , typename AF , typename Arg0 , typename... Args>
std::enable_if < std::is_function< RF > ::value, boost::function< RF > >::type | qi::bind (AF &&fun, Arg0 &&arg0, Args &&...args)
template<typename AF , typename Arg0 , typename... Args>
auto | qi::bindWithFallback (boost::function< void()> onFail, AF &&fun, Arg0 &&arg0, Args &&...args) -> typename detail::BindTransform< Arg0 >::template wrap_type< typename detail::WorkaroundVS2015< AF, Arg0, Args...>::type >
template<typename AF , typename Arg0 , typename... Args>
auto | qi::bindSilent (AF &&fun, Arg0 &&arg0, Args &&...args) -> decltype(bindWithFallback(
template<typename AF , typename Arg0 , typename... Args>
auto | qi::bind (AF &&fun, Arg0 &&arg0, Args &&...args) -> decltype(bindWithFallback(detail::throwPointerLockException, std::forward< AF >(fun), std::forward< Arg0 >(arg0), std::forward< Args >(args)...))
template<typename R , typename T , typename Instance , typename... Args0, typename... Args1>
auto | qi::bind (R(T::*fun)(Args0...), Instance &&instance, Args1 &&...args1) -> decltype(bindWithFallback(detail::throwPointerLockException, fun, std::forward< Instance >(instance), std::forward< Args1 >(args1)...))
template<typename R , typename AF , typename Arg0 , typename... Args>
auto | qi::bindWithFallback (boost::function< void()> onFail, AF &&fun, Arg0 &&arg0, Args &&...args) -> typename std::enable_if<!std::is_function< R >::value, typename detail::BindTransform< Arg0 >::template wrap_type< decltype(boost::bind< R >(std::forward< AF >(fun), detail::BindTransform< Arg0 >::transform(arg0), std::forward< Args >(args)...))>>::type
template<typename R , typename AF , typename Arg0 , typename... Args>
auto | qi::bindSilent (AF &&fun, Arg0 &&arg0, Args &&...args) -> typename std::enable_if<!std::is_function< R >::value, decltype(bindWithFallback< R >(
template<typename R , typename AF , typename Arg0 , typename... Args>
auto | qi::bind (AF &&fun, Arg0 &&arg0, Args &&...args) -> typename std::enable_if<!std::is_function< R >::value, decltype(bindWithFallback< R >(detail::throwPointerLockException, std::forward< AF >(fun), std::forward< Arg0 >(arg0), std::forward< Args >(args)...))>::type
template<typename F , typename T >
auto | qi::trackWithFallback (boost::function< void()> onFail, F &&f, T &&toTrack) -> decltype(detail::BindTransform< T >::wrap(std::forward< T >(toTrack), std::forward< F >(f), std::move(onFail)))
template<typename F , typename T >
auto | qi::track (F &&f, T &&toTrack) -> decltype(trackWithFallback(detail::throwPointerLockException, std::forward< F >(f), std::forward< T >(toTrack)))
template<typename F , typename T >
auto | qi::trackSilent (F &&f, T &&toTrack) -> decltype(trackWithFallback(
template<typename F , typename T >
boost::function< F > | qi::trackWithFallback (boost::function< void()> onFail, boost::function< F > f, const T &toTrack)
template<typename F , typename T >
boost::function< F > | qi::trackSilent (boost::function< F > f, const T &toTrack)
template<typename F , typename T >
boost::function< F > | qi::track (boost::function< F > f, const T &toTrack)

## Macro Definition Documentation

#define _QI_DETAIL_TRACKABLE_HXX_

Definition at line 9 of file trackable.hxx.