library of assembled shared sources

http://lass.cocamware.com

lass::util Namespace Reference

general utility, debug facilities, . More...


Namespaces

namespace  impl
namespace  experimental

Data Structures

class  lock_free_stack
class  AllocatorClassAdaptor
 Use an Allocator to implement a class' new and delete

Derive from this class to implement new and delete based on Allocator. More...

class  AllocatorMalloc
class  AllocatorLocked
 Guard a MT unsafe allocator with some lock. More...
class  AllocatorPerThread
 Instantiates an Allocator per thread. More...
class  AllocatorVariable
 A variable-size allocator built on top of a fixed-size allocator. More...
class  AllocatorFixed
 fixes a variable-size allocator to one size. More...
struct  BinnerOne
struct  BinnerPower2
struct  BinnerPadded
class  AllocatorBinned
class  AllocatorStaticFixed
class  AllocatorThrow
class  AllocatorNoThrow
class  AllocatorSingleton
class  AllocatorStats
class  AllocatorFreeList
 A fixed-size free-list allocator. More...
class  AllocatorConcurrentFreeList
 A fixed-size lock-free free-list allocator. More...
class  AllocatorSimpleBlock
 A simple fixed-size block allocator. More...
class  AllocatorAligned
class  AllocatorSized
class  TaggedPtr
 Pointer with a tag for ABA salvation

Some lock-free algorithms suffer from the ABA problem when acting on pointers. More...

struct  CallTraits
struct  CallTraits< T const >
struct  CallTraits< T & >
struct  CallTraits< T const & >
struct  CallTraits< T * >
struct  CallTraits< T const * >
struct  CallTraits< T[N]>
struct  CallTraits< T const [N]>
class  Callback0
 callback with 0 parameter(s) and without returnvalue. More...
class  Callback1
 callback with 1 parameter(s) but without returnvalue. More...
class  Callback10
 callback with 10 parameter(s) but without returnvalue. More...
class  Callback11
 callback with 11 parameter(s) but without returnvalue. More...
class  Callback12
 callback with 12 parameter(s) but without returnvalue. More...
class  Callback13
 callback with 13 parameter(s) but without returnvalue. More...
class  Callback14
 callback with 14 parameter(s) but without returnvalue. More...
class  Callback15
 callback with 15 parameter(s) but without returnvalue. More...
class  Callback2
 callback with 2 parameter(s) but without returnvalue. More...
class  Callback3
 callback with 3 parameter(s) but without returnvalue. More...
class  Callback4
 callback with 4 parameter(s) but without returnvalue. More...
class  Callback5
 callback with 5 parameter(s) but without returnvalue. More...
class  Callback6
 callback with 6 parameter(s) but without returnvalue. More...
class  Callback7
 callback with 7 parameter(s) but without returnvalue. More...
class  Callback8
 callback with 8 parameter(s) but without returnvalue. More...
class  Callback9
 callback with 9 parameter(s) but without returnvalue. More...
class  EmptyCallback
class  CallbackR0
 callback with 0 parameters but with returnvalue. More...
class  CallbackR1
 callback with 1 parameter1 and with returnvalue. More...
class  CallbackR10
 callback with 10 parameter10 and with returnvalue. More...
class  CallbackR11
 callback with 11 parameter11 and with returnvalue. More...
class  CallbackR12
 callback with 12 parameter12 and with returnvalue. More...
class  CallbackR13
 callback with 13 parameter13 and with returnvalue. More...
class  CallbackR14
 callback with 14 parameter14 and with returnvalue. More...
class  CallbackR15
 callback with 15 parameter15 and with returnvalue. More...
class  CallbackR2
 callback with 2 parameter2 and with returnvalue. More...
class  CallbackR3
 callback with 3 parameter3 and with returnvalue. More...
class  CallbackR4
 callback with 4 parameter4 and with returnvalue. More...
class  CallbackR5
 callback with 5 parameter5 and with returnvalue. More...
class  CallbackR6
 callback with 6 parameter6 and with returnvalue. More...
class  CallbackR7
 callback with 7 parameter7 and with returnvalue. More...
class  CallbackR8
 callback with 8 parameter8 and with returnvalue. More...
class  CallbackR9
 callback with 9 parameter9 and with returnvalue. More...
class  Clock
class  CloneFactory
 object creation by cloning prototypes More...
class  CrashDump
class  Dictionary
 a wrapper around a std::map to translate keys in values and back. More...
class  EnforceFailure
 Exception thrown by enforcers. More...
class  Exception
 type of all exceptions in lass More...
class  KeyError
class  ValueError
struct  FixedArray
 compile time fixed array that also supports zero length More...
class  FixedArray< T, 0 >
class  IdGenerator
 Generates sequential and unique ID's. More...
class  NonCopyable
 use as base class if derived should not be copyable More...
class  ObjectFactory
class  ProgressIndicator
 Prints a progress indication to console. More...
class  RWLock
 Lean and mean synchronisation object, without OS support. More...
class  ScopedPtr
class  SharedPtr
class  Singleton
 non-intrusive singleton holder. More...
class  SmartI
 smart pointer to COM interfaces More...
class  ObjectStorage
 Default storage policy for single objects, implementation of StoragePolicy concept. More...
class  ArrayStorage
 Default storage policy for arrays, implementation of StoragePolicy concept. More...
class  DefaultCounter
 The default counter for the shared pointers, implementation of CounterPolicy concept. More...
class  IntrusiveCounter
 implementation of CounterPolicy concept, using a counter in the managed object itself. More...
class  StopWatch
class  BadStringCast
class  Mutex
 Mutex. More...
class  CriticalSection
 CriticalSection. More...
class  Condition
 Condition. More...
class  Thread
 A base class for threads. More...
class  ThreadLocalStorage
 A primitive to provide Thread Local Storage functionality. More...
class  ThreadLocalVariable
 A primitive to provide Thread Local Storage functionality for a first-citizen class. More...
class  Semaphore
 Lean and mean synchronisation object, without OS support. More...
class  LockerBase
 Common base class for lockers. More...
class  Locker
class  ThreadFun
class  DefaultConsumer
 Default consumer calls operator() of task. More...
class  Spinning
 implementation of ThreadPool's IdlePolicy More...
class  Signaled
 implementation of ThreadPool's IdlePolicy More...
class  SelfParticipating
 implementation of ThreadPool's ParticipationPolicy More...
class  NotParticipating
 implementation of ThreadPool's ParticipationPolicy More...
class  ThreadPool
class  BadVisit
class  VisitorBase
class  Visitor
struct  ThrowOnUnknownVisit
struct  IgnoreUnknownVisit
class  VisitableBase

Typedefs

typedef util::Dictionary
< std::string, ProcessPriority
TProcessPriorityDictionary
 type of dictionary that can translate strings to ProcessPriority values.
typedef Locker< MutexMutexLocker
 typedef of Locker for Mutex
typedef Locker< CriticalSectionCriticalSectionLocker
 typedef of Locker for CriticalSection
typedef Locker< SemaphoreSemaphoreLocker
 typedef of Locker for Semaphore

Enumerations

enum  ProcessPriority {
  ppLow, ppBelowNormal, ppNormal, ppAboveNormal,
  ppHigh, numberOfProcessPriorities
}
 different process priority levels More...
enum  DestructionPriorities {
  destructionPriorityDefault = 1000, destructionPriorityBeginUser = 500, destructionPriorityInternalProxyMan = 0, destructionPriorityInternalPythonMutex = 50,
  destructionPriorityInternalTlsDestructors = 100, destructionPriorityInternalAllocators = 200, destructionPriorityInternalTlsLocalsMain = 400
}
 Destruction priority constants. More...
enum  LockResult { lockSuccess, lockBusy }
 Return code for lock functions. More...
enum  WaitResult { waitSuccess, waitTimeout }
 Return code for wait functions. More...
enum  ThreadKind { threadDetached, threadJoinable }
 ThreadKind. More...

Functions

template<typename T >
bool atomicCompareAndSwap (volatile T &dest, T expectedValue, T newValue)
 Performs the following pseudocode in an atomic way (no other threads can intervene):.
template<typename T1 , typename T2 >
bool atomicCompareAndSwap (volatile T1 &dest1, T1 expected1, T2 expected2, T1 new1, T2 new2)
 Performs the following pseudocode in an atomic way (no other threads can intervene):.
template<typename T >
void atomicIncrement (volatile T &value)
 Performs the following pseudocode in an atomic way (no other threads can intervene):.
template<typename T >
void atomicDecrement (volatile T &value)
 Performs the following pseudocode in an atomic way (no other threads can intervene):.
template<typename R >
impl::BindCallback< R >::Type bind (R(*fun)())
template<typename R , typename Obj , typename ObjPtr >
impl::BindCallback< R >::Type bind (R(Obj::*fun)() const, ObjPtr obj)
Callback0 bind (const Callback0 &fun)
template<typename R >
CallbackR0< R > bind (const CallbackR0< R > &fun)
template<typename R , typename P1 , typename X1 >
impl::BindCallback< R >::Type bind (R(*fun)(P1), X1 x1)
template<typename R , typename P1 , typename Obj , typename ObjPtr , typename X1 >
impl::BindCallback< R >::Type bind (R(Obj::*fun)(P1) const, ObjPtr obj, X1 x1)
template<typename R , typename P1 , typename X1 >
CallbackR0< R > bind (const CallbackR1< R, P1 > &fun, X1 x1)
template<typename P1 , typename X1 >
Callback0 bind (const Callback1< P1 > &fun, X1 x1)
template<typename R , typename P1 , typename P2 , typename X1 , typename X2 >
impl::BindCallback< R >::Type bind (R(*fun)(P1, P2), X1 x1, X2 x2)
template<typename R , typename P1 , typename P2 , typename Obj , typename ObjPtr , typename X1 , typename X2 >
impl::BindCallback< R >::Type bind (R(Obj::*fun)(P1, P2) const, ObjPtr obj, X1 x1, X2 x2)
template<typename R , typename P1 , typename P2 , typename X1 , typename X2 >
CallbackR0< R > bind (const CallbackR2< R, P1, P2 > &fun, X1 x1, X2 x2)
template<typename P1 , typename P2 , typename X1 , typename X2 >
Callback0 bind (const Callback2< P1, P2 > &fun, X1 x1, X2 x2)
template<typename R , typename P1 , typename P2 , typename P3 , typename X1 , typename X2 , typename X3 >
impl::BindCallback< R >::Type bind (R(*fun)(P1, P2, P3), X1 x1, X2 x2, X3 x3)
template<typename R , typename P1 , typename P2 , typename P3 , typename Obj , typename ObjPtr , typename X1 , typename X2 , typename X3 >
impl::BindCallback< R >::Type bind (R(Obj::*fun)(P1, P2, P3) const, ObjPtr obj, X1 x1, X2 x2, X3 x3)
template<typename R , typename P1 , typename P2 , typename P3 , typename X1 , typename X2 , typename X3 >
CallbackR0< R > bind (const CallbackR3< R, P1, P2, P3 > &fun, X1 x1, X2 x2, X3 x3)
template<typename P1 , typename P2 , typename P3 , typename X1 , typename X2 , typename X3 >
Callback0 bind (const Callback3< P1, P2, P3 > &fun, X1 x1, X2 x2, X3 x3)
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename X1 , typename X2 , typename X3 , typename X4 >
impl::BindCallback< R >::Type bind (R(*fun)(P1, P2, P3, P4), X1 x1, X2 x2, X3 x3, X4 x4)
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename Obj , typename ObjPtr , typename X1 , typename X2 , typename X3 , typename X4 >
impl::BindCallback< R >::Type bind (R(Obj::*fun)(P1, P2, P3, P4) const, ObjPtr obj, X1 x1, X2 x2, X3 x3, X4 x4)
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename X1 , typename X2 , typename X3 , typename X4 >
CallbackR0< R > bind (const CallbackR4< R, P1, P2, P3, P4 > &fun, X1 x1, X2 x2, X3 x3, X4 x4)
template<typename P1 , typename P2 , typename P3 , typename P4 , typename X1 , typename X2 , typename X3 , typename X4 >
Callback0 bind (const Callback4< P1, P2, P3, P4 > &fun, X1 x1, X2 x2, X3 x3, X4 x4)
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 >
impl::BindCallback< R >::Type bind (R(*fun)(P1, P2, P3, P4, P5), X1 x1, X2 x2, X3 x3, X4 x4, X5 x5)
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename Obj , typename ObjPtr , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 >
impl::BindCallback< R >::Type bind (R(Obj::*fun)(P1, P2, P3, P4, P5) const, ObjPtr obj, X1 x1, X2 x2, X3 x3, X4 x4, X5 x5)
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 >
CallbackR0< R > bind (const CallbackR5< R, P1, P2, P3, P4, P5 > &fun, X1 x1, X2 x2, X3 x3, X4 x4, X5 x5)
template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 >
Callback0 bind (const Callback5< P1, P2, P3, P4, P5 > &fun, X1 x1, X2 x2, X3 x3, X4 x4, X5 x5)
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 , typename X6 >
impl::BindCallback< R >::Type bind (R(*fun)(P1, P2, P3, P4, P5, P6), X1 x1, X2 x2, X3 x3, X4 x4, X5 x5, X6 x6)
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename Obj , typename ObjPtr , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 , typename X6 >
impl::BindCallback< R >::Type bind (R(Obj::*fun)(P1, P2, P3, P4, P5, P6) const, ObjPtr obj, X1 x1, X2 x2, X3 x3, X4 x4, X5 x5, X6 x6)
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 , typename X6 >
CallbackR0< R > bind (const CallbackR6< R, P1, P2, P3, P4, P5, P6 > &fun, X1 x1, X2 x2, X3 x3, X4 x4, X5 x5, X6 x6)
template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 , typename X6 >
Callback0 bind (const Callback6< P1, P2, P3, P4, P5, P6 > &fun, X1 x1, X2 x2, X3 x3, X4 x4, X5 x5, X6 x6)
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 , typename X6 , typename X7 >
impl::BindCallback< R >::Type bind (R(*fun)(P1, P2, P3, P4, P5, P6, P7), X1 x1, X2 x2, X3 x3, X4 x4, X5 x5, X6 x6, X7 x7)
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename Obj , typename ObjPtr , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 , typename X6 , typename X7 >
impl::BindCallback< R >::Type bind (R(Obj::*fun)(P1, P2, P3, P4, P5, P6, P7) const, ObjPtr obj, X1 x1, X2 x2, X3 x3, X4 x4, X5 x5, X6 x6, X7 x7)
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 , typename X6 , typename X7 >
CallbackR0< R > bind (const CallbackR7< R, P1, P2, P3, P4, P5, P6, P7 > &fun, X1 x1, X2 x2, X3 x3, X4 x4, X5 x5, X6 x6, X7 x7)
template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 , typename X6 , typename X7 >
Callback0 bind (const Callback7< P1, P2, P3, P4, P5, P6, P7 > &fun, X1 x1, X2 x2, X3 x3, X4 x4, X5 x5, X6 x6, X7 x7)
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 , typename X6 , typename X7 , typename X8 >
impl::BindCallback< R >::Type bind (R(*fun)(P1, P2, P3, P4, P5, P6, P7, P8), X1 x1, X2 x2, X3 x3, X4 x4, X5 x5, X6 x6, X7 x7, X8 x8)
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename Obj , typename ObjPtr , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 , typename X6 , typename X7 , typename X8 >
impl::BindCallback< R >::Type bind (R(Obj::*fun)(P1, P2, P3, P4, P5, P6, P7, P8) const, ObjPtr obj, X1 x1, X2 x2, X3 x3, X4 x4, X5 x5, X6 x6, X7 x7, X8 x8)
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 , typename X6 , typename X7 , typename X8 >
CallbackR0< R > bind (const CallbackR8< R, P1, P2, P3, P4, P5, P6, P7, P8 > &fun, X1 x1, X2 x2, X3 x3, X4 x4, X5 x5, X6 x6, X7 x7, X8 x8)
template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 , typename X6 , typename X7 , typename X8 >
Callback0 bind (const Callback8< P1, P2, P3, P4, P5, P6, P7, P8 > &fun, X1 x1, X2 x2, X3 x3, X4 x4, X5 x5, X6 x6, X7 x7, X8 x8)
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 , typename X6 , typename X7 , typename X8 , typename X9 >
impl::BindCallback< R >::Type bind (R(*fun)(P1, P2, P3, P4, P5, P6, P7, P8, P9), X1 x1, X2 x2, X3 x3, X4 x4, X5 x5, X6 x6, X7 x7, X8 x8, X9 x9)
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename Obj , typename ObjPtr , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 , typename X6 , typename X7 , typename X8 , typename X9 >
impl::BindCallback< R >::Type bind (R(Obj::*fun)(P1, P2, P3, P4, P5, P6, P7, P8, P9) const, ObjPtr obj, X1 x1, X2 x2, X3 x3, X4 x4, X5 x5, X6 x6, X7 x7, X8 x8, X9 x9)
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 , typename X6 , typename X7 , typename X8 , typename X9 >
CallbackR0< R > bind (const CallbackR9< R, P1, P2, P3, P4, P5, P6, P7, P8, P9 > &fun, X1 x1, X2 x2, X3 x3, X4 x4, X5 x5, X6 x6, X7 x7, X8 x8, X9 x9)
template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 , typename X6 , typename X7 , typename X8 , typename X9 >
Callback0 bind (const Callback9< P1, P2, P3, P4, P5, P6, P7, P8, P9 > &fun, X1 x1, X2 x2, X3 x3, X4 x4, X5 x5, X6 x6, X7 x7, X8 x8, X9 x9)
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 , typename X6 , typename X7 , typename X8 , typename X9 , typename X10 >
impl::BindCallback< R >::Type bind (R(*fun)(P1, P2, P3, P4, P5, P6, P7, P8, P9, P10), X1 x1, X2 x2, X3 x3, X4 x4, X5 x5, X6 x6, X7 x7, X8 x8, X9 x9, X10 x10)
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename Obj , typename ObjPtr , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 , typename X6 , typename X7 , typename X8 , typename X9 , typename X10 >
impl::BindCallback< R >::Type bind (R(Obj::*fun)(P1, P2, P3, P4, P5, P6, P7, P8, P9, P10) const, ObjPtr obj, X1 x1, X2 x2, X3 x3, X4 x4, X5 x5, X6 x6, X7 x7, X8 x8, X9 x9, X10 x10)
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 , typename X6 , typename X7 , typename X8 , typename X9 , typename X10 >
CallbackR0< R > bind (const CallbackR10< R, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10 > &fun, X1 x1, X2 x2, X3 x3, X4 x4, X5 x5, X6 x6, X7 x7, X8 x8, X9 x9, X10 x10)
template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 , typename X6 , typename X7 , typename X8 , typename X9 , typename X10 >
Callback0 bind (const Callback10< P1, P2, P3, P4, P5, P6, P7, P8, P9, P10 > &fun, X1 x1, X2 x2, X3 x3, X4 x4, X5 x5, X6 x6, X7 x7, X8 x8, X9 x9, X10 x10)
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 , typename X6 , typename X7 , typename X8 , typename X9 , typename X10 , typename X11 >
impl::BindCallback< R >::Type bind (R(*fun)(P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11), X1 x1, X2 x2, X3 x3, X4 x4, X5 x5, X6 x6, X7 x7, X8 x8, X9 x9, X10 x10, X11 x11)
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename Obj , typename ObjPtr , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 , typename X6 , typename X7 , typename X8 , typename X9 , typename X10 , typename X11 >
impl::BindCallback< R >::Type bind (R(Obj::*fun)(P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11) const, ObjPtr obj, X1 x1, X2 x2, X3 x3, X4 x4, X5 x5, X6 x6, X7 x7, X8 x8, X9 x9, X10 x10, X11 x11)
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 , typename X6 , typename X7 , typename X8 , typename X9 , typename X10 , typename X11 >
CallbackR0< R > bind (const CallbackR11< R, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11 > &fun, X1 x1, X2 x2, X3 x3, X4 x4, X5 x5, X6 x6, X7 x7, X8 x8, X9 x9, X10 x10, X11 x11)
template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 , typename X6 , typename X7 , typename X8 , typename X9 , typename X10 , typename X11 >
Callback0 bind (const Callback11< P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11 > &fun, X1 x1, X2 x2, X3 x3, X4 x4, X5 x5, X6 x6, X7 x7, X8 x8, X9 x9, X10 x10, X11 x11)
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename P12 , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 , typename X6 , typename X7 , typename X8 , typename X9 , typename X10 , typename X11 , typename X12 >
impl::BindCallback< R >::Type bind (R(*fun)(P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12), X1 x1, X2 x2, X3 x3, X4 x4, X5 x5, X6 x6, X7 x7, X8 x8, X9 x9, X10 x10, X11 x11, X12 x12)
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename P12 , typename Obj , typename ObjPtr , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 , typename X6 , typename X7 , typename X8 , typename X9 , typename X10 , typename X11 , typename X12 >
impl::BindCallback< R >::Type bind (R(Obj::*fun)(P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12) const, ObjPtr obj, X1 x1, X2 x2, X3 x3, X4 x4, X5 x5, X6 x6, X7 x7, X8 x8, X9 x9, X10 x10, X11 x11, X12 x12)
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename P12 , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 , typename X6 , typename X7 , typename X8 , typename X9 , typename X10 , typename X11 , typename X12 >
CallbackR0< R > bind (const CallbackR12< R, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12 > &fun, X1 x1, X2 x2, X3 x3, X4 x4, X5 x5, X6 x6, X7 x7, X8 x8, X9 x9, X10 x10, X11 x11, X12 x12)
template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename P12 , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 , typename X6 , typename X7 , typename X8 , typename X9 , typename X10 , typename X11 , typename X12 >
Callback0 bind (const Callback12< P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12 > &fun, X1 x1, X2 x2, X3 x3, X4 x4, X5 x5, X6 x6, X7 x7, X8 x8, X9 x9, X10 x10, X11 x11, X12 x12)
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename P12 , typename P13 , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 , typename X6 , typename X7 , typename X8 , typename X9 , typename X10 , typename X11 , typename X12 , typename X13 >
impl::BindCallback< R >::Type bind (R(*fun)(P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13), X1 x1, X2 x2, X3 x3, X4 x4, X5 x5, X6 x6, X7 x7, X8 x8, X9 x9, X10 x10, X11 x11, X12 x12, X13 x13)
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename P12 , typename P13 , typename Obj , typename ObjPtr , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 , typename X6 , typename X7 , typename X8 , typename X9 , typename X10 , typename X11 , typename X12 , typename X13 >
impl::BindCallback< R >::Type bind (R(Obj::*fun)(P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13) const, ObjPtr obj, X1 x1, X2 x2, X3 x3, X4 x4, X5 x5, X6 x6, X7 x7, X8 x8, X9 x9, X10 x10, X11 x11, X12 x12, X13 x13)
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename P12 , typename P13 , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 , typename X6 , typename X7 , typename X8 , typename X9 , typename X10 , typename X11 , typename X12 , typename X13 >
CallbackR0< R > bind (const CallbackR13< R, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13 > &fun, X1 x1, X2 x2, X3 x3, X4 x4, X5 x5, X6 x6, X7 x7, X8 x8, X9 x9, X10 x10, X11 x11, X12 x12, X13 x13)
template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename P12 , typename P13 , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 , typename X6 , typename X7 , typename X8 , typename X9 , typename X10 , typename X11 , typename X12 , typename X13 >
Callback0 bind (const Callback13< P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13 > &fun, X1 x1, X2 x2, X3 x3, X4 x4, X5 x5, X6 x6, X7 x7, X8 x8, X9 x9, X10 x10, X11 x11, X12 x12, X13 x13)
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename P12 , typename P13 , typename P14 , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 , typename X6 , typename X7 , typename X8 , typename X9 , typename X10 , typename X11 , typename X12 , typename X13 , typename X14 >
impl::BindCallback< R >::Type bind (R(*fun)(P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14), X1 x1, X2 x2, X3 x3, X4 x4, X5 x5, X6 x6, X7 x7, X8 x8, X9 x9, X10 x10, X11 x11, X12 x12, X13 x13, X14 x14)
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename P12 , typename P13 , typename P14 , typename Obj , typename ObjPtr , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 , typename X6 , typename X7 , typename X8 , typename X9 , typename X10 , typename X11 , typename X12 , typename X13 , typename X14 >
impl::BindCallback< R >::Type bind (R(Obj::*fun)(P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14) const, ObjPtr obj, X1 x1, X2 x2, X3 x3, X4 x4, X5 x5, X6 x6, X7 x7, X8 x8, X9 x9, X10 x10, X11 x11, X12 x12, X13 x13, X14 x14)
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename P12 , typename P13 , typename P14 , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 , typename X6 , typename X7 , typename X8 , typename X9 , typename X10 , typename X11 , typename X12 , typename X13 , typename X14 >
CallbackR0< R > bind (const CallbackR14< R, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14 > &fun, X1 x1, X2 x2, X3 x3, X4 x4, X5 x5, X6 x6, X7 x7, X8 x8, X9 x9, X10 x10, X11 x11, X12 x12, X13 x13, X14 x14)
template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename P12 , typename P13 , typename P14 , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 , typename X6 , typename X7 , typename X8 , typename X9 , typename X10 , typename X11 , typename X12 , typename X13 , typename X14 >
Callback0 bind (const Callback14< P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14 > &fun, X1 x1, X2 x2, X3 x3, X4 x4, X5 x5, X6 x6, X7 x7, X8 x8, X9 x9, X10 x10, X11 x11, X12 x12, X13 x13, X14 x14)
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename P12 , typename P13 , typename P14 , typename P15 , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 , typename X6 , typename X7 , typename X8 , typename X9 , typename X10 , typename X11 , typename X12 , typename X13 , typename X14 , typename X15 >
impl::BindCallback< R >::Type bind (R(*fun)(P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15), X1 x1, X2 x2, X3 x3, X4 x4, X5 x5, X6 x6, X7 x7, X8 x8, X9 x9, X10 x10, X11 x11, X12 x12, X13 x13, X14 x14, X15 x15)
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename P12 , typename P13 , typename P14 , typename P15 , typename Obj , typename ObjPtr , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 , typename X6 , typename X7 , typename X8 , typename X9 , typename X10 , typename X11 , typename X12 , typename X13 , typename X14 , typename X15 >
impl::BindCallback< R >::Type bind (R(Obj::*fun)(P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15) const, ObjPtr obj, X1 x1, X2 x2, X3 x3, X4 x4, X5 x5, X6 x6, X7 x7, X8 x8, X9 x9, X10 x10, X11 x11, X12 x12, X13 x13, X14 x14, X15 x15)
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename P12 , typename P13 , typename P14 , typename P15 , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 , typename X6 , typename X7 , typename X8 , typename X9 , typename X10 , typename X11 , typename X12 , typename X13 , typename X14 , typename X15 >
CallbackR0< R > bind (const CallbackR15< R, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15 > &fun, X1 x1, X2 x2, X3 x3, X4 x4, X5 x5, X6 x6, X7 x7, X8 x8, X9 x9, X10 x10, X11 x11, X12 x12, X13 x13, X14 x14, X15 x15)
template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename P12 , typename P13 , typename P14 , typename P15 , typename X1 , typename X2 , typename X3 , typename X4 , typename X5 , typename X6 , typename X7 , typename X8 , typename X9 , typename X10 , typename X11 , typename X12 , typename X13 , typename X14 , typename X15 >
Callback0 bind (const Callback15< P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15 > &fun, X1 x1, X2 x2, X3 x3, X4 x4, X5 x5, X6 x6, X7 x7, X8 x8, X9 x9, X10 x10, X11 x11, X12 x12, X13 x13, X14 x14, X15 x15)
template<typename T >
void setBit (T &a_bits, unsigned a_bit)
 Set a bit high.
template<typename T >
void clearBit (T &a_bits, unsigned a_bit)
 set a bit low.
template<typename T >
void flipBit (T &a_bits, unsigned a_bit)
 flip state of a bit (low->high, high->low).
template<typename T >
void setBitIf (T &a_bits, unsigned a_bit, bool a_condition)
 set a bit high if (and only if) a condition is fullfilled.
template<typename T >
void clearBitIf (T &a_bits, unsigned a_bit, bool a_condition)
 set a bit low if (and only if) a condition is fullfilled is true.
template<typename T >
void flipBitIf (T &a_bits, unsigned a_bit, bool a_condition)
 flip a bit if (and only if) a condition is fullfilled (low->high, high->low).
template<typename T >
void setBitTo (T &a_bits, unsigned a_bit, bool a_state)
 set a bit to a given state.
template<typename T >
bool checkBit (T a_bits, unsigned a_bit)
 return true if a bit is set high.
template<typename T >
void setMasked (T &a_bits, const T &a_mask)
 Set masked bits high.
template<typename T >
void clearMasked (T &a_bits, const T &a_mask)
 Set masked bits low.
template<typename T >
void flipMasked (T &a_bits, const T &a_mask)
 flip masked bits.
template<typename T >
void setMaskedIf (T &a_bits, const T &a_mask, bool a_condition)
 Set masked bits high if (and only if) a condition is fullfilled.
template<typename T >
void clearMaskedIf (T &a_bits, const T &a_mask, bool a_condition)
 Set masked bits low if (and only if) a condition is fullfilled.
template<typename T >
void flipMaskedIf (T &a_bits, const T &a_mask, bool a_condition)
 Flip the masked bits if (and only if) a condition is fullfilled.
template<typename T >
void setMaskedTo (T &a_bits, const T &a_mask, bool a_state)
 Set the masked bits to a given state if (and only if) a condition is fullfilled.
template<typename T >
bool checkMaskedAll (T a_bits, const T &a_mask)
 Check the masked bits and return true if they are ALL set.
template<typename T >
bool checkMaskedSome (T a_bits, const T &a_mask)
 Check the masked bits and return true if at least one is set.
template<typename T >
const size_t countBits (T bits)
 returns number of set bits in bits
const Callback0makeCallback (const Callback0 &iCallback)
 convencie function, make callback from callback
template<typename T >
const T getEnvironment (const std::string &iName)
template<typename T >
void putEnvironment (const std::string &iName, const T &iValue)
 LASS_EXECUTE_BEFORE_MAIN_EX (lassImpl_processPriorityDictionary, processPriorityDictionary().add("low", ppLow);processPriorityDictionary().add("belownormal", ppBelowNormal);processPriorityDictionary().add("normal", ppNormal);processPriorityDictionary().add("abovenormal", ppAboveNormal);processPriorityDictionary().add("high", ppHigh);) void setProcessPriority(ProcessPriority iPriority)
void setProcessPriority (const std::string &iPriority)
 set process priority by string
TProcessPriorityDictionaryprocessPriorityDictionary ()
 singleton with dictionary that can translate strings to ProcessPriority.
LASS_DLL void LASS_CALL setProcessPriority (ProcessPriority iPriority)
 set process priority by ProcessPriority value
template<typename Out , typename In >
Out stringCast (const In &in)
template<typename Function >
ThreadFunthreadFun (Function function, ThreadKind kind=threadDetached)
template<typename ObjectPtr , typename Method >
ThreadFunthreadMemFun (ObjectPtr object, Method method, ThreadKind kind=threadDetached)
template<typename P1 , typename Function >
ThreadFunthreadFun (Function function, const P1 &iP1, ThreadKind kind=threadDetached)
template<typename P1 , typename ObjectPtr , typename Method >
ThreadFunthreadMemFun (ObjectPtr object, Method method, const P1 &iP1, ThreadKind kind=threadDetached)
template<typename P1 , typename P2 , typename Function >
ThreadFunthreadFun (Function function, const P1 &iP1, const P2 &iP2, ThreadKind kind=threadDetached)
template<typename P1 , typename P2 , typename ObjectPtr , typename Method >
ThreadFunthreadMemFun (ObjectPtr object, Method method, const P1 &iP1, const P2 &iP2, ThreadKind kind=threadDetached)
template<typename P1 , typename P2 , typename P3 , typename Function >
ThreadFunthreadFun (Function function, const P1 &iP1, const P2 &iP2, const P3 &iP3, ThreadKind kind=threadDetached)
template<typename P1 , typename P2 , typename P3 , typename ObjectPtr , typename Method >
ThreadFunthreadMemFun (ObjectPtr object, Method method, const P1 &iP1, const P2 &iP2, const P3 &iP3, ThreadKind kind=threadDetached)
template<typename P1 , typename P2 , typename P3 , typename P4 , typename Function >
ThreadFunthreadFun (Function function, const P1 &iP1, const P2 &iP2, const P3 &iP3, const P4 &iP4, ThreadKind kind=threadDetached)
template<typename P1 , typename P2 , typename P3 , typename P4 , typename ObjectPtr , typename Method >
ThreadFunthreadMemFun (ObjectPtr object, Method method, const P1 &iP1, const P2 &iP2, const P3 &iP3, const P4 &iP4, ThreadKind kind=threadDetached)
template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename Function >
ThreadFunthreadFun (Function function, const P1 &iP1, const P2 &iP2, const P3 &iP3, const P4 &iP4, const P5 &iP5, ThreadKind kind=threadDetached)
template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename ObjectPtr , typename Method >
ThreadFunthreadMemFun (ObjectPtr object, Method method, const P1 &iP1, const P2 &iP2, const P3 &iP3, const P4 &iP4, const P5 &iP5, ThreadKind kind=threadDetached)
template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename Function >
ThreadFunthreadFun (Function function, const P1 &iP1, const P2 &iP2, const P3 &iP3, const P4 &iP4, const P5 &iP5, const P6 &iP6, ThreadKind kind=threadDetached)
template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename ObjectPtr , typename Method >
ThreadFunthreadMemFun (ObjectPtr object, Method method, const P1 &iP1, const P2 &iP2, const P3 &iP3, const P4 &iP4, const P5 &iP5, const P6 &iP6, ThreadKind kind=threadDetached)
template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename Function >
ThreadFunthreadFun (Function function, const P1 &iP1, const P2 &iP2, const P3 &iP3, const P4 &iP4, const P5 &iP5, const P6 &iP6, const P7 &iP7, ThreadKind kind=threadDetached)
template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename ObjectPtr , typename Method >
ThreadFunthreadMemFun (ObjectPtr object, Method method, const P1 &iP1, const P2 &iP2, const P3 &iP3, const P4 &iP4, const P5 &iP5, const P6 &iP6, const P7 &iP7, ThreadKind kind=threadDetached)
template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename Function >
ThreadFunthreadFun (Function function, const P1 &iP1, const P2 &iP2, const P3 &iP3, const P4 &iP4, const P5 &iP5, const P6 &iP6, const P7 &iP7, const P8 &iP8, ThreadKind kind=threadDetached)
template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename ObjectPtr , typename Method >
ThreadFunthreadMemFun (ObjectPtr object, Method method, const P1 &iP1, const P2 &iP2, const P3 &iP3, const P4 &iP4, const P5 &iP5, const P6 &iP6, const P7 &iP7, const P8 &iP8, ThreadKind kind=threadDetached)
template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename Function >
ThreadFunthreadFun (Function function, const P1 &iP1, const P2 &iP2, const P3 &iP3, const P4 &iP4, const P5 &iP5, const P6 &iP6, const P7 &iP7, const P8 &iP8, const P9 &iP9, ThreadKind kind=threadDetached)
template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename ObjectPtr , typename Method >
ThreadFunthreadMemFun (ObjectPtr object, Method method, const P1 &iP1, const P2 &iP2, const P3 &iP3, const P4 &iP4, const P5 &iP5, const P6 &iP6, const P7 &iP7, const P8 &iP8, const P9 &iP9, ThreadKind kind=threadDetached)
template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename Function >
ThreadFunthreadFun (Function function, const P1 &iP1, const P2 &iP2, const P3 &iP3, const P4 &iP4, const P5 &iP5, const P6 &iP6, const P7 &iP7, const P8 &iP8, const P9 &iP9, const P10 &iP10, ThreadKind kind=threadDetached)
template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename ObjectPtr , typename Method >
ThreadFunthreadMemFun (ObjectPtr object, Method method, const P1 &iP1, const P2 &iP2, const P3 &iP3, const P4 &iP4, const P5 &iP5, const P6 &iP6, const P7 &iP7, const P8 &iP8, const P9 &iP9, const P10 &iP10, ThreadKind kind=threadDetached)
template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename Function >
ThreadFunthreadFun (Function function, const P1 &iP1, const P2 &iP2, const P3 &iP3, const P4 &iP4, const P5 &iP5, const P6 &iP6, const P7 &iP7, const P8 &iP8, const P9 &iP9, const P10 &iP10, const P11 &iP11, ThreadKind kind=threadDetached)
template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename ObjectPtr , typename Method >
ThreadFunthreadMemFun (ObjectPtr object, Method method, const P1 &iP1, const P2 &iP2, const P3 &iP3, const P4 &iP4, const P5 &iP5, const P6 &iP6, const P7 &iP7, const P8 &iP8, const P9 &iP9, const P10 &iP10, const P11 &iP11, ThreadKind kind=threadDetached)
template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename P12 , typename Function >
ThreadFunthreadFun (Function function, const P1 &iP1, const P2 &iP2, const P3 &iP3, const P4 &iP4, const P5 &iP5, const P6 &iP6, const P7 &iP7, const P8 &iP8, const P9 &iP9, const P10 &iP10, const P11 &iP11, const P12 &iP12, ThreadKind kind=threadDetached)
template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename P12 , typename ObjectPtr , typename Method >
ThreadFunthreadMemFun (ObjectPtr object, Method method, const P1 &iP1, const P2 &iP2, const P3 &iP3, const P4 &iP4, const P5 &iP5, const P6 &iP6, const P7 &iP7, const P8 &iP8, const P9 &iP9, const P10 &iP10, const P11 &iP11, const P12 &iP12, ThreadKind kind=threadDetached)
template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename P12 , typename P13 , typename Function >
ThreadFunthreadFun (Function function, const P1 &iP1, const P2 &iP2, const P3 &iP3, const P4 &iP4, const P5 &iP5, const P6 &iP6, const P7 &iP7, const P8 &iP8, const P9 &iP9, const P10 &iP10, const P11 &iP11, const P12 &iP12, const P13 &iP13, ThreadKind kind=threadDetached)
template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename P12 , typename P13 , typename ObjectPtr , typename Method >
ThreadFunthreadMemFun (ObjectPtr object, Method method, const P1 &iP1, const P2 &iP2, const P3 &iP3, const P4 &iP4, const P5 &iP5, const P6 &iP6, const P7 &iP7, const P8 &iP8, const P9 &iP9, const P10 &iP10, const P11 &iP11, const P12 &iP12, const P13 &iP13, ThreadKind kind=threadDetached)
template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename P12 , typename P13 , typename P14 , typename Function >
ThreadFunthreadFun (Function function, const P1 &iP1, const P2 &iP2, const P3 &iP3, const P4 &iP4, const P5 &iP5, const P6 &iP6, const P7 &iP7, const P8 &iP8, const P9 &iP9, const P10 &iP10, const P11 &iP11, const P12 &iP12, const P13 &iP13, const P14 &iP14, ThreadKind kind=threadDetached)
template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename P12 , typename P13 , typename P14 , typename ObjectPtr , typename Method >
ThreadFunthreadMemFun (ObjectPtr object, Method method, const P1 &iP1, const P2 &iP2, const P3 &iP3, const P4 &iP4, const P5 &iP5, const P6 &iP6, const P7 &iP7, const P8 &iP8, const P9 &iP9, const P10 &iP10, const P11 &iP11, const P12 &iP12, const P13 &iP13, const P14 &iP14, ThreadKind kind=threadDetached)
template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename P12 , typename P13 , typename P14 , typename P15 , typename Function >
ThreadFunthreadFun (Function function, const P1 &iP1, const P2 &iP2, const P3 &iP3, const P4 &iP4, const P5 &iP5, const P6 &iP6, const P7 &iP7, const P8 &iP8, const P9 &iP9, const P10 &iP10, const P11 &iP11, const P12 &iP12, const P13 &iP13, const P14 &iP14, const P15 &iP15, ThreadKind kind=threadDetached)
template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename P12 , typename P13 , typename P14 , typename P15 , typename ObjectPtr , typename Method >
ThreadFunthreadMemFun (ObjectPtr object, Method method, const P1 &iP1, const P2 &iP2, const P3 &iP3, const P4 &iP4, const P5 &iP5, const P6 &iP6, const P7 &iP7, const P8 &iP8, const P9 &iP9, const P10 &iP10, const P11 &iP11, const P12 &iP12, const P13 &iP13, const P14 &iP14, const P15 &iP15, ThreadKind kind=threadDetached)

Variables

unsigned numberOfProcessors = impl::numberOfProcessors()


Detailed Description

general utility, debug facilities, .

..

The util namespace contains general utilities, debug facilities, etc. used by our lass software. The following stuff is provided:

BitManip: a set of bit manipulation routines


Enumeration Type Documentation

template<class T , int destructPriority = destructionPriorityDefault>
enum DestructionPriorities [related, inherited]

Destruction priority constants.

Priorities levels below singletonDestructionPriorityBeginUserRange (=500) are reserved for the implementation of Lass, and should not be used by user code (unless you know what you're doing of course ;)

Enumerator:
destructionPriorityDefault  default priority level =)
destructionPriorityBeginUser  lowest legal level for user code
destructionPriorityInternalProxyMan 
destructionPriorityInternalPythonMutex 
destructionPriorityInternalTlsDestructors 
destructionPriorityInternalAllocators 
destructionPriorityInternalTlsLocalsMain 

Definition at line 125 of file singleton.h.


Function Documentation

const Callback0& lass::util::makeCallback ( const Callback0 &  iCallback  )  [inline]

convencie function, make callback from callback

Definition at line 234 of file callback_0.h.

template<typename T >
const T lass::util::getEnvironment ( const std::string &  iName  )  [inline]

Definition at line 88 of file environment.h.

template<typename T >
void lass::util::putEnvironment ( const std::string &  iName,
const T &  iValue 
) [inline]

Definition at line 94 of file environment.h.

lass::util::LASS_EXECUTE_BEFORE_MAIN_EX ( lassImpl_processPriorityDictionary  ,
processPriorityDictionary().add("low", ppLow);processPriorityDictionary().add("belownormal", ppBelowNormal);processPriorityDictionary().add("normal", ppNormal);processPriorityDictionary().add("abovenormal", ppAboveNormal);processPriorityDictionary().add("high", ppHigh);   
)

Definition at line 75 of file process.cpp.

References LASS_ASSERT, LASS_ENFORCE_CLIB, and numberOfProcessPriorities.

template<typename Out , typename In >
Out lass::util::stringCast ( const In &  in  )  [inline]

template<typename Function >
ThreadFun* lass::util::threadFun ( Function  function,
ThreadKind  kind = threadDetached 
) [inline]

template<typename ObjectPtr , typename Method >
ThreadFun* lass::util::threadMemFun ( ObjectPtr  object,
Method  method,
ThreadKind  kind = threadDetached 
) [inline]

template<typename P1 , typename Function >
ThreadFun* lass::util::threadFun ( Function  function,
const P1 &  iP1,
ThreadKind  kind = threadDetached 
) [inline]

template<typename P1 , typename ObjectPtr , typename Method >
ThreadFun* lass::util::threadMemFun ( ObjectPtr  object,
Method  method,
const P1 &  iP1,
ThreadKind  kind = threadDetached 
) [inline]

template<typename P1 , typename P2 , typename Function >
ThreadFun* lass::util::threadFun ( Function  function,
const P1 &  iP1,
const P2 &  iP2,
ThreadKind  kind = threadDetached 
) [inline]

template<typename P1 , typename P2 , typename ObjectPtr , typename Method >
ThreadFun* lass::util::threadMemFun ( ObjectPtr  object,
Method  method,
const P1 &  iP1,
const P2 &  iP2,
ThreadKind  kind = threadDetached 
) [inline]

template<typename P1 , typename P2 , typename P3 , typename Function >
ThreadFun* lass::util::threadFun ( Function  function,
const P1 &  iP1,
const P2 &  iP2,
const P3 &  iP3,
ThreadKind  kind = threadDetached 
) [inline]

template<typename P1 , typename P2 , typename P3 , typename ObjectPtr , typename Method >
ThreadFun* lass::util::threadMemFun ( ObjectPtr  object,
Method  method,
const P1 &  iP1,
const P2 &  iP2,
const P3 &  iP3,
ThreadKind  kind = threadDetached 
) [inline]

template<typename P1 , typename P2 , typename P3 , typename P4 , typename Function >
ThreadFun* lass::util::threadFun ( Function  function,
const P1 &  iP1,
const P2 &  iP2,
const P3 &  iP3,
const P4 &  iP4,
ThreadKind  kind = threadDetached 
) [inline]

template<typename P1 , typename P2 , typename P3 , typename P4 , typename ObjectPtr , typename Method >
ThreadFun* lass::util::threadMemFun ( ObjectPtr  object,
Method  method,
const P1 &  iP1,
const P2 &  iP2,
const P3 &  iP3,
const P4 &  iP4,
ThreadKind  kind = threadDetached 
) [inline]

template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename Function >
ThreadFun* lass::util::threadFun ( Function  function,
const P1 &  iP1,
const P2 &  iP2,
const P3 &  iP3,
const P4 &  iP4,
const P5 &  iP5,
ThreadKind  kind = threadDetached 
) [inline]

template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename ObjectPtr , typename Method >
ThreadFun* lass::util::threadMemFun ( ObjectPtr  object,
Method  method,
const P1 &  iP1,
const P2 &  iP2,
const P3 &  iP3,
const P4 &  iP4,
const P5 &  iP5,
ThreadKind  kind = threadDetached 
) [inline]

template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename Function >
ThreadFun* lass::util::threadFun ( Function  function,
const P1 &  iP1,
const P2 &  iP2,
const P3 &  iP3,
const P4 &  iP4,
const P5 &  iP5,
const P6 &  iP6,
ThreadKind  kind = threadDetached 
) [inline]

template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename ObjectPtr , typename Method >
ThreadFun* lass::util::threadMemFun ( ObjectPtr  object,
Method  method,
const P1 &  iP1,
const P2 &  iP2,
const P3 &  iP3,
const P4 &  iP4,
const P5 &  iP5,
const P6 &  iP6,
ThreadKind  kind = threadDetached 
) [inline]

template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename Function >
ThreadFun* lass::util::threadFun ( Function  function,
const P1 &  iP1,
const P2 &  iP2,
const P3 &  iP3,
const P4 &  iP4,
const P5 &  iP5,
const P6 &  iP6,
const P7 &  iP7,
ThreadKind  kind = threadDetached 
) [inline]

template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename ObjectPtr , typename Method >
ThreadFun* lass::util::threadMemFun ( ObjectPtr  object,
Method  method,
const P1 &  iP1,
const P2 &  iP2,
const P3 &  iP3,
const P4 &  iP4,
const P5 &  iP5,
const P6 &  iP6,
const P7 &  iP7,
ThreadKind  kind = threadDetached 
) [inline]

template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename Function >
ThreadFun* lass::util::threadFun ( Function  function,
const P1 &  iP1,
const P2 &  iP2,
const P3 &  iP3,
const P4 &  iP4,
const P5 &  iP5,
const P6 &  iP6,
const P7 &  iP7,
const P8 &  iP8,
ThreadKind  kind = threadDetached 
) [inline]

template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename ObjectPtr , typename Method >
ThreadFun* lass::util::threadMemFun ( ObjectPtr  object,
Method  method,
const P1 &  iP1,
const P2 &  iP2,
const P3 &  iP3,
const P4 &  iP4,
const P5 &  iP5,
const P6 &  iP6,
const P7 &  iP7,
const P8 &  iP8,
ThreadKind  kind = threadDetached 
) [inline]

template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename Function >
ThreadFun* lass::util::threadFun ( Function  function,
const P1 &  iP1,
const P2 &  iP2,
const P3 &  iP3,
const P4 &  iP4,
const P5 &  iP5,
const P6 &  iP6,
const P7 &  iP7,
const P8 &  iP8,
const P9 &  iP9,
ThreadKind  kind = threadDetached 
) [inline]

