34#include <NDEVR/BaseValues.h>
35#include <NDEVR/InfoPipe.h>
36#include <NDEVR/Buffer.h>
37#include <NDEVR/LogMessage.h>
38#include <NDEVR/Dictionary.h>
39#include "ProgressSource.h"
121 for (
uint04 i = 0; i < messages.size(); i++)
The equivelent of std::vector but with a bit more control.
A hash-based key-value store, useful for quick associative lookups.
A light-weight base class for Log that allows processes to update, without the need for additional in...
A class that allows for specific log information to be conveyed to a InfoPipe object including inform...
A listener that receives and processes log messages and progress updates from an InfoPipe.
virtual void removeProgressSource(uint04 idx)
Removes a previously registered progress source from this stream.
void setIgnoreMessages(bool ignore)
Sets whether this stream should ignore incoming messages.
virtual void allowInput(bool)
Sets whether this stream allows user input during an operation.
virtual void attach(InfoPipe *stream)
Attaches this LogStream to the given InfoPipe so it receives log updates.
Buffer< InfoPipe * > m_linked_logs
Collection of InfoPipe objects this stream is listening to.
virtual void setProgress(uint04 id, fltp04 progress)=0
Updates the progress value for a tracked operation.
virtual ~LogStream()
Destructor.
Dictionary< uint04, ProgressSource > m_progress_sources
Maps progress source indices to their ProgressSource data.
bool ignoringMessages() const
Returns whether this stream is currently ignoring messages.
virtual void allowCancel(bool)
Sets whether this stream allows the user to cancel an in-progress operation.
void clearLinks()
Detaches this LogStream from all linked InfoPipe objects and clears the link list.
bool m_ignore_message
Whether this stream should ignore incoming messages.
virtual void addMessages(uint04 id, const Buffer< LogMessage > &messages)
Adds multiple log messages to this stream at once.
virtual void detach(InfoPipe *stream)
Detaches this LogStream from the given InfoPipe, stopping further updates from it.
virtual void addMessage(uint04 id, const LogMessage &message)=0
Adds a single log message to this stream.
virtual void addProgressSource(const TranslatedString &name, uint04 idx, fltp04 progress)
Registers a new progress source to be tracked by this stream.
Any text displayed to the user should be defined as a TranslatedString which allows the program to lo...
The primary namespace for the NDEVR SDK.
float fltp04
Defines an alias representing a 4 byte floating-point number Bit layout is as follows: -Sign: 1 bit a...
uint32_t uint04
-Defines an alias representing a 4 byte, unsigned integer -Can represent exact integer values 0 throu...
@ name
The display name of the object.