libqi-api  2.4.3.28
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Namespaces | Classes | Typedefs | Enumerations | Functions | Variables
qi Namespace Reference

Namespaces

 detail
 
 details
 
 log
 Log functions with different levels of verbosity.
 
 measure
 
 os
 OS abstraction layer. .
 
 path
 Set of tools to handle SDK layouts.
 
 version
 Version numbering API. .
 

Classes

class  Actor
 
class  VarArguments
 
class  VarArguments< AnyValue >
 
class  CallableTypeInterface
 Signature information for both callable types FunctionTypeInterface and MethodType. More...
 
class  FunctionTypeInterface
 
struct  ArgumentTransformation
 
class  KeywordArguments
 
class  AnyArguments
 A function with AnyArguments as its sole argument will behave as if AnyFunction::fromDynamicFunction was called. More...
 
class  AnyFunction
 
class  GenericFunctionParameters
 
struct  ModuleInfo
 
class  AnyModule
 
class  ModuleBuilder
 
class  Application
 Class handling startup and teardown of an application. More...
 
class  ApplicationSession
 
struct  Atomic
 
struct  ObjectSerializationInfo
 Informations passed when serializing an object. More...
 
class  Buffer
 Class to store buffer. . More...
 
class  BufferReader
 Class to read const buffer. This class is intendeed to read buffer. It store an internal data cursor and an internal sub-buffer index. All offset are relative to the current position. More...
 
class  SteadyClock
 The SteadyClock class represents a monotonic clock. . More...
 
class  Clock
 The Clock class represents a system-wide clock, best suitable for timestamping events. More...
 
class  SystemClock
 The SystemClock class represents the system-wide real time wall clock. It may not be monotonic: on most systems, the system time can be adjusted at any moment. More...
 
class  Future
 
class  ExecutionContext
 
struct  FutureValueConverter< void, void >
 
struct  FutureValueConverter< T, void >
 
struct  FutureValueConverter< void, T >
 
class  FutureSync
 
class  Promise
 
class  FutureException
 
class  FutureUserException
 
struct  FutureValueConverter
 Specialize this struct to provide conversion between future values. More...
 
class  FutureBarrier
 This class helps waiting on multiple futures at the same point. More...
 
class  EventLoop
 Class to handle eventloop. . More...
 
class  ScopedFutureGroup
 
class  AuthProvider
 
class  AuthProviderFactory
 
class  AutoService
 
class  ClientAuthenticator
 
class  ClientAuthenticatorFactory
 
class  AutoService< qi::AnyObject >
 
class  Gateway
 
class  RemoteGateway
 
class  ReverseGateway
 
class  ServiceInfo
 
class  Path
 The Path class allow handling path in a cross-platform maner. The class assume that all string are encoded in UTF-8. More...
 
class  DataPerf
 Class to compute and store a benchmark time. More...
 
class  DataPerfSuite
 A class to perform benchmarks. More...
 
class  PeriodicTask
 Control a task executed periodically and asynchronously. . More...
 
class  PropertyBase
 
class  PropertyImpl
 
class  Property
 
class  Property< AnyValue >
 
class  GenericProperty
 Type-erased property, simulating a typed property but using AnyValue. More...
 
class  Session
 
class  SignalBase
 
class  Signal
 
class  SignalF
 
class  SignalSubscriber
 
class  SignalSpy
 
class  Signature
 
class  MinMaxSum
 Stores min, max and sum of values fed to it. More...
 
class  MethodStatistics
 Store statistics about method calls. More...
 
class  Strand
 
class  TrackableBase
 Common base class to templates Trackable for compile-time detection. More...
 
class  Trackable
 Object tracking by blocking destruction while shared pointers are present. More...
 
class  PointerLockException
 
class  Translator
 Localization of your source code. More...
 
struct  InfosKeyMask
 
class  FunctionTypeInterfaceEq
 
class  AnyIterator
 
class  AnyReference
 
class  AutoAnyReference
 
class  AnyValue
 
class  TypeImpl< AnyValue >
 
struct  FutureValueConverter< T, qi::AnyValue >
 
struct  FutureValueConverter< void, qi::AnyValue >
 
struct  boost_bind_result_type
 
struct  boost_bind_result_type< boost::_bi::bind_t< R, A, B > >
 
struct  boost_bind_parameter_types
 
struct  boost_bind_parameter_types< boost::_bi::bind_t< R, F, B > >
 
struct  boost_bind_function_type
 
class  TypeBufferImpl
 
class  TypeImpl< Buffer >
 
class  TypeImpl< boost::any >
 
class  GenericObject
 
class  TypeImpl< boost::shared_ptr< GenericObject > >
 
class  IntTypeInterfaceImpl
 
class  TypeBoolImpl
 
class  FloatTypeInterfaceImpl
 
class  ListTypeInterfaceImpl
 
class  TypeSimpleIteratorImpl
 
struct  TypeImpl< std::vector< T > >
 
struct  TypeImpl< std::list< T > >
 
struct  TypeImpl< std::set< T > >
 
class  VarArgsTypeInterfaceImpl
 
struct  TypeImpl< qi::VarArguments< T > >
 
class  EventTrace
 
class  Manageable
 
class  MapTypeInterfaceImpl
 
struct  TypeImpl< std::map< K, V, C, A > >
 
class  Empty
 
class  Object
 
class  WeakObject
 
class  TypeImpl< Object< T > >
 
class  PointerTypeInterfaceImpl
 
class  TypeImpl< T * >
 
class  TypeSharedPointerImpl
 
class  TypeImpl< boost::shared_ptr< T > >
 
class  Proxy
 
class  TypeProxy
 
struct  TypeProxyWrapper
 
class  StringTypeInterfaceImpl
 
class  TypeImpl< std::string >
 
class  TypeCStringImpl
 
class  TypeImpl< char * >
 
class  TypeImpl< char[I]>
 
class  TypeEquivalentString
 
class  StructTypeInterfaceBouncer
 
class  TypeImpl< std::pair< F, S > >
 
class  TraceAnalyzer
 
class  TypeOfTemplateImpl
 
class  TypeByPointer
 Access API that stores a T* in storage. More...
 
class  TypeByPointer< const T >
 
class  TypeByPointerPOD
 
class  TypeByValue
 Access api that stores a T in storage. More...
 
class  TypeByValue< const T >
 
class  DefaultTypeImplMethods
 
class  DefaultTypeImpl
 
class  TypeImpl
 
class  TypeImpl< void >
 
class  TypeImpl< T & >
 
class  TypeInfo
 
class  TypeInterface
 
class  DynamicObject
 
class  DynamicObjectBuilder
 
class  MetaMethodParameter
 
class  MetaMethod
 Representation of a method in an GenericObject. More...
 
class  MetaMethodBuilder
 
class  MetaObject
 Description of the signals and methods accessible on an ObjectTypeInterface. More...
 
class  MetaObjectBuilder
 
class  MetaProperty
 
class  MetaSignal
 Representation of a Signal in an GenericObject. More...
 
class  ObjectTypeBuilderBase
 
class  ObjectTypeBuilder
 
class  TypeOfTemplate< qi::Future >
 
class  TypeOfTemplateImpl< qi::Future, T >
 
class  TypeOfTemplate< qi::FutureSync >
 
class  TypeOfTemplateImpl< qi::FutureSync, T >
 
class  TypeOfTemplate< qi::Promise >
 
class  TypeOfTemplateImpl< qi::Promise, T >
 
class  ProxyProperty
 
class  ProxySignal
 Signal proxy, using an AnyObject and signal id as backend. More...
 
class  IntTypeInterface
 
class  FloatTypeInterface
 
class  StringTypeInterface
 
class  RawTypeInterface
 
class  PointerTypeInterface
 
class  IteratorTypeInterface
 
class  ListTypeInterface
 
class  MapTypeInterface
 
class  StructTypeInterface
 
class  DynamicTypeInterface
 
class  VarArgsTypeInterface
 
class  TypeImpl< qi::TypeInterface >
 
class  TypeImpl< qi::TypeInterface * >
 
class  ObjectTypeInterface
 
class  Url
 

Typedefs

typedef VarArguments AnyVarArguments
 
typedef boost::function
< AnyReference(const
AnyReferenceVector &)> 
DynamicFunction
 
typedef boost::function
< AnyModule(const
qi::ModuleInfo &)> 
ModuleFactoryFunctor
 
typedef Object< Empty > AnyObject
 
typedef ApplicationSession::Option ApplicationSessionOptions
 
typedef boost::function
< AnyObject(const
ObjectSerializationInfo &)> 
DeserializeObjectCallback
 Type of callback invoked by sdeerializer when it encounters an object. More...
 
typedef boost::function
< ObjectSerializationInfo(const
AnyObject &)> 
SerializeObjectCallback
 Type of callback invoked by serializer when it encounters an object. More...
 
typedef
boost::chrono::duration
< int64_t, boost::nano > 
Duration
 Convenience typedefs. More...
 
typedef
boost::chrono::duration
< int64_t, boost::nano > 
NanoSeconds
 
typedef
boost::chrono::duration
< int64_t, boost::micro > 
MicroSeconds
 
typedef
boost::chrono::duration
< int64_t, boost::milli > 
MilliSeconds
 
typedef
boost::chrono::duration
< int64_t > 
Seconds
 
typedef
boost::chrono::duration
< int64_t, boost::ratio< 60 > > 
Minutes
 
typedef
boost::chrono::duration
< int64_t, boost::ratio< 3600 > > 
Hours
 
typedef SteadyClock::time_point SteadyClockTimePoint
 Steady clock time point. More...
 
typedef Clock::time_point ClockTimePoint
 qi::Clock time point. More...
 
typedef SystemClock::time_point SystemClockTimePoint
 System clock time point. More...
 
typedef void * FutureUniqueId
 
typedef int LogContext
 Logs context attribute value. More...
 
typedef std::map< std::string,
AnyValue > 
CapabilityMap
 
typedef boost::shared_ptr
< AuthProvider > 
AuthProviderPtr
 
typedef boost::shared_ptr
< AuthProviderFactory > 
AuthProviderFactoryPtr
 
typedef AutoService< qi::Empty > AnyAutoService
 
typedef boost::shared_ptr
< ClientAuthenticator > 
ClientAuthenticatorPtr
 
typedef boost::shared_ptr
< ClientAuthenticatorFactory > 
ClientAuthenticatorFactoryPtr
 
typedef std::vector
< qi::ServiceInfo > 
ServiceInfoVector
 
typedef std::vector< Path > PathVector
 
typedef std::codecvt< wchar_t,
char, std::mbstate_t > 
codecvt_type
 Standard std::codecvt type accepted by STL and boost. More...
 
typedef boost::shared_ptr
< Session > 
SessionPtr
 
typedef qi::uint64_t SignalLink
 
typedef boost::shared_ptr
< SignalSubscriber > 
SignalSubscriberPtr
 
typedef std::vector< Signature > SignatureVector
 
typedef std::vector< AnyReference > AnyReferenceVector
 
typedef std::vector< AnyValue > AnyValueVector
 
typedef std::map< unsigned int,
MethodStatistics > 
ObjectStatistics
 
typedef WeakObject< Empty > AnyWeakObject
 
typedef std::vector
< MetaMethodParameter > 
MetaMethodParameterVector
 
typedef int8_t int8_t
 Cross-platform signed integer of length 8 bits (1 byte). More...
 
typedef int16_t int16_t
 Cross-platform signed integer of length 16 bits (2 bytes). More...
 
typedef int32_t int32_t
 Cross-platform signed integer of length 32 bits (4 bytes). More...
 
typedef int64_t int64_t
 Cross-platform signed integer of length 64 bits (8 bytes). More...
 
typedef uint8_t uint8_t
 Cross-platform unsigned integer of length 8 bits (1 byte). More...
 
typedef uint16_t uint16_t
 Cross-platform unsigned integer of length 16 bits (2 bytes). More...
 
typedef uint32_t uint32_t
 Cross-platform unsigned integer of length 32 bits (4 bytes). More...
 
typedef uint64_t uint64_t
 Cross-platform unsigned integer of length 64 bits (8 bytes). More...
 
typedef std::vector< Url > UrlVector
 

Enumerations

enum  FutureState {
  FutureState_None, FutureState_Running, FutureState_Canceled, FutureState_FinishedWithError,
  FutureState_FinishedWithValue
}
 
enum  FutureCallbackType { FutureCallbackType_Sync = 0, FutureCallbackType_Async = 1 }
 
enum  FutureTimeout { FutureTimeout_Infinite = ((int) 0x7fffffff), FutureTimeout_None = 0 }
 
enum  StreamColor {
  StreamColor_None = 0, StreamColor_Reset = 1, StreamColor_Bold = 2, StreamColor_Faint = 3,
  StreamColor_Standout = 4, StreamColor_Underline = 5, StreamColor_Blink = 6, StreamColor_Overline = 7,
  StreamColor_Black = 8, StreamColor_DarkRed = 9, StreamColor_DarkGreen = 10, StreamColor_Brown = 11,
  StreamColor_DarkBlue = 12, StreamColor_Purple = 13, StreamColor_Teal = 14, StreamColor_LightGray = 15,
  StreamColor_DarkGray = 16, StreamColor_Red = 17, StreamColor_Green = 18, StreamColor_Yellow = 19,
  StreamColor_Blue = 20, StreamColor_Fuchsia = 21, StreamColor_Turquoise = 22, StreamColor_White = 23
}
 The Stream Color enum. More...
 
enum  LogLevel {
  LogLevel_Silent = 0, LogLevel_Fatal, LogLevel_Error, LogLevel_Warning,
  LogLevel_Info, LogLevel_Verbose, LogLevel_Debug
}
 Log level verbosity. More...
 
enum  LogColor { LogColor_Never, LogColor_Auto, LogColor_Always }
 Logs color mode. More...
 
enum  LogContextAttr {
  LogContextAttr_None = 0, LogContextAttr_Verbosity = 1 << 0, LogContextAttr_ShortVerbosity = 1 << 1, LogContextAttr_SystemDate = 1 << 2,
  LogContextAttr_Tid = 1 << 3, LogContextAttr_Category = 1 << 4, LogContextAttr_File = 1 << 5, LogContextAttr_Function = 1 << 6,
  LogContextAttr_Return = 1 << 7, LogContextAttr_Date = 1 << 8
}
 Logs context attribute. More...
 
enum  ObjectThreadingModel { ObjectThreadingModel_SingleThread = 0, ObjectThreadingModel_MultiThread = 1, ObjectThreadingModel_Default = ObjectThreadingModel_SingleThread }
 Possible thread models for an object. More...
 
enum  TypeKind {
  TypeKind_Unknown = 0, TypeKind_Void = 1, TypeKind_Int = 2, TypeKind_Float = 3,
  TypeKind_String = 4, TypeKind_List = 5, TypeKind_Map = 6, TypeKind_Object = 7,
  TypeKind_Pointer = 8, TypeKind_Tuple = 9, TypeKind_Dynamic = 10, TypeKind_Raw = 11,
  TypeKind_Iterator = 13, TypeKind_Function = 14, TypeKind_Signal = 15, TypeKind_Property = 16,
  TypeKind_VarArgs = 17
}
 
enum  MetaCallType { MetaCallType_Auto = 0, MetaCallType_Direct = 1, MetaCallType_Queued = 2 }
 

Functions

template<typename T >
FunctionTypeInterface * makeFunctionTypeInterface ()
 
FunctionTypeInterface * dynamicFunctionTypeInterface ()
 
bool registerCppEmbeddedModule (const std::string &moduleName, boost::function< void(ModuleBuilder *)> fun)
 
std::vector< ModuleInfo > listModules ()
 
AnyModule import (const std::string &name)
 
AnyModule import (const ModuleInfo &name)
 
bool registerModuleFactory (const std::string &name, ModuleFactoryFunctor fun)
 
qi::Future< AnyReference > metaCall (ExecutionContext *ec, ObjectThreadingModel objectThreadingModel, MetaCallType methodThreadingModel, MetaCallType callType, AnyObject manageable, unsigned int methodId, AnyFunction func, const GenericFunctionParameters &params, bool noCloneFirst=false, unsigned int callerId=0, qi::os::timeval postTimestamp=qi::os::timeval())
 
long testAndSet (long *cond)
 
template<typename T >
void decodeBinary (qi::BufferReader *buf, T *value, DeserializeObjectCallback onObject=DeserializeObjectCallback(), StreamContext *streamContext=0)
 
void encodeBinary (qi::Buffer *buf, const AutoAnyReference &gvp, SerializeObjectCallback onObject=SerializeObjectCallback(), StreamContext *ctx=0)
 
void decodeBinary (qi::BufferReader *buf, AnyReference gvp, DeserializeObjectCallback onObject=DeserializeObjectCallback(), StreamContext *ctx=0)
 
QI_API_DEPRECATED
SteadyClockTimePoint 
steadyClockNow ()
 Returns a time_point representing the current value of the clock. More...
 
QI_API_DEPRECATED
SystemClockTimePoint 
wallClockNow ()
 Returns a time_point representing the current value of the clock. More...
 
template<typename R >
void nullConverter (void *, R &)
 
template<typename T >
qi::Future< T > makeFutureError (const std::string &error)
 Helper function to return a future with the error set. More...
 
template<typename R >
void adaptFutureUnwrap (Future< AnyReference > &f, Promise< R > &p)
 Feed a promise from a generic future which may be unwrapped if it contains itself a future. More...
 
template<typename FT , typename PT >
void adaptFuture (const Future< FT > &f, Promise< PT > &p)
 Feed a promise from a future of possibly different type. More...
 
template<typename FT , typename PT , typename CONV >
void adaptFuture (const Future< FT > &f, Promise< PT > &p, CONV converter)
 Similar to adaptFuture(f, p) but with a custom converter. More...
 
template<typename T >
void PromiseNoop (qi::Promise< T > &)
 Helper function that does nothing on future cancelation. More...
 
template<typename R >
void adaptFuture (Future< AnyReference > &f, Promise< R > &p)
 
template<typename T >
boost::function< void()> makeCanceler (Future< T > &future)
 
template<typename T >
qi::FutureSync< std::vector
< Future< T > > > 
waitForAll (std::vector< Future< T > > &vect)
 Helper function to wait on a vector of futures. More...
 
template<typename T >
qi::FutureSync< qi::Future< T > > waitForFirst (std::vector< Future< T > > &vect)
 Helper function to wait for the first valid future. More...
 
template<typename F , typename ARG0 >
boost::function< F > track (const boost::function< F > &f, const ARG0 &arg0)
 Wrap given function f with a tracking check on arg0, which must be a weak pointer or a Trackable instance. More...
 
template<typename F , typename ARG0 >
boost::function< F > trackWithFallback (boost::function< void()> onFail, const boost::function< F > &f, const ARG0 &arg0)
 Wrap given function f with a tracking check on arg0, which must be a weak pointer or a Trackable instance. More...
 
template<typename F , typename ARG0 >
boost::function< F > trackSilent (const boost::function< F > &f, const ARG0 &arg0)
 
EventLoop * getEventLoop ()
 Return the global eventloop, created on demand on first call. More...
 
template<typename R >
Future< R > async (boost::function< R()> callback, uint64_t usDelay=0)
 
template<typename R >
Future< R > async (boost::function< R()> callback, qi::Duration delay)
 
template<typename R >
Future< R > async (boost::function< R()> callback, qi::SteadyClockTimePoint timepoint)
 
template<typename R , typename Func , typename ArgTrack >
qi::Future< R > async (const Func &f, const ArgTrack &toTrack,...)
 
void startEventLoop (int nthread)
 Start the eventloop with nthread threads. No-op if already started. More...
 
boost::asio::io_service & getIoService ()
 Get the io_service used by the global event loop. More...
 
std::string encodeJSON (const qi::AutoAnyReference &val)
 
qi::AnyValue decodeJSON (const std::string &in)
 
std::string::const_iterator decodeJSON (const std::string::const_iterator &begin, const std::string::const_iterator &end, AnyValue &target)
 
codecvt_type & unicodeFacet ()
 UTF-8 facet object getter. More...
 
SessionPtr makeSession ()
 
std::vector< std::string > signatureSplit (const std::string &fullSignature)
 
qi::Signature makeTupleSignature (const std::vector< qi::AnyReference > &vgv, bool resolveDynamic=false, const std::string &name=std::string(), const std::vector< std::string > &names=std::vector< std::string >())
 
qi::Signature makeTupleSignature (const std::vector< TypeInterface * > &vgv, const std::string &name=std::string(), const std::vector< std::string > &names=std::vector< std::string >())
 
qi::Signature makeTupleSignature (const qi::Signature &element)
 
qi::Signature makeListSignature (const qi::Signature &element)
 
qi::Signature makeVarArgsSignature (const qi::Signature &element)
 
qi::Signature makeKwArgsSignature (const qi::Signature &element)
 
qi::Signature makeMapSignature (const qi::Signature &key, const qi::Signature &value)
 
bool operator!= (const Signature &lhs, const Signature &rhs)
 
bool operator== (const Signature &lhs, const Signature &rhs)
 
template<typename RF , typename AF >
boost::function< RF > bind (const AF &fun,...)
 
qi::Translator & defaultTranslator (const std::string &name)
 Get a reference on the default Translator. More...
 
std::string tr (const std::string &msg, const std::string &domain="", const std::string &locale="", const std::string &context="")
 Translate a message. More...
 
std::string trContext (const std::string &msg, const std::string &context)
 Translate a message with a specific context. More...
 
bool operator== (const AnyIterator &a, const AnyIterator &b)
 
bool operator!= (const AnyIterator &a, const AnyIterator &b)
 
bool operator< (const AnyReference &a, const AnyReference &b)
 
bool operator== (const AnyReference &a, const AnyReference &b)
 
bool operator!= (const AnyReference &a, const AnyReference &b)
 
AnyReference makeGenericTuple (const AnyReferenceVector &values)
 
AnyReference makeGenericTuplePtr (const std::vector< TypeInterface * > &types, const std::vector< void * > &values)
 
bool operator< (const AnyValue &a, const AnyValue &b)
 Less than operator. Will compare the values within the AnyValue. More...
 
bool operator== (const AnyValue &a, const AnyValue &b)
 Value equality operator. Will compare the values within. More...
 
bool operator!= (const AnyValue &a, const AnyValue &b)
 
AnyReferenceVector asAnyReferenceVector (const AnyValueVector &vect)
 
template<typename R , typename T >
qi::Future< R > async (T instancePointerOrSharedPointer, const std::string &methodName, qi::AutoAnyReference p1=qi::AutoAnyReference(), qi::AutoAnyReference p2=qi::AutoAnyReference(), qi::AutoAnyReference p3=qi::AutoAnyReference(), qi::AutoAnyReference p4=qi::AutoAnyReference(), qi::AutoAnyReference p5=qi::AutoAnyReference(), qi::AutoAnyReference p6=qi::AutoAnyReference(), qi::AutoAnyReference p7=qi::AutoAnyReference(), qi::AutoAnyReference p8=qi::AutoAnyReference())
 
template<typename A >
boost::enable_if< typename
detail::Accessor< A >
::is_accessor, SignalBase * >
::type 
signalAccess (A acc, void *instance)
 
template<typename A >
boost::enable_if< typename
detail::Accessor< A >
::is_accessor, PropertyBase * >
::type 
propertyAccess (A acc, void *instance)
 
template<typename Proxy , typename Interface >
bool registerProxyInterface ()
 
template<typename ProxyType >
bool registerProxy ()
 
template<typename T , typename F >
StringTypeInterface * makeTypeEquivalentString (T *, F f)
 
bool operator< (const TraceAnalyzer::FlowLink &a, const TraceAnalyzer::FlowLink &b)
 
template<typename T >
TypeInterface * typeOf ()
 
template<typename TypeDispatcher >
TypeDispatcher & typeDispatch (const TypeDispatcher &vv, AnyReference value)
 
TypeInterface * getType (const std::type_info &type)
 Runtime Type factory getter. Used by typeOf<T>() More...
 
bool registerType (const std::type_info &typeId, TypeInterface *type)
 Runtime Type factory setter. More...
 
template<typename T >
TypeInterface * typeOf (const T &v)
 Get type from a value. No need to delete the result. More...
 
void registerStruct (TypeInterface *type)
 
TypeInterface * getRegisteredStruct (const qi::Signature &s)
 
AnyObject makeDynamicAnyObject (DynamicObject *obj, bool destroyObject=true, boost::function< void(GenericObject *)> onDelete=boost::function< void(GenericObject *)>())
 
AnyObject makeDynamicSharedAnyObjectImpl (DynamicObject *obj, boost::shared_ptr< Empty > other)
 
template<typename T >
AnyObject makeDynamicSharedAnyObject (DynamicObject *obj, boost::shared_ptr< T > other)
 
ObjectTypeInterface * getDynamicTypeInterface ()
 
bool operator< (const MetaObject &a, const MetaObject &b)
 
template<typename T >
void makeProxyProperty (Property< T > &target, AnyObject object, const std::string &signalName)
 
template<typename T >
void makeProxyProperty (ProxyProperty< T > &target, AnyObject object, const std::string &signalName)
 
template<typename T >
void makeProxySignal (SignalF< T > &target, AnyObject object, const std::string &signalName)
 
template<typename T >
void makeProxySignal (ProxySignal< T > &target, AnyObject object, const std::string &signalName)
 
template<typename Dispatcher >
Dispatcher & typeDispatch (const Dispatcher &dispatcher, AnyReference value)
 
TypeInterface * makeTypeOfKind (const qi::TypeKind &kind)
 
TypeInterface * makeFloatType (int bytelen)
 
TypeInterface * makeIntType (bool issigned, int bytelen)
 
TypeInterface * makeVarArgsType (TypeInterface *elementType)
 
TypeInterface * makeListType (TypeInterface *elementType)
 
TypeInterface * makeMapType (TypeInterface *keyType, TypeInterface *ElementType)
 
TypeInterface * makeTupleType (const std::vector< TypeInterface * > &memberTypes, const std::string &name=std::string(), const std::vector< std::string > &elementNames=std::vector< std::string >())
 
bool operator== (const Url &lhs, const Url &rhs)
 
bool operator!= (const Url &lhs, const Url &rhs)
 
void sleepFor (const qi::Duration &d)
 
template<class Rep , class Period >
void sleepFor (const boost::chrono::duration< Rep, Period > &d)
 
void sleepUntil (const SteadyClockTimePoint &t)
 Blocks the execution of the current thread until t has been reached. More...
 
template<class Duration >
void sleepUntil (const boost::chrono::time_point< SteadyClock, Duration > &t)
 
void sleepUntil (const ClockTimePoint &t)
 Blocks the execution of the current thread until t has been reached. More...
 
template<class Duration >
void sleepUntil (const boost::chrono::time_point< Clock, Duration > &t)
 
void sleepUntil (const SystemClockTimePoint &t)
 Blocks the execution of the current thread until t has been reached. More...
 
template<class Duration >
void sleepUntil (const boost::chrono::time_point< SystemClock, Duration > &t)
 
std::string toISO8601String (const SystemClockTimePoint &t)
 Return the date and time as a string in ISO 8601 format. The time is given up to millisecond precision, in UTC. The format does not include colon characters, to be suitable for inclusion in filenames on any filesystem. More...
 
template<class DurationTo , class TimePointFrom >
DurationTo durationSince (const TimePointFrom &t)
 }@ More...
 

Variables

QI_API_DEPRECATED typedef
SystemClock 
WallClock
 
QI_API_DEPRECATED typedef
SystemClockTimePoint 
WallClockTimePoint
 System clock time point. More...
 
template<template< typename > class T>
class QITYPE_TEMPLATE_API TypeOfTemplate
 

Detailed Description

Language factory, for each language (C++, Python, ...) a factory should be registered. The factory will be used to load the module

Typedef Documentation

Definition at line 105 of file autoservice.hpp.

Definition at line 21 of file anyobject.hpp.

typedef std::vector< AnyReference > qi::AnyReferenceVector

Definition at line 23 of file anyreference.hpp.

typedef std::vector< AnyValue > qi::AnyValueVector

Definition at line 109 of file anyvalue.hpp.

Definition at line 50 of file anyfunction.hpp.

Definition at line 325 of file object.hxx.

Definition at line 139 of file applicationsession.hpp.

typedef boost::shared_ptr<AuthProviderFactory> qi::AuthProviderFactoryPtr

Definition at line 26 of file authproviderfactory.hpp.

typedef boost::shared_ptr< AuthProvider > qi::AuthProviderPtr

Definition at line 54 of file authprovider.hpp.

typedef std::map< std::string, AnyValue > qi::CapabilityMap

Definition at line 21 of file authprovider.hpp.

Definition at line 27 of file clientauthenticatorfactory.hpp.

typedef boost::shared_ptr<ClientAuthenticator> qi::ClientAuthenticatorPtr

Definition at line 38 of file clientauthenticator.hpp.

qi::Clock time point.

Definition at line 204 of file clock.hpp.

typedef std::codecvt<wchar_t, char, std::mbstate_t> qi::codecvt_type

Standard std::codecvt type accepted by STL and boost.

Typedef for std::codecvt<wchar_t, char, std::mbstate_t> that can be used with boost::filesystem::path and std::locale.

Definition at line 485 of file path.hpp.

Type of callback invoked by sdeerializer when it encounters an object.

Definition at line 36 of file binarycodec.hpp.

typedef boost::chrono::duration<int64_t, boost::nano> qi::Duration

Convenience typedefs.

Definition at line 18 of file clock.hpp.

typedef boost::function<AnyReference(const AnyReferenceVector&)> qi::DynamicFunction

Definition at line 142 of file anyfunction.hpp.

typedef void* qi::FutureUniqueId

Definition at line 93 of file future_fwd.hpp.

typedef boost::chrono::duration<int64_t, boost::ratio<3600> > qi::Hours

Definition at line 24 of file clock.hpp.

Cross-platform signed integer of length 16 bits (2 bytes).

Definition at line 74 of file types.hpp.

Cross-platform signed integer of length 32 bits (4 bytes).

Definition at line 75 of file types.hpp.

Cross-platform signed integer of length 64 bits (8 bytes).

Definition at line 76 of file types.hpp.

Cross-platform signed integer of length 8 bits (1 byte).

Definition at line 73 of file types.hpp.

typedef int qi::LogContext

Logs context attribute value.

Definition at line 171 of file log.hpp.

Definition at line 38 of file metamethod.hpp.

typedef boost::chrono::duration<int64_t, boost::micro> qi::MicroSeconds

Definition at line 20 of file clock.hpp.

typedef boost::chrono::duration<int64_t, boost::milli> qi::MilliSeconds

Definition at line 21 of file clock.hpp.

typedef boost::chrono::duration<int64_t, boost::ratio<60> > qi::Minutes

Definition at line 23 of file clock.hpp.

typedef boost::function<AnyModule (const qi::ModuleInfo&)> qi::ModuleFactoryFunctor

Definition at line 148 of file anymodule.hpp.

typedef boost::chrono::duration<int64_t, boost::nano> qi::NanoSeconds

Definition at line 19 of file clock.hpp.

typedef std::map<unsigned int, MethodStatistics> qi::ObjectStatistics

Definition at line 117 of file manageable.hpp.

typedef std::vector<Path> qi::PathVector

Definition at line 26 of file path.hpp.

typedef boost::chrono::duration<int64_t> qi::Seconds

Definition at line 22 of file clock.hpp.

Type of callback invoked by serializer when it encounters an object.

Definition at line 42 of file binarycodec.hpp.

typedef std::vector<qi::ServiceInfo> qi::ServiceInfoVector

Definition at line 50 of file serviceinfo.hpp.

typedef boost::shared_ptr<Session> qi::SessionPtr

Definition at line 125 of file session.hpp.

Definition at line 33 of file signal.hpp.

typedef boost::shared_ptr<SignalSubscriber> qi::SignalSubscriberPtr

Definition at line 316 of file signal.hpp.

typedef std::vector<Signature> qi::SignatureVector

Definition at line 62 of file signature.hpp.

Steady clock time point.

Definition at line 203 of file clock.hpp.

System clock time point.

Definition at line 205 of file clock.hpp.

Cross-platform unsigned integer of length 16 bits (2 bytes).

Definition at line 79 of file types.hpp.

Cross-platform unsigned integer of length 32 bits (4 bytes).

Definition at line 80 of file types.hpp.

Cross-platform unsigned integer of length 64 bits (8 bytes).

Definition at line 81 of file types.hpp.

Cross-platform unsigned integer of length 8 bits (1 byte).

Definition at line 78 of file types.hpp.

typedef std::vector<Url> qi::UrlVector

Definition at line 133 of file url.hpp.

Enumeration Type Documentation

Enumerator
FutureCallbackType_Sync 
FutureCallbackType_Async 

Definition at line 83 of file future_fwd.hpp.

State of the future.

Enumerator
FutureState_None 

Future is not tied to a promise.

FutureState_Running 

Operation pending.

FutureState_Canceled 

The future has been canceled.

FutureState_FinishedWithError 

The operation is finished with an error.

FutureState_FinishedWithValue 

The operation is finished with a value.

Definition at line 75 of file future_fwd.hpp.

Enumerator
FutureTimeout_Infinite 
FutureTimeout_None 

Definition at line 88 of file future_fwd.hpp.

Logs color mode.

Enumerator
LogColor_Never 

Never show color.

LogColor_Auto 

Auto color.

LogColor_Always 

Always show color.

Definition at line 146 of file log.hpp.

Logs context attribute.

Enumerator
LogContextAttr_None 

No context.

LogContextAttr_Verbosity 

Show logs level.

LogContextAttr_ShortVerbosity 

Show short logs level.

LogContextAttr_SystemDate 

Show qi::SystemClock dates.

LogContextAttr_Tid 

Show threads id.

LogContextAttr_Category 

Show categories.

LogContextAttr_File 

Show logs files.

LogContextAttr_Function 

Show functions name.

LogContextAttr_Return 

Print an end line between contexts and logs.

LogContextAttr_Date 

Show qi::Clock dates.

Definition at line 155 of file log.hpp.

Log level verbosity.

Enumerator
LogLevel_Silent 

silent log level

LogLevel_Fatal 

fatal log level

LogLevel_Error 

error log level

LogLevel_Warning 

warning log level

LogLevel_Info 

info log level

LogLevel_Verbose 

verbose log level

LogLevel_Debug 

debug log level

Definition at line 133 of file log.hpp.

Specifies how a call should be made. Can be used at both call-site, and callback-registration site.

Enumerator
MetaCallType_Auto 

Honor the default behavior.

MetaCallType_Direct 

Force a synchronous call.

MetaCallType_Queued 

Force an asynchronous call in an other thread.

Definition at line 19 of file typeobject.hpp.

Possible thread models for an object.

Enumerator
ObjectThreadingModel_SingleThread 

Object is not thread safe, all method calls must occur in the same thread.

ObjectThreadingModel_MultiThread 

Object is thread safe, multiple calls can occur in different threads in parallel.

ObjectThreadingModel_Default 

Definition at line 30 of file manageable.hpp.

The Stream Color enum.

Warning
Only working under POSIX.
Enumerator
StreamColor_None 

No Color.

StreamColor_Reset 

Reset the color and mode.

StreamColor_Bold 

Bold mode.

StreamColor_Faint 

Faint mode.

StreamColor_Standout 

Standout mode.

StreamColor_Underline 

Underline mode.

StreamColor_Blink 

Blink mode.

StreamColor_Overline 

Overline mode.

StreamColor_Black 

Black.

StreamColor_DarkRed 

Dark Red.

StreamColor_DarkGreen 

Dark Green.

StreamColor_Brown 

Brown.

StreamColor_DarkBlue 

Dark Blue.

StreamColor_Purple 

Purple.

StreamColor_Teal 

Teal.

StreamColor_LightGray 

LightGray.

StreamColor_DarkGray 

Dark Gray.

StreamColor_Red 

Red.

StreamColor_Green 

Green.

StreamColor_Yellow 

Yellow.

StreamColor_Blue 

Blue.

StreamColor_Fuchsia 

Fuchsia.

StreamColor_Turquoise 

Turquoise.

StreamColor_White 

White.

Definition at line 19 of file iocolor.hpp.

Enumerator
TypeKind_Unknown 
TypeKind_Void 
TypeKind_Int 
TypeKind_Float 
TypeKind_String 
TypeKind_List 
TypeKind_Map 
TypeKind_Object 
TypeKind_Pointer 
TypeKind_Tuple 
TypeKind_Dynamic 
TypeKind_Raw 
TypeKind_Iterator 
TypeKind_Function 
TypeKind_Signal 
TypeKind_Property 
TypeKind_VarArgs 

Definition at line 53 of file fwd.hpp.

Function Documentation

template<typename FT , typename PT >
void qi::adaptFuture ( const Future< FT > &  f,
Promise< PT > &  p 
)

Feed a promise from a future of possibly different type.

Will monitor f, and bounce its state to p. Error and canceled state are bounced as is. Valued state is bounced through FutureValueConverter<FT, PT>::convert()

Definition at line 621 of file future.hxx.

template<typename FT , typename PT , typename CONV >
void qi::adaptFuture ( const Future< FT > &  f,
Promise< PT > &  p,
CONV  converter 
)

Similar to adaptFuture(f, p) but with a custom converter.

Definition at line 631 of file future.hxx.

template<typename R >
void qi::adaptFuture ( Future< AnyReference > &  f,
Promise< R > &  p 
)
template<typename R >
void qi::adaptFutureUnwrap ( Future< AnyReference > &  f,
Promise< R > &  p 
)

Feed a promise from a generic future which may be unwrapped if it contains itself a future.

Definition at line 610 of file future.hxx.

AnyReferenceVector qi::asAnyReferenceVector ( const AnyValueVector &  vect)
inline

Definition at line 212 of file anyvalue.hxx.

template<typename R , typename T >
qi::Future<R> qi::async ( T  instancePointerOrSharedPointer,
const std::string &  methodName,
qi::AutoAnyReference  p1 = qi::AutoAnyReference(),
qi::AutoAnyReference  p2 = qi::AutoAnyReference(),
qi::AutoAnyReference  p3 = qi::AutoAnyReference(),
qi::AutoAnyReference  p4 = qi::AutoAnyReference(),
qi::AutoAnyReference  p5 = qi::AutoAnyReference(),
qi::AutoAnyReference  p6 = qi::AutoAnyReference(),
qi::AutoAnyReference  p7 = qi::AutoAnyReference(),
qi::AutoAnyReference  p8 = qi::AutoAnyReference() 
)

Perform an asynchronous call on a method. The argument may be a pointer or shared-pointer to an instance of a class known to type system.

template<typename R >
Future<R> qi::async ( boost::function< R()>  callback,
uint64_t  usDelay = 0 
)
inline

Deprecated:
use qi::async with qi::Duration

Definition at line 176 of file eventloop.hpp.

template<typename R >
Future<R> qi::async ( boost::function< R()>  callback,
qi::Duration  delay 
)
inline

Definition at line 181 of file eventloop.hpp.

template<typename R >
Future<R> qi::async ( boost::function< R()>  callback,
qi::SteadyClockTimePoint  timepoint 
)
inline

Definition at line 186 of file eventloop.hpp.

template<typename R , typename Func , typename ArgTrack >
qi::Future<R> qi::async ( const Func &  f,
const ArgTrack &  toTrack,
  ... 
)
template<typename RF , typename AF >
boost::function<RF> qi::bind ( const AF &  fun,
  ... 
)

Bind a set of arguments or placeholders to a function.

Handles first function argument of kind boost::weak_ptr and qi::Trackable: will try to lock and throw qi::PointerLockException in case of failure

template<typename T >
void qi::decodeBinary ( qi::BufferReader *  buf,
T *  value,
DeserializeObjectCallback  onObject = DeserializeObjectCallback(),
StreamContext *  streamContext = 0 
)

Definition at line 71 of file binarycodec.hpp.

void qi::decodeBinary ( qi::BufferReader *  buf,
AnyReference  gvp,
DeserializeObjectCallback  onObject = DeserializeObjectCallback(),
StreamContext *  ctx = 0 
)

Decode content of buf into gvp.

Parameters
bufbuffer with serialized data
gvpinitialized AnyReference of correct type. Will be filled in.
onObjectcallback invoked each time an object is encountered.
ctxconnection context
Exceptions
std::runtime_errorwhen the decoding fail
qi::AnyValue qi::decodeJSON ( const std::string &  in)

creates a GV representing a JSON string or throw on parse error.

Parameters
inJSON string to decode.
Returns
a GV representing the JSON string
std::string::const_iterator qi::decodeJSON ( const std::string::const_iterator &  begin,
const std::string::const_iterator &  end,
AnyValue &  target 
)

set the input GV to represent the JSON sequence between two string iterators or throw on parse error.

Parameters
beginiterator to the beginning of the sequence to decode.
enditerator to the end of the sequence to decode.
targetGV to set. Not modified if an error occured.
Returns
an iterator to the last read char + 1
qi::Translator& qi::defaultTranslator ( const std::string &  name)

Get a reference on the default Translator.

Parameters
nameApplication or Library name
Returns
A reference on default qi::Translator
template<class DurationTo , class TimePointFrom >
DurationTo qi::durationSince ( const TimePointFrom &  t)
inline

}@

Returns the duration elapsed since t.

Definition at line 40 of file clock.hxx.

FunctionTypeInterface* qi::dynamicFunctionTypeInterface ( )
Returns
the type used by dynamic functions
void qi::encodeBinary ( qi::Buffer *  buf,
const AutoAnyReference &  gvp,
SerializeObjectCallback  onObject = SerializeObjectCallback(),
StreamContext *  ctx = 0 
)

Encode content of gvp into buf.

Parameters
bufbuffer that will be filled with serialized data
gvpAnyReference to serialize
onObjectcallback invoked each time an object is encountered.
ctxconnection context
Exceptions
std::runtime_errorwhen the encoding fail
std::string qi::encodeJSON ( const qi::AutoAnyReference &  val)
Returns
the value encoded in JSON.
ObjectTypeInterface* qi::getDynamicTypeInterface ( )
EventLoop* qi::getEventLoop ( )

Return the global eventloop, created on demand on first call.

boost::asio::io_service& qi::getIoService ( )

Get the io_service used by the global event loop.

Returns
io_service used by the global event loop.
TypeInterface* qi::getRegisteredStruct ( const qi::Signature &  s)
Returns
matching TypeInterface registered by registerStruct() or 0.
TypeInterface* qi::getType ( const std::type_info &  type)

Runtime Type factory getter. Used by typeOf<T>()

AnyModule qi::import ( const std::string &  name)

find a module and import it, this is cross language, that's the main module entry point

this function dispatch to <lang> module factory, if the module is not already registered

AnyModule qi::import ( const ModuleInfo &  name)
std::vector<ModuleInfo> qi::listModules ( )