template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename ObjectPtr , typename Method >
ThreadFun* lass::util::threadMemFun ( ObjectPtr  object,
Method  method,
const P1 &  iP1,
const P2 &  iP2,
const P3 &  iP3,
const P4 &  iP4,
const P5 &  iP5,
const P6 &  iP6,
const P7 &  iP7,
const P8 &  iP8,
const P9 &  iP9,
ThreadKind  kind = threadDetached 
) [inline]

template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename Function >
ThreadFun* lass::util::threadFun ( Function  function,
const P1 &  iP1,
const P2 &  iP2,
const P3 &  iP3,
const P4 &  iP4,
const P5 &  iP5,
const P6 &  iP6,
const P7 &  iP7,
const P8 &  iP8,
const P9 &  iP9,
const P10 &  iP10,
ThreadKind  kind = threadDetached 
) [inline]

template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename ObjectPtr , typename Method >
ThreadFun* lass::util::threadMemFun ( ObjectPtr  object,
Method  method,
const P1 &  iP1,
const P2 &  iP2,
const P3 &  iP3,
const P4 &  iP4,
const P5 &  iP5,
const P6 &  iP6,
const P7 &  iP7,
const P8 &  iP8,
const P9 &  iP9,
const P10 &  iP10,
ThreadKind  kind = threadDetached 
) [inline]

template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename Function >
ThreadFun* lass::util::threadFun ( Function  function,
const P1 &  iP1,
const P2 &  iP2,
const P3 &  iP3,
const P4 &  iP4,
const P5 &  iP5,
const P6 &  iP6,
const P7 &  iP7,
const P8 &  iP8,
const P9 &  iP9,
const P10 &  iP10,
const P11 &  iP11,
ThreadKind  kind = threadDetached 
) [inline]

template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename ObjectPtr , typename Method >
ThreadFun* lass::util::threadMemFun ( ObjectPtr  object,
Method  method,
const P1 &  iP1,
const P2 &  iP2,
const P3 &  iP3,
const P4 &  iP4,
const P5 &  iP5,
const P6 &  iP6,
const P7 &  iP7,
const P8 &  iP8,
const P9 &  iP9,
const P10 &  iP10,
const P11 &  iP11,
ThreadKind  kind = threadDetached 
) [inline]

template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename P12 , typename Function >
ThreadFun* lass::util::threadFun ( Function  function,
const P1 &  iP1,
const P2 &  iP2,
const P3 &  iP3,
const P4 &  iP4,
const P5 &  iP5,
const P6 &  iP6,
const P7 &  iP7,
const P8 &  iP8,
const P9 &  iP9,
const P10 &  iP10,
const P11 &  iP11,
const P12 &  iP12,
ThreadKind  kind = threadDetached 
) [inline]

template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename P12 , typename ObjectPtr , typename Method >
ThreadFun* lass::util::threadMemFun ( ObjectPtr  object,
Method  method,
const P1 &  iP1,
const P2 &  iP2,
const P3 &  iP3,
const P4 &  iP4,
const P5 &  iP5,
const P6 &  iP6,
const P7 &  iP7,
const P8 &  iP8,
const P9 &  iP9,
const P10 &  iP10,
const P11 &  iP11,
const P12 &  iP12,
ThreadKind  kind = threadDetached 
) [inline]

template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename P12 , typename P13 , typename Function >
ThreadFun* lass::util::threadFun ( Function  function,
const P1 &  iP1,
const P2 &  iP2,
const P3 &  iP3,
const P4 &  iP4,
const P5 &  iP5,
const P6 &  iP6,
const P7 &  iP7,
const P8 &  iP8,
const P9 &  iP9,
const P10 &  iP10,
const P11 &  iP11,
const P12 &  iP12,
const P13 &  iP13,
ThreadKind  kind = threadDetached 
) [inline]

template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename P12 , typename P13 , typename ObjectPtr , typename Method >
ThreadFun* lass::util::threadMemFun ( ObjectPtr  object,
Method  method,
const P1 &  iP1,
const P2 &  iP2,
const P3 &  iP3,
const P4 &  iP4,
const P5 &  iP5,
const P6 &  iP6,
const P7 &  iP7,
const P8 &  iP8,
const P9 &  iP9,
const P10 &  iP10,
const P11 &  iP11,
const P12 &  iP12,
const P13 &  iP13,
ThreadKind  kind = threadDetached 
) [inline]

template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename P12 , typename P13 , typename P14 , typename Function >
ThreadFun* lass::util::threadFun ( Function  function,
const P1 &  iP1,
const P2 &  iP2,
const P3 &  iP3,
const P4 &  iP4,
const P5 &  iP5,
const P6 &  iP6,
const P7 &  iP7,
const P8 &  iP8,
const P9 &  iP9,
const P10 &  iP10,
const P11 &  iP11,
const P12 &  iP12,
const P13 &  iP13,
const P14 &  iP14,
ThreadKind  kind = threadDetached 
) [inline]

template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename P12 , typename P13 , typename P14 , typename ObjectPtr , typename Method >
ThreadFun* lass::util::threadMemFun ( ObjectPtr  object,
Method  method,
const P1 &  iP1,
const P2 &  iP2,
const P3 &  iP3,
const P4 &  iP4,
const P5 &  iP5,
const P6 &  iP6,
const P7 &  iP7,
const P8 &  iP8,
const P9 &  iP9,
const P10 &  iP10,
const P11 &  iP11,
const P12 &  iP12,
const P13 &  iP13,
const P14 &  iP14,
ThreadKind  kind = threadDetached 
) [inline]

template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename P12 , typename P13 , typename P14 , typename P15 , typename Function >
ThreadFun* lass::util::threadFun ( Function  function,
const P1 &  iP1,
const P2 &  iP2,
const P3 &  iP3,
const P4 &  iP4,
const P5 &  iP5,
const P6 &  iP6,
const P7 &  iP7,
const P8 &  iP8,
const P9 &  iP9,
const P10 &  iP10,
const P11 &  iP11,
const P12 &  iP12,
const P13 &  iP13,
const P14 &  iP14,
const P15 &  iP15,
ThreadKind  kind = threadDetached 
) [inline]

template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename P12 , typename P13 , typename P14 , typename P15 , typename ObjectPtr , typename Method >
ThreadFun* lass::util::threadMemFun ( ObjectPtr  object,
Method  method,
const P1 &  iP1,
const P2 &  iP2,
const P3 &  iP3,
const P4 &  iP4,
const P5 &  iP5,
const P6 &  iP6,
const P7 &  iP7,
const P8 &  iP8,
const P9 &  iP9,
const P10 &  iP10,
const P11 &  iP11,
const P12 &  iP12,
const P13 &  iP13,
const P14 &  iP14,
const P15 &  iP15,
ThreadKind  kind = threadDetached 
) [inline]


Generated on Mon Nov 10 14:22:16 2008 for Library of Assembled Shared Sources by doxygen 1.5.7.1
SourceForge.net Logo