API Documentation
Loading...
Searching...
No Matches
Log Class Referencefinal

Serves as the primary program interface for processes to report issues and allows any number of LogStreams to subscribe and receive the log information in real-time. More...

#include <Log.h>

Inheritance diagram for Log:
[legend]
Collaboration diagram for Log:
[legend]

Public Member Functions

bool addMessage (const char *const message, uint01 log_level=10) final override
 
bool addMessage (const LogMessage &message) override
 
bool addMessage (const String &message, uint01 log_level=10) override
 
bool addMessage (const TranslatedString &message, uint01 log_level=10) override
 
void addStream (LogStream *stream, bool add_all) final override
 
void allowCancel (bool cancel) override
 
bool cancelRequested () const override
 
void concatenate (const Log &log)
 
void insertMessages (uint04 index, const Buffer< LogMessage > &messages)
 
 Log (const Log &log)
 
 Log (uint08 id=0)
 
void removeStream (LogStream *stream) final override
 
void setCancelRequest (bool cancel) override
 
bool setProgress (fltp04 percent) final override
 
void sortMessagesByPriority ()
 
void sortMessagesByTime ()
 
virtual ~Log ()
 
- Public Member Functions inherited from ProgressInfo
 ProgressInfo () noexcept
 
virtual ~ProgressInfo ()
 
- Public Member Functions inherited from Buffer< LogMessage >
void add (const LogMessage &object)
 Adds object to the end of the buffer.
 
void add (LogMessage &&object)
 Adds object to the end of the buffer.
 
void add (uint04 location, const LogMessage &object)
 Adds and object to a specific location. Equivelent to insert.
 
void add (uint04 location, LogMessage &&object)
 Adds an object to a specific location. Equivelent to insert.
 
void addAll (const Buffer< LogMessage, t_other_index_type, t_other_memory_allocator, t_other_memory_manager > &buffer)
 
void addAll (const LogMessage *buffer)
 
void addAll (const LogMessage *buffer, uint04 buffer_size)
 
void addAndFillSpace (uint04 space_to_add, const LogMessage &fill_object)
 
void addSpace (uint04 location, uint04 size)
 
void addSpace (uint04 space_to_add)
 Adds a space to the end of the buffer.
 
decltype(auto) begin ()
 
decltype(auto) begin () const
 
decltype(auto) begin (uint04 index) const
 
constexpr Buffer ()
 
constexpr Buffer (Buffer &&buffer) noexcept
 
constexpr Buffer (const Buffer &buffer)
 
 Buffer (const LogMessage *buffer, uint04 size)
 
 Buffer (const t_iterator &begin, const t_iterator &end)
 
 Buffer (std::initializer_list< LogMessage > l)
 
 Buffer (uint04 size)
 
 Buffer (uint04 size, const LogMessage &fill_object)
 
uint04 capacity () const
 
void clear ()
 
void clear (uint04 new_capacity)
 
sint04 compare (const Buffer &value) const
 Compares this Buffer to another to determine their relative ordering.
 
sint04 compare (const Buffer &value, uint04 start, uint04 end) const
 
bool contains (const LogMessage &element) const
 
bool contains (const LogMessage &element, const std::function< bool(const LogMessage &, const LogMessage &)> &equal_function) const
 
bool contains (const LogMessage &element, uint04 start) const
 
bool contains (const LogMessage &element, uint04 start, uint04 search_size) const
 
uint04 count (const LogMessage &element) const
 
decltype(auto) end ()
 
decltype(auto) end () const
 
decltype(auto) end (uint04 index)
 
void ensureCapacity (uint04 new_capacity, bool ensure_not_greater=false, bool ensure_not_less=true)
 
bool equals (const Buffer &buffer) const
 
decltype(auto) get (uint04 index)
 
decltype(auto) get (uint04 index) const
 
Buffer getAll (uint04 start, uint04 size)
 
Buffer< t_other_type, t_other_index_type, t_other_memory_allocator, t_other_memory_manager > getAs () const
 Gets a copy of this buffer, with filled objects t_other_type, where all objects are created using the contents of this buffer.
 
uint04 indexOf (const LogMessage &element) const
 
uint04 indexOf (const LogMessage &element, uint04 start_pos) const
 
uint04 indexOf (const LogMessage &element, uint04 start_pos, uint04 search_size) const
 
void insert (const uint04 location, const LogMessage *buffer)
 Inserts data into the buffer, assumed to be null terminated.
 
void insert (uint04 location, const LogMessage &object)
 Adds an object to a specific location.
 
void insert (uint04 location, LogMessage &&object)
 Adds an object to a specific location.
 
void insert (uint04 offset, const Buffer &buffer)
 
void insert (uint04 offset, const LogMessage *const buffer, uint04 buffer_size)
 Inserts data into the buffer.
 
bool isEmpty () const
 
bool isSorted () const
 
bool isSortedSet () const
 
decltype(auto) last ()
 
decltype(auto) last () const
 
uint04 lastIndexOf (const LogMessage &element) const
 
constexpr BufferAllocator< LogMessage, uint04, false > & memoryInterface ()
 
constexpr const BufferAllocator< LogMessage, uint04, false > & memoryInterface () const
 
uint04 memSize () const
 
void move (uint04 from, uint04 to)
 
 operator const LogMessage * () const
 Gets the first location of type* in the array.
 
 operator LogMessage * ()
 Gets the first location of type* in the array.
 
bool operator!= (const Buffer &buffer) const
 
Buffer operator+ (const Buffer &value) const
 
Buffer operator+ (const LogMessage &element) const
 
Bufferoperator+= (const Buffer &value)
 