list all available modules (cross language

template<typename T >
boost::function<void()> qi::makeCanceler ( Future< T > &  future)
inline

Definition at line 823 of file future_fwd.hpp.

AnyObject qi::makeDynamicAnyObject ( DynamicObject *  obj,
bool  destroyObject = true,
boost::function< void(GenericObject *)>  onDelete = boost::function< void(GenericObject *)>() 
)
template<typename T >
AnyObject qi::makeDynamicSharedAnyObject ( DynamicObject *  obj,
boost::shared_ptr< T >  other 
)
inline

Make an AnyObject that shares its ref counter with other Note that obj will not be destroyed when the shared counter reaches 0.

Definition at line 81 of file dynamicobject.hpp.

AnyObject qi::makeDynamicSharedAnyObjectImpl ( DynamicObject *  obj,
boost::shared_ptr< Empty >  other 
)
TypeInterface* qi::makeFloatType ( int  bytelen)
Returns
a Type of kind float, bytelen can be 4 or 8
template<typename T >
FunctionTypeInterface* qi::makeFunctionTypeInterface ( )
template<typename T >
qi::Future< T > qi::makeFutureError ( const std::string &  error)

Helper function to return a future with the error set.

Parameters
errorthe error message.

Definition at line 548 of file future.hxx.

AnyReference qi::makeGenericTuple ( const AnyReferenceVector &  values)
Returns
an allocated Tuple made from copies of
Parameters
values
AnyReference qi::makeGenericTuplePtr ( const std::vector< TypeInterface * > &  types,
const std::vector< void * > &  values 
)
Returns
a Tuple pointing to values as its storage
TypeInterface* qi::makeIntType ( bool  issigned,
int  bytelen 
)
Returns
a Type of kind int, bytelen can be 0,1,2,4,8
qi::Signature qi::makeKwArgsSignature ( const qi::Signature &  element)
qi::Signature qi::makeListSignature ( const qi::Signature &  element)
TypeInterface* qi::makeListType ( TypeInterface *  elementType)
Returns
a Type of kind List that can contains elements of type elementType.
qi::Signature qi::makeMapSignature ( const qi::Signature &  key,
const qi::Signature &  value 
)
TypeInterface* qi::makeMapType ( TypeInterface *  keyType,
TypeInterface *  ElementType 
)
Returns
a Type of kind Map with given key and element types
template<typename T >
void qi::makeProxyProperty ( Property< T > &  target,
AnyObject  object,
const std::string &  signalName 
)

Definition at line 47 of file proxyproperty.hpp.

template<typename T >
void qi::makeProxyProperty ( ProxyProperty< T > &  target,
AnyObject  object,
const std::string &  signalName 
)

Definition at line 53 of file proxyproperty.hpp.

template<typename T >
void qi::makeProxySignal ( SignalF< T > &  target,
AnyObject  object,
const std::string &  signalName 
)

Definition at line 43 of file proxysignal.hpp.

template<typename T >
void qi::makeProxySignal ( ProxySignal< T > &  target,
AnyObject  object,
const std::string &  signalName 
)

Definition at line 50 of file proxysignal.hpp.

SessionPtr qi::makeSession ( )
inline

Definition at line 127 of file session.hpp.

qi::Signature qi::makeTupleSignature ( const std::vector< qi::AnyReference > &  vgv,
bool  resolveDynamic = false,
const std::string &  name = std::string(),
const std::vector< std::string > &  names = std::vector< std::string >() 
)
qi::Signature qi::makeTupleSignature ( const std::vector< TypeInterface * > &  vgv,
const std::string &  name = std::string(),
const std::vector< std::string > &  names = std::vector< std::string >() 
)
qi::Signature qi::makeTupleSignature ( const qi::Signature &  element)
TypeInterface* qi::makeTupleType ( const std::vector< TypeInterface * > &  memberTypes,
const std::string &  name = std::string(),
const std::vector< std::string > &  elementNames = std::vector< std::string >() 
)
Returns
a Type of kind Tuple with givent memberTypes
template<typename T , typename F >
StringTypeInterface* qi::makeTypeEquivalentString ( T *  ,
F  f 
)

Definition at line 142 of file stringtypeinterface.hxx.

TypeInterface* qi::makeTypeOfKind ( const qi::TypeKind &  kind)
Returns
a Type of the specified Kind. This do not work for list, map and tuple. kind Int and Float will create the biggest possible type. use makeFloatType and makeIntType to be more specific.
qi::Signature qi::makeVarArgsSignature ( const qi::Signature &  element)
TypeInterface* qi::makeVarArgsType ( TypeInterface *  elementType)
Returns
a Type of kind VarArgs that can contains elements of type elementType.
qi::Future<AnyReference> qi::metaCall ( ExecutionContext *  ec,
ObjectThreadingModel  objectThreadingModel,
MetaCallType  methodThreadingModel,
MetaCallType  callType,
AnyObject  manageable,
unsigned int  methodId,
AnyFunction  func,
const GenericFunctionParameters &  params,
bool  noCloneFirst = false,
unsigned int  callerId = 0,
qi::os::timeval  postTimestamp = qi::os::timeval() 
)

Make a call honoring ThreadingModel requirements

Check the following rules in order:

  • If methodThreadingModel is not auto, honor it, overriding callType
  • If el is set, force call in it (synchronously if we are in it).
  • If callType is set (not auto), honor it.
  • Be synchronous.

When the call is finally made, if objectThreadingModel is SingleThread, acquire the object lock.

Parameters
eccontext into which the call will be scheduled
objectThreadingModelthe threading model of the called object
methodThreadingModelthe threading model of the specific method
callTypethe requested threading model
manageablethe object on which to make the call
methodIdthe method id of the object to call
functhe function to call
paramsthe arguments of the call
noCloneFirstwhether the first argument of the call should be cloned or not
callerIdthread id of caller, for tracing purposes
postTimestampthe time when the call was requested
template<typename R >
void qi::nullConverter ( void *  ,
R &   
)

Definition at line 17 of file eventloop.hxx.

bool qi::operator!= ( const AnyIterator &  a,
const AnyIterator &  b 
)
inline

Definition at line 60 of file anyiterator.hxx.

bool qi::operator!= ( const AnyValue &  a,
const AnyValue &  b 
)
inline

Definition at line 186 of file anyvalue.hxx.

bool qi::operator!= ( const Url &  lhs,
const Url &  rhs 
)
inline

Compares the url strings.

Definition at line 130 of file url.hpp.

bool qi::operator!= ( const Signature &  lhs,
const Signature &  rhs 
)
inline

Definition at line 154 of file signature.hpp.

bool qi::operator!= ( const AnyReference &  a,
const AnyReference &  b 
)
inline

Definition at line 242 of file anyreference.hxx.

bool qi::operator< ( const TraceAnalyzer::FlowLink &  a,
const TraceAnalyzer::FlowLink &  b 
)
inline

Definition at line 50 of file traceanalyzer.hpp.

bool qi::operator< ( const AnyValue &  a,
const AnyValue &  b 
)
inline

Less than operator. Will compare the values within the AnyValue.

Definition at line 221 of file anyvalue.hxx.

bool qi::operator< ( const MetaObject &  a,
const MetaObject &  b 
)
bool qi::operator< ( const AnyReference &  a,
const AnyReference &  b 
)
bool qi::operator== ( const AnyIterator &  a,
const AnyIterator &  b 
)
inline

Definition at line 55 of file anyiterator.hxx.

bool qi::operator== ( const AnyValue &  a,
const AnyValue &  b 
)
inline

Value equality operator. Will compare the values within.

Definition at line 226 of file anyvalue.hxx.

bool qi::operator== ( const Url &  lhs,
const Url &  rhs 
)

Compares the url strings.

bool qi::operator== ( const Signature &  lhs,
const Signature &  rhs 
)
bool qi::operator== ( const AnyReference &  a,
const AnyReference &  b 
)
template<typename T >
void qi::PromiseNoop ( qi::Promise< T > &  )

Helper function that does nothing on future cancelation.

Definition at line 787 of file future_fwd.hpp.

template<typename A >
boost::enable_if<typename detail::Accessor<A>::is_accessor, PropertyBase*>::type qi::propertyAccess ( A  acc,
void *  instance 
)

Definition at line 166 of file objecttypebuilder.hxx.

bool qi::registerCppEmbeddedModule ( const std::string &  moduleName,
boost::function< void(ModuleBuilder *)>  fun 
)

register a module into the module map

bool qi::registerModuleFactory ( const std::string &  name,
ModuleFactoryFunctor  fun 
)

Register a module factory for a given language

template<typename ProxyType >
bool qi::registerProxy ( )

Register Proxy as a proxy class. Required for bound methods to accept a ProxyPtr as argument Proxy must be constructible with an AnyObject as argument

Returns
unused value, present to ease registration at static initialisation

Definition at line 169 of file proxyregister.hpp.

template<typename Proxy , typename Interface >
bool qi::registerProxyInterface ( )

Register Proxy as a proxy class for interface Interface. Required to allow the typesystem to construct an Object<Interface> from an AnyObject. Proxy must be constructible with an AnyObject as argument

Returns
unused value, present to ease registration at static initialisation

Definition at line 152 of file proxyregister.hpp.

void qi::registerStruct ( TypeInterface *  type)

Register type for signature -> TypeInterface factory.

bool qi::registerType ( const std::type_info &  typeId,
TypeInterface *  type 
)

Runtime Type factory setter.

template<typename A >
boost::enable_if<typename detail::Accessor<A>::is_accessor, SignalBase*>::type qi::signalAccess ( A  acc,
void *  instance 
)

Definition at line 158 of file objecttypebuilder.hxx.

std::vector<std::string> qi::signatureSplit ( const std::string &  fullSignature)
void qi::sleepFor ( const qi::Duration &  d)

Blocks the execution of the current thread for at least d.

template<class Rep , class Period >
void qi::sleepFor ( const boost::chrono::duration< Rep, Period > &  d)
inline

Definition at line 16 of file clock.hxx.

void qi::sleepUntil ( const SteadyClockTimePoint &  t)

Blocks the execution of the current thread until t has been reached.

This is equivalent to sleepFor(t - SteadyClockTimePoint::now())

template<class Duration >
void qi::sleepUntil ( const boost::chrono::time_point< SteadyClock, Duration > &  t)
inline

Definition at line 22 of file clock.hxx.

void qi::sleepUntil ( const ClockTimePoint &  t)

Blocks the execution of the current thread until t has been reached.

template<class Duration >
void qi::sleepUntil ( const boost::chrono::time_point< Clock, Duration > &  t)
inline

Definition at line 28 of file clock.hxx.

void qi::sleepUntil ( const SystemClockTimePoint &  t)

Blocks the execution of the current thread until t has been reached.

Adjustments of the clock are taken into account. Thus the duration of the block might, but might not, be less or more than t - SystemClock::now()

template<class Duration >
void qi::sleepUntil ( const boost::chrono::time_point< SystemClock, Duration > &  t)
inline

Definition at line 34 of file clock.hxx.

void qi::startEventLoop ( int  nthread)

Start the eventloop with nthread threads. No-op if already started.

Parameters
nthreadSet the minimum number of worker threads in the pool.
QI_API_DEPRECATED SteadyClockTimePoint qi::steadyClockNow ( )
inline

Returns a time_point representing the current value of the clock.

Definition at line 211 of file clock.hpp.

long qi::testAndSet ( long *  cond)
inline

Cross-platform implementation of atomic Test-And-Set.

Parameters
condpointer to the value to test and set.
Returns
true (1) if cond is 0, false (0) otherwise.

Definition at line 35 of file atomic.hpp.

std::string qi::toISO8601String ( const SystemClockTimePoint &  t)

Return the date and time as a string in ISO 8601 format. The time is given up to millisecond precision, in UTC. The format does not include colon characters, to be suitable for inclusion in filenames on any filesystem.

For instance the string for a quarter past nine PM on April 3rd, 2001 is "2001-04-03T211500.000Z"

std::string qi::tr ( const std::string &  msg,
const std::string &  domain = "",
const std::string &  locale = "",
const std::string &  context = "" 
)

Translate a message.

Parameters
msgMessage to translate
domainDomain name
localeLocale name
contextContext of the msg
Returns
The translated message
template<typename F , typename ARG0 >
boost::function< F > qi::track ( const boost::function< F > &  f,
const ARG0 &  arg0 
)

Wrap given function f with a tracking check on arg0, which must be a weak pointer or a Trackable instance.

Returns
a function that, when called:

Definition at line 206 of file trackable.hxx.

template<typename F , typename ARG0 >
boost::function<F> qi::trackSilent ( const boost::function< F > &  f,
const ARG0 &  arg0 
)

Definition at line 219 of file trackable.hxx.

template<typename F , typename ARG0 >
boost::function< F > qi::trackWithFallback ( boost::function< void()>  onFail,
const boost::function< F > &  f,
const ARG0 &  arg0 
)

Wrap given function f with a tracking check on arg0, which must be a weak pointer or a Trackable instance.

Returns
a function that, when called:
  • If lock can be acquired, calls f
  • Else calls onFail

Definition at line 212 of file trackable.hxx.

std::string qi::trContext ( const std::string &  msg,
const std::string &  context 
)

Translate a message with a specific context.

Parameters
msgMessage to translate
contextContext of the msg
Returns
The translated message
template<typename TypeDispatcher >
TypeDispatcher& qi::typeDispatch ( const TypeDispatcher &  vv,
AnyReference  value 
)

Definition at line 13 of file typedispatcher.hxx.

template<typename Dispatcher >
Dispatcher& qi::typeDispatch ( const Dispatcher &  dispatcher,
AnyReference  value 
)

Invoke one of the visitor functions in dispatcher based on kind(). Dispatcher must implement TypeDispatcher.

template<typename T >
TypeInterface * qi::typeOf ( )

Get type from a type. Will return a static TypeImpl<T> if T is not registered

Definition at line 91 of file type.hxx.

template<typename T >
TypeInterface* qi::typeOf ( const T &  v)

Get type from a value. No need to delete the result.

Definition at line 191 of file typeinterface.hpp.

codecvt_type& qi::unicodeFacet ( )

UTF-8 facet object getter.

Returns
UTF-8 implementation for std::codecvt<wchar_t, char, std::mbstate_t>

Return a facet object that can be used by stl (iostream, locale, ...) and std::locale compliant library like boost::filesystem.

This class allow conversion between UTF-8 (char) and UTF-16/UTF-32 (wchar).

template<typename T >
qi::FutureSync<std::vector<Future<T> > > qi::waitForAll ( std::vector< Future< T > > &  vect)

Helper function to wait on a vector of futures.

Parameters
vectThe vector of futures to wait on.
* This function will wait on all the futures of the given vector and return
* when they have all been set, either with an error or a valid value.
* 

Definition at line 237 of file futurebarrier.hpp.

template<typename T >
qi::FutureSync< qi::Future<T> > qi::waitForFirst ( std::vector< Future< T > > &  vect)

Helper function to wait for the first valid future.

Parameters
vectThe vector of futures to wait on.
Returns
The first valid future, or an error.
* This function will wait on all the futures of the vector. It returns the
* first valid future that returns. If no future is valid, a future set with
* an error is returned.
* 

Definition at line 259 of file futurebarrier.hpp.

QI_API_DEPRECATED SystemClockTimePoint qi::wallClockNow ( )
inline

Returns a time_point representing the current value of the clock.

Definition at line 217 of file clock.hpp.

Variable Documentation

template<template< typename > class T>
class QITYPE_TEMPLATE_API qi::TypeOfTemplate

Definition at line 130 of file type.hxx.

QI_API_DEPRECATED typedef SystemClock qi::WallClock

Definition at line 200 of file clock.hpp.

QI_API_DEPRECATED typedef SystemClockTimePoint qi::WallClockTimePoint

System clock time point.

Definition at line 207 of file clock.hpp.