BOOS Core API 3.1
- api::Collection<Type>
- api::Heap
- api::IllegalValue<Type>
- api::Interrupt
- api::Iterable<Type>
- api::Iterator<Type>
- api::Kernel
- api::List<Type>
- api::ListIterator<Type>
- api::Mutex
- api::Object
- api::ProcessorInterrupt
- api::ProcessorPll
- api::ProcessorRegisters
- api::ProcessorTimer
- api::Queue<Type>
- api::Resource
- api::Runtime
- api::Scheduler
- api::Semaphore
- api::Stack<Type>
- api::String<Char>
- api::Synchronizable
- api::System
- api::Task
- api::Thread
- api::Timer
- api::Toggle
- api::Value<Type>
- library::AbstractBuffer<Type,Alloc>
- library::AbstractLinkedList<Type,Alloc>
- library::Align<Type,SIZEOF,Alloc>
- library::Buffer<Type,COUNT,Alloc>
- library::CircularList<Type,Alloc>
- library::Heap
- library::LinkedList<Type,Alloc>
- library::LinkedNode<Type,Alloc>
- library::Memory
- library::Stack<Type,Alloc>
- library::String<Char,Alloc>
- library::Toggle<Alloc>
BOOS Core API 2.2
- core::Allocator
- core::Interrupt
- core::InterruptTask
- core::Mutex
- core::Object<Alloc>
- core::Semaphore
- core::Synchronizer
- core::System
- core::Thread
- core::ThreadTask
- core::Timer
- core::TimerInterrupt
- util::AbstractBuffer<Type,Alloc>
- util::AbstractLinkedList<Type,Alloc>
- util::Align<Type,SIZEOF,Alloc>
- util::Allocator
- util::Buffer<Type,COUNT,Alloc>
- util::CircularList<Type,Alloc>
- util::Heap
- util::LinkedList<Type,Alloc>
- util::LinkedNode<Type,Alloc>
- util::Memory
- util::Object<Alloc>
- util::Stack<Type,Alloc>
- util::Toggle<Alloc>
EOOS Automotive R22-08 is released in version v0.10.0
The second official release of EOOS Automotive that is qualified for POSIX and WIN32 compatible operating systems and based on interfaces designed for EOOS RT – real time operating system.
Class «core::Mutex»
Mutex semaphore class.
- core::Mutex
- public core::Object<Alloc>
- public Object<Alloc>
- public api::Object
- public Object<Alloc>
- public api::Mutex
- public api::Resource
- public api::Object
- public api::Resource
- public core::Object<Alloc>
public:
virtual bool isConstructed() const;
static bool isObject(const Type* obj);
void operator delete(void* ptr);
void* operator new(size_t size);
void* operator new(size_t size, void* ptr);
protected:
public: Mutex();
Constructor.
public: virtual ~Mutex();
Destructor.
public: virtual bool isBlocked();
Tests if this resource is blocked.
Returns:
true if this resource is blocked.
public: virtual bool isConstructed() const;
Tests if this object has been constructed.
Returns:
true if object has been constructed successfully.
public: static bool isObject(const Type* obj);
Tests if given object has been constructed object.
Parameters:
obj — pointer to object.
Returns:
true if object has been constructed successfully.
public: virtual bool lock();
Locks this mutex.
Returns:
true if this mutex is locked successfully.
public: void operator delete(void* ptr);
Operator delete.
Parameters:
ptr — address of allocated memory block or a null pointer.
public: void* operator new(size_t size);
Operator new.
Parameters:
size — number of bytes to allocate.
Returns:
allocated memory address or a null pointer.
public: void* operator new(size_t size, void* ptr);
Operator new.
Parameters:
size — unused.
ptr — pointer to reserved memory area
Returns:
given pointer.
public: virtual void unlock();
Unlocks this mutex.
public: Type unlock(Type value);
Unlocks this mutex.
Parameters:
value — a value which will be returned.
Returns:
given argument value.
protected: static Type alloc(size_t size);
Allocates memory.
Parameters:
size — number of bytes to allocate.
Returns:
allocated memory address or a null pointer.
protected: static void free(void* ptr);
Frees an allocated memory.
Parameters:
ptr — address of allocated memory block or a null pointer.
protected: virtual void setConstruct(bool flag);
Sets the object constructed flag.
Parameters:
flag — constructed flag.