const Bufferoperator+= (const LogMessage &element)
 
bool operator< (const Buffer &buffer) const
 
bool operator<= (const Buffer &buffer) const
 
Bufferoperator= (Buffer &&buffer) noexcept
 
Bufferoperator= (const Buffer &buffer)
 
bool operator== (const Buffer &buffer) const
 
bool operator> (const Buffer &buffer) const
 
bool operator>= (const Buffer &buffer) const
 
decltype(auto) operator[] (const int index)
 
decltype(auto) operator[] (const int index) const
 
decltype(auto) operator[] (const uint04 index)
 
decltype(auto) operator[] (const uint04 value) const
 
void primitiveSort ()
 
decltype(auto) ptr ()
 
decltype(auto) ptr () const
 
void removeAllIndex (uint04 start, uint04 end)
 
void removeAllIndices (const t_range_buffer &ranges)
 
void removeAllOrdered (const LogMessage &object)
 Removes all instances of the object. Function is slower than removeAllUnordered but order is preserved.
 
void removeAllOrderedFn (const t_functor &functor)
 Removes all items based on the functor. The functor should return true if the item is deleted or false if the item should stay in the array. Function is slower than removeAllUnordered but order is preserved.
 
void removeAllUnordered (const LogMessage &object)
 Removes all unordered described by object. This function does not preserve the order of the buffer.
 
void removeAllUnordered (const t_functor &functor)
 Removes all items based on the functor. The functor should return true if the item is deleted or false if the item should stay in the array. Faster function then removeAllOrdered but order is not preserved.
 
bool removeElement (const LogMessage &element)
 
void removeIndex (uint04 location)
 
void removeIndexBackSwap (uint04 location)
 
void removeLast ()
 
void replaceAll (const LogMessage &var, const LogMessage &replacement)
 
void replaceIndexRange (uint04 offset, uint04 replace_size, const Buffer &buffer)
 
void resize (uint04 new_size)
 
void reverse ()
 
void reverse (const uint04 start, const uint04 end)
 
void setAll (const Buffer &buffer, uint04 offset, uint04 other_offset, uint04 size)
 
void setAll (const Buffer &buffer, uint04 offset, uint04 size)
 
void setAll (const t_o_type *src, uint04 offset, uint04 size)
 
void setAllToValue (const t_o_type &fill_element, const uint04 offset=0, uint04 fill_size=Constant< uint04 >::Invalid)
 
void setSize (const uint04 new_size, const LogMessage &fill_element)
 
void setSize (uint04 new_size)
 
void setUnique ()
 
void setUniquePresorted ()
 
constexpr uint04 size () const
 
void sort ()
 
uint04 sortAboutValue (uint04 value_index)
 
uint04 sortAboutValue (uint04 value_index, uint04 start, uint04 end)
 
void sortRange (uint04 start, uint04 end)
 
void swapAllElements (const LogMessage &element1, const LogMessage &element2)
 
void swapElements (const LogMessage &element1, const LogMessage &element2)
 
void swapIndices (uint04 index_1, uint04 index_2)
 
 ~Buffer ()
 

Protected Attributes

fltp04 m_progress
 
bool m_request_cancel
 

Friends

class LogManager
 

Additional Inherited Members

- Static Public Member Functions inherited from Buffer< LogMessage >
static constexpr LogMessage Type ()
 

Detailed Description

Serves as the primary program interface for processes to report issues and allows any number of LogStreams to subscribe and receive the log information in real-time.


Constructor & Destructor Documentation

◆ Log() [1/2]

Log ( uint08 id = 0)
explicit

◆ Log() [2/2]

Log ( const Log & log)

◆ ~Log()

virtual ~Log ( )
virtual

Member Function Documentation

◆ addMessage() [1/4]

bool addMessage ( const char *const message,
uint01 log_level = 10 )
finaloverridevirtual

Implements ProgressInfo.

◆ addMessage() [2/4]

bool addMessage ( const LogMessage & message)
overridevirtual

Implements ProgressInfo.

◆ addMessage() [3/4]

bool addMessage ( const String & message,
uint01 log_level = 10 )
overridevirtual

Implements ProgressInfo.

◆ addMessage() [4/4]

bool addMessage ( const TranslatedString & message,
uint01 log_level = 10 )
overridevirtual

Implements ProgressInfo.

◆ addStream()

void addStream ( LogStream * stream,
bool add_all )
finaloverridevirtual

Reimplemented from ProgressInfo.

◆ allowCancel()

void allowCancel ( bool cancel)
overridevirtual

Implements ProgressInfo.

◆ cancelRequested()

bool cancelRequested ( ) const
inlineoverridevirtual

Reimplemented from ProgressInfo.

◆ concatenate()

void concatenate ( const Log & log)

◆ insertMessages()

void insertMessages ( uint04 index,
const Buffer< LogMessage > & messages )

◆ removeStream()

void removeStream ( LogStream * stream)
finaloverridevirtual

Reimplemented from ProgressInfo.

◆ setCancelRequest()

void setCancelRequest ( bool cancel)
inlineoverridevirtual

Reimplemented from ProgressInfo.

◆ setProgress()

bool setProgress ( fltp04 percent)
finaloverridevirtual

Implements ProgressInfo.

◆ sortMessagesByPriority()

void sortMessagesByPriority ( )

◆ sortMessagesByTime()

void sortMessagesByTime ( )

Friends And Related Symbol Documentation

◆ LogManager

friend class LogManager
friend

Member Data Documentation

◆ m_progress

fltp04 m_progress
protected

◆ m_request_cancel

bool m_request_cancel
protected

The documentation for this class was generated from the following file: