μHAL (v2.6.5)
Part of the IPbus software repository
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Namespaces | Classes | Typedefs | Enumerations | Functions | Variables
uhal Namespace Reference

Namespaces

 defs
 
 exception
 A namespace for all exceptions to live in - this will hopefully make documentation a bit clearer.
 
 tests
 
 utilities
 

Classes

class  _Integer
 Forward declare an ultra-lightweight wrapper which does formatting of numbers only on demand. More...
 
class  _Integer< T, IntFmt< bin, fixed, WIDTH > >
 
class  _Integer< T, IntFmt< bin, variable, WIDTH > >
 
class  _Integer< T, IntFmt< dec, fixed, WIDTH > >
 
class  _Integer< T, IntFmt< dec, variable, WIDTH > >
 
class  _Integer< T, IntFmt< hex, fixed, WIDTH > >
 
class  _Integer< T, IntFmt< hex, variable, WIDTH > >
 
class  _Quote
 
class  _Quote< const char *>
 
class  _ThisThreadID
 
class  _Time
 Forward declaration. More...
 
class  _Type
 
struct  _ValHeader_
 A helper struct wrapping an IPbus header and a valid flag. More...
 
struct  _ValVector_
 A Template helper struct wrapping a block of IPbus header, a register for storing a block of data and a valid flag. More...
 
struct  _ValWord_
 A Template helper struct wrapping an IPbus header, a register for storing a single word of data, a valid flag and a mask for modifying returned values. More...
 
class  BaseFunctionObject
 Abstract base class for wrapping function pointers, function objects and bound functions as objects. More...
 
class  BaseLogLevel
 
class  Buffers
 A class wrapping the send and recieve buffers that are to be filled and transported and the validated memories associated with them. More...
 
class  ClientFactory
 A class to construct an IPbus client based on the protocol identifier specified NOTE! This is a factory method and must be Mutex protected if it is used in multithreaded environments! More...
 
class  ClientInterface
 An abstract base class for defining the interface to the various IPbus clients as well as providing the generalized packing functionality. More...
 
class  ConnectionManager
 A class to open and manage XML connection files and wrap up the interfaces to the NodeTreeBuilder and the ClientFactory. More...
 
class  ControlHub
 Transport protocol to transfer an IPbus buffer via ControlHub. More...
 
class  DebugLevel
 Helper struct representing the Debug log level to allow us to specialize functions according to their log level. More...
 
class  DerivedNodeFactory
 A singleton class to register derived nodes, and create instances of them later NOTE! This is a factory method and must be Mutex protected if it is used in multithreaded environments! More...
 
class  ErrorLevel
 Helper struct representing the Error log level to allow us to specialize functions according to their log level. More...
 
class  FatalLevel
 Helper struct representing the Fatal log level to allow us to specialize functions according to their log level. More...
 
class  FunctionObject
 Class for wrapping bound functions and function objects as an object. More...
 
class  FunctionObject< R, T * >
 Class for wrapping function pointer as an object. More...
 
class  HostToTargetInspector
 Helper class to decode IPbus packets as passed from the Client to the Target. More...
 
struct  HttpResponseType
 Struct to store an http response received from a server when parsed by boost spirit. More...
 
class  HwInterface
 A class which bundles a node tree and an IPbus client interface together providing everything you need to navigate and perform hardware access. More...
 
class  InfoLevel
 Helper struct representing the Info log level to allow us to specialize functions according to their log level. More...
 
struct  IntFmt
 Empty struct which acts as a dummy variable for passing the formatting information around. More...
 
class  IPbus
 A class which provides the version-specific functionality for IPbus. More...
 
class  IPbus< 1, IPbus_minor >
 A class which provides the version-specific functionality for IPbus. More...
 
class  IPbus< 2, IPbus_minor >
 A class which provides the version-specific functionality for IPbus. More...
 
class  IPbusCore
 A class providing the core IPbus packing functionality. More...
 
class  Location
 A class to wrap the function name, filename and line-number location of its construction for the purpose of debugging and tracking unwinding exceptions. More...
 
class  logo
 Fun class to print the "Imperial College London" logo one character at a time (A more interesting to show progress than printing dots) More...
 
class  Mmap
 Transport protocol to transfer an IPbus buffer via device file, using mmap. More...
 
class  Node
 A heirarchical node for navigating heirarchical firmwares. More...
 
class  NodeTreeBuilder
 A class to build a node tree from an Address table file NOTE! This is a factory method and must be Mutex protected if it is used in multithreaded environments! More...
 
struct  NodeTreeClassAttribute
 Struct to store the name and member variables within a node class attribute when parsed by boost spirit The class attribute has the form "classname;name1=val1;name2=val2;name3=val3;" where the name-value pairs are optional, as is the trailing semicolon. More...
 
struct  NodeTreeFirmwareInfoAttribute
 Struct to store the name and member variables within a node endpoint attribute when parsed by boost spirit The endpoint attribute has the form "endpoint;name1=val1;name2=val2;name3=val3;" where the name-value pairs are optional, as is the trailing semicolon. More...
 
class  NoticeLevel
 Helper struct representing the Notice log level to allow us to specialize functions according to their log level. More...
 
class  Parser
 Forward declaration of the Parser so we can declare it friend. More...
 
class  PCIe
 Transport protocol to transfer an IPbus buffer via PCIe. More...
 
class  RefWrapper
 
class  RefWrapper< T *>
 
struct  RegistrationHelper
 Experimental!! Helper struct for adding the DerivedNode to the Node Factory Declaring an instance of an object at global scope means that it is created before the main code is entered We can use this to our advantage by using the constructor of this object to add entries to the factory in a distributed fashion (for instance, in the file where the derived node is defined), rather than manually having to add entries in one file To make things even simpler, the REGISTER macro expands the template argument to a string and passes it to the constructor. More...
 
class  Rule
 Rule for matching XML attributes. More...
 
class  TargetToHostInspector
 Helper class to decode IPbus packets as passed from the Target to the Client. More...
 
class  TCP
 Transport protocol to transfer an IPbus buffer via TCP. More...
 
struct  TimeFmt
 A struct whose template parameters represent a time format. More...
 
class  TimeIntervalStats
 
struct  TranslatedFmt
 
class  UDP
 Transport protocol to transfer an IPbus buffer via UDP. More...
 
struct  URI
 Struct to store a URI when parsed by boost spirit. More...
 
class  ValHeader
 A class which wraps a single word of data and marks whether or not it is valid. More...
 
class  ValVector
 A class which wraps a block of data and marks whether or not it is valid. More...
 
class  ValWord
 A class which wraps a single word of data and marks whether or not it is valid. More...
 
class  WarningLevel
 Helper struct representing the Warning log level to allow us to specialize functions according to their log level. More...
 

Typedefs

typedef std::vector< std::pair< std::string, std::string > > NameValuePairVectorType
 boost::fusion requires us to typedef our template types, so typedef a container which can hold key/value pairs More...
 
typedef TimeFmt< day,'/', mth,'/', year,' ', hr,':', min,':', secDefaultTimeFmt
 Typedef the most commonly used time format (day/month/year hour:minut:second) for convenience. More...
 

Enumerations

enum  integer_base { bin, dec, hex }
 Enumerated type specifying the formatting option. More...
 
enum  integer_format { fixed, variable }
 Enumerated type specifying the formatting option. More...
 
enum  time_element {
  null, year, yr, strmth,
  mth, day, hr, min,
  sec, usec
}
 Enumerated type defining the different elements which can be used for formatting a time. More...
 
enum  eIPbusTransactionType {
  B_O_T, READ, WRITE, RMW_BITS,
  RMW_SUM, R_A_I, NI_READ, NI_WRITE,
  CONFIG_SPACE_READ
}
 Enumerated type to define the IPbus transaction type. More...
 

Functions

std::ostream & operator<< (std::ostream &aStr, const uhal::HttpResponseType &aHttpResponse)
 
std::ostream & operator<< (std::ostream &aStr, const uhal::URI &aURI)
 
template<typename T >
void log_inserter (const T &)
 
static const integer_base DefaultIntegerBase (dec)
 Constant which is the default formatting option. More...
 
static const integer_format DefaultIntegerFormat (variable)
 Constant which is the default formatting option. More...
 
template<typename T >
_Integer< T, IntFmt<> > Integer (const T &aT)
 Forward declare a function which creates an instance of the ultra-lightweight wrapper from an integer. More...
 
template<typename T , integer_base BASE, integer_format FORMAT, uint32_t WIDTH>
_Integer< T, IntFmt< BASE, FORMAT, WIDTH > > Integer (const T &aT, const IntFmt< BASE, FORMAT, WIDTH > &aFmt)
 Forward declare a function which creates an instance of the ultra-lightweight wrapper from an integer. More...
 
template<typename T >
void sign_helper (std::ostream &aStr, const T &aInt)
 Helper function for adding the '+'/'-' sign. More...
 
template<>
void sign_helper (std::ostream &aStr, const int8_t &aInt)
 Helper function for adding the '+'/'-' sign to int8_ts. More...
 
template<>
void sign_helper (std::ostream &aStr, const int16_t &aInt)
 Helper function for adding the '+'/'-' sign to int16_ts. More...
 
template<>
void sign_helper (std::ostream &aStr, const int32_t &aInt)
 Helper function for adding the '+'/'-' sign to int32_ts. More...
 
template<>
void sign_helper (std::ostream &aStr, const int64_t &aInt)
 Helper function for adding the '+'/'-' sign to int64_ts. More...
 
template<typename FORMAT >
std::ostream & operator<< (std::ostream &aStr, const uhal::_Integer< uint8_t, FORMAT > &aInt)
 
template<typename FORMAT >
std::ostream & operator<< (std::ostream &aStr, const uhal::_Integer< int8_t, FORMAT > &aInt)
 
template<typename FORMAT >
std::ostream & operator<< (std::ostream &aStr, const uhal::_Integer< uint16_t, FORMAT > &aInt)
 
template<typename FORMAT >
std::ostream & operator<< (std::ostream &aStr, const uhal::_Integer< int16_t, FORMAT > &aInt)
 
template<typename FORMAT >
std::ostream & operator<< (std::ostream &aStr, const uhal::_Integer< uint32_t, FORMAT > &aInt)
 
template<typename FORMAT >
std::ostream & operator<< (std::ostream &aStr, const uhal::_Integer< int32_t, FORMAT > &aInt)
 
template<typename FORMAT >
std::ostream & operator<< (std::ostream &aStr, const uhal::_Integer< uint64_t, FORMAT > &aInt)
 
template<typename FORMAT >
std::ostream & operator<< (std::ostream &aStr, const uhal::_Integer< int64_t, FORMAT > &aInt)
 
std::ostream & operator<< (std::ostream &aStr, const Location &aLocation)
 
template<typename T >
_Quote< T > Quote (const T &aT)
 
_Quote< const char *> Quote (const char *aStr)
 
template<typename T >
std::ostream & operator<< (std::ostream &aStr, const _Quote< T > &aQuote)
 
_ThisThreadID ThisThreadID ()
 
std::ostream & operator<< (std::ostream &aStr, const _ThisThreadID &aThisThreadID)
 
_Time< DefaultTimeFmtTime (const timeval &aTime)
 Helper function which wrap the template uglyness in a pretty package. More...
 
template<typename FORMAT >
_Time< FORMAT > Time (const timeval &aTime, const FORMAT &aFmt)
 Helper function which wrap the template uglyness in a pretty package. More...
 
template<time_element T>
void print (std::ostream &aStr, const tm *aTm, const uint32_t &aUsec)
 Format a time element for for sending to the log. More...
 
timeval Now ()
 A helper function to return the current time. More...
 
template<time_element T0, char D0, time_element T1, char D1, time_element T2, char D2, time_element T3, char D3, time_element T4, char D4, time_element T5, char D5, time_element T6>
std::ostream & operator<< (std::ostream &aStr, const _Time< TimeFmt< T0, D0, T1, D1, T2, D2, T3, D3, T4, D4, T5, D5, T6 > > &aTime)
 
template<time_element T0, char D0, time_element T1, char D1, time_element T2, char D2, time_element T3, char D3, time_element T4, char D4, time_element T5>
std::ostream & operator<< (std::ostream &aStr, const _Time< TimeFmt< T0, D0, T1, D1, T2, D2, T3, D3, T4, D4, T5,' ', null > > &aTime)
 
template<time_element T0, char D0, time_element T1, char D1, time_element T2, char D2, time_element T3, char D3, time_element T4>
std::ostream & operator<< (std::ostream &aStr, const _Time< TimeFmt< T0, D0, T1, D1, T2, D2, T3, D3, T4,' ', null,' ', null > > &aTime)
 
template<time_element T0, char D0, time_element T1, char D1, time_element T2, char D2, time_element T3>
std::ostream & operator<< (std::ostream &aStr, const _Time< TimeFmt< T0, D0, T1, D1, T2, D2, T3,' ', null,' ', null,' ', null > > &aTime)
 
template<time_element T0, char D0, time_element T1, char D1, time_element T2>
std::ostream & operator<< (std::ostream &aStr, const _Time< TimeFmt< T0, D0, T1, D1, T2,' ', null,' ', null,' ', null,' ', null > > &aTime)
 
template<time_element T0, char D0, time_element T1>
std::ostream & operator<< (std::ostream &aStr, const _Time< TimeFmt< T0, D0, T1,' ', null,' ', null,' ', null,' ', null,' ', null > > &aTime)
 
template<time_element T0>
std::ostream & operator<< (std::ostream &aStr, const _Time< TimeFmt< T0,' ', null,' ', null,' ', null,' ', null,' ', null,' ', null > > &aTime)
 
template<typename T >
_Type< T > Type ()
 
template<typename T >
_Type< T > Type (const T &aT)
 
template<typename T >
std::ostream & operator<< (std::ostream &aStr, const _Type< T > &aType)
 
template<>
void print< year > (std::ostream &aStr, const tm *aTm, const uint32_t &)
 
template<>
void print< yr > (std::ostream &aStr, const tm *aTm, const uint32_t &)
 
template<>
void print< strmth > (std::ostream &aStr, const tm *aTm, const uint32_t &)
 
template<>
void print< mth > (std::ostream &aStr, const tm *aTm, const uint32_t &)
 
template<>
void print< day > (std::ostream &aStr, const tm *aTm, const uint32_t &)
 
template<>
void print< hr > (std::ostream &aStr, const tm *aTm, const uint32_t &)
 
template<>
void print< min > (std::ostream &aStr, const tm *aTm, const uint32_t &)
 
template<>
void print< sec > (std::ostream &aStr, const tm *aTm, const uint32_t &)
 
template<>
void print< usec > (std::ostream &aStr, const tm *, const uint32_t &aUsec)
 
std::ostream & operator<< (std::ostream &aStr, const uhal::Node &aNode)
 The log_inserter function to add the node object to a log entry. More...
 
std::pair< uint32_t, uint16_t > ExtractTargetID (const URI &aUri)
 Extract an IP-address and port number from a URI object. More...
 
std::ostream & operator<< (std::ostream &aStr, const uhal::eIPbusTransactionType &aIPbusTransactionType)
 Streaming operator for formatting objects of the uhal::eIPbusTransactionType. More...
 
template<typename T >
std::ostream & operator<< (std::ostream &aStream, const TranslatedFmt< T > &aFmt)
 
std::ostream & operator<< (std::ostream &aStream, const PCIe::PacketFmt &aPacket)
 
std::ostream & operator<< (std::ostream &, const TimeIntervalStats &)
 
std::ostream & operator<< (std::ostream &aStream, const Mmap::PacketFmt &aPacket)
 

Variables

FatalLevel Fatal
 
ErrorLevel Error
 
WarningLevel Warning
 
NoticeLevel Notice
 
InfoLevel Info
 
DebugLevel Debug
 

Detailed Description

Todo:
Need to discuss and finalize which methods in ValWord and ValVector check validity and which don't. Currently it seems a little ad-hoc.

Typedef Documentation

◆ DefaultTimeFmt

typedef TimeFmt<day,'/',mth,'/',year,' ',hr,':',min,':',sec> uhal::DefaultTimeFmt

Typedef the most commonly used time format (day/month/year hour:minut:second) for convenience.

Definition at line 79 of file log_inserters.time.hpp.

◆ NameValuePairVectorType

typedef std::vector< std::pair< std::string, std::string > > uhal::NameValuePairVectorType

boost::fusion requires us to typedef our template types, so typedef a container which can hold key/value pairs

Definition at line 50 of file NodeTreeClassAttributeGrammar.hpp.

Enumeration Type Documentation

◆ eIPbusTransactionType

Enumerated type to define the IPbus transaction type.

Note that they are stored here as (raw_type << 3) so that the LSL operation does not need to be performed every time a new transaction is created

Enumerator
B_O_T 
READ 
WRITE 
RMW_BITS 
RMW_SUM 
R_A_I 
NI_READ 
NI_WRITE 
CONFIG_SPACE_READ 

Definition at line 74 of file ProtocolIPbusCore.hpp.

◆ integer_base

Enumerated type specifying the formatting option.

Enumerator
bin 

Binary.

dec 

Decimal.

hex 

Hexadecimal.

Definition at line 48 of file log_inserters.integer.hpp.

◆ integer_format

Enumerated type specifying the formatting option.

Enumerator
fixed 

Fixed width.

variable 

Variable width.

Definition at line 58 of file log_inserters.integer.hpp.

◆ time_element

Enumerated type defining the different elements which can be used for formatting a time.

Enumerator
null 

an unused entry

year 

year formatted as four digits e.g.

2012

yr 

year formatted as two digits e.g.

12

strmth 

month formatted as three character string e.g.

Jun

mth 

month formatted as two digits e.g.

06

day 

day of the month formatted as two digits e.g.

27

hr 

hour of the day formatted as two digits, 24-hour clock e.g.

14

min 

minutes past the hour formatted as two digits e.g.

06

sec 

seconds past the minute formatted as two digits e.g.

09

usec 

microseconds past the second formatted as exactly six digits e.g.

012345

Definition at line 55 of file log_inserters.time.hpp.

Function Documentation

◆ DefaultIntegerBase()

static const integer_base uhal::DefaultIntegerBase ( dec  )
static

Constant which is the default formatting option.

◆ DefaultIntegerFormat()

static const integer_format uhal::DefaultIntegerFormat ( variable  )
static

Constant which is the default formatting option.

◆ ExtractTargetID()

std::pair< uint32_t, uint16_t > uhal::ExtractTargetID ( const URI aUri)

Extract an IP-address and port number from a URI object.

Parameters
aUria URI object to be parsed
Returns
a pair containing an IP-address (first) and port number (second)

Definition at line 50 of file ProtocolControlHub.cpp.

References Info, Integer(), uhal::URI::mArguments, and Quote().

Referenced by uhal::ControlHub< InnerProtocol >::ControlHub().

◆ Integer() [1/2]

template<typename T >
_Integer< T, IntFmt<> > uhal::Integer ( const T &  aT)

Forward declare a function which creates an instance of the ultra-lightweight wrapper from an integer.

Definition at line 44 of file log_inserters.integer.hxx.

Referenced by uhal::HostToTargetInspector< IPbus_major, IPbus_minor >::analyze(), uhal::TargetToHostInspector< IPbus_major, IPbus_minor >::analyze(), uhal::HostToTargetInspector< IPbus_major, IPbus_minor >::bot(), uhal::TargetToHostInspector< IPbus_major, IPbus_minor >::bot(), uhal::NodeTreeBuilder::calculateHierarchicalAddresses(), uhal::tests::PerfTester::QueuedBlockRead::check_values(), uhal::tests::PerfTester::QueuedBlockWrite::check_values(), uhal::tests::PerfTester::QueuedRmwBits::check_values(), uhal::tests::PerfTester::QueuedRmwSum::check_values(), uhal::PCIe::File::close(), uhal::Mmap::File::close(), uhal::Mmap::connect(), uhal::PCIe::connect(), uhal::HostToTargetInspector< IPbus_major, IPbus_minor >::control_packet_header(), uhal::tests::DummyHardware< 2, 0 >::control_packet_header(), uhal::TargetToHostInspector< IPbus_major, IPbus_minor >::control_packet_header(), uhal::PCIe::File::createBuffer(), uhal::PCIe::disconnect(), uhal::ClientInterface::dispatch(), uhal::IPbus< 1, IPbus_minor >::ExtractHeader(), uhal::IPbus< 2, IPbus_minor >::ExtractHeader(), ExtractTargetID(), uhal::tests::PCIeDummyHardware::fifoRead(), uhal::tests::PCIeDummyHardware::fileWrite(), uhal::NodeTreeBuilder::getNodeTree(), uhal::tests::PerfTester::getRandomBlockSize(), uhal::IPbusCore::implementRead(), uhal::IPbusCore::implementReadBlock(), uhal::IPbusCore::implementReadConfigurationSpace(), uhal::IPbusCore::implementRMWbits(), uhal::IPbusCore::implementRMWsum(), uhal::IPbusCore::implementWrite(), uhal::IPbusCore::implementWriteBlock(), uhal::tests::job_multiple(), main(), uhal::HostToTargetInspector< IPbus_major, IPbus_minor >::ni_read(), uhal::TargetToHostInspector< IPbus_major, IPbus_minor >::ni_read(), uhal::HostToTargetInspector< IPbus_major, IPbus_minor >::ni_write(), uhal::TargetToHostInspector< IPbus_major, IPbus_minor >::ni_write(), uhal::PCIe::File::open(), uhal::Mmap::File::open(), uhal::Parser< uhal::Node * >::operator()(), uhal::tests::PCIeDummyHardware::PCIeDummyHardware(), uhal::utilities::PugiXMLParseResultPrettifier(), uhal::PCIe::File::read(), uhal::HostToTargetInspector< IPbus_major, IPbus_minor >::read(), uhal::UDP< InnerProtocol >::read(), uhal::Mmap::read(), uhal::TargetToHostInspector< IPbus_major, IPbus_minor >::read(), uhal::UDP< InnerProtocol >::read_callback(), uhal::TCP< InnerProtocol, nr_buffers_per_send >::read_callback(), uhal::HostToTargetInspector< IPbus_major, IPbus_minor >::readConfigurationSpace(), uhal::HostToTargetInspector< IPbus_major, IPbus_minor >::resend_packet_header(), uhal::HostToTargetInspector< IPbus_major, IPbus_minor >::rmw_bits(), uhal::TargetToHostInspector< IPbus_major, IPbus_minor >::rmw_bits(), uhal::HostToTargetInspector< IPbus_major, IPbus_minor >::rmw_sum(), uhal::TargetToHostInspector< IPbus_major, IPbus_minor >::rmw_sum(), uhal::tests::PCIeDummyHardware::run(), uhal::tests::PerfTester::runValidationTest(), uhal::HostToTargetInspector< IPbus_major, IPbus_minor >::status_packet_header(), uhal::TargetToHostInspector< IPbus_major, IPbus_minor >::status_packet_header(), uhal::tests::UHAL_TESTS_DEFINE_CLIENT_TEST_CASES(), uhal::HostToTargetInspector< IPbus_major, IPbus_minor >::unknown_packet_header(), uhal::TargetToHostInspector< IPbus_major, IPbus_minor >::unknown_packet_header(), uhal::HostToTargetInspector< IPbus_major, IPbus_minor >::unknown_type(), uhal::tests::DummyHardware< 2, 0 >::unknown_type(), uhal::TargetToHostInspector< IPbus_major, IPbus_minor >::unknown_type(), uhal::ControlHub< InnerProtocol >::validate(), uhal::IPbusCore::validate(), uhal::IPbus< 2, IPbus_minor >::validate(), uhal::tests::PerfTester::validation_test_write_rmwsum_read(), uhal::Mmap::File::write(), uhal::PCIe::File::write(), uhal::HostToTargetInspector< IPbus_major, IPbus_minor >::write(), uhal::UDP< InnerProtocol >::write(), uhal::TCP< InnerProtocol, nr_buffers_per_send >::write(), uhal::Mmap::write(), uhal::ClientInterface::write(), uhal::TargetToHostInspector< IPbus_major, IPbus_minor >::write(), uhal::UDP< InnerProtocol >::write_callback(), and uhal::TCP< InnerProtocol, nr_buffers_per_send >::write_callback().

◆ Integer() [2/2]

template<typename T , integer_base BASE, integer_format FORMAT, uint32_t WIDTH>
_Integer< T, IntFmt< BASE, FORMAT, WIDTH > > uhal::Integer ( const T &  aT,
const IntFmt< BASE, FORMAT, WIDTH > &  aFmt 
)

Forward declare a function which creates an instance of the ultra-lightweight wrapper from an integer.

Definition at line 49 of file log_inserters.integer.hxx.

◆ log_inserter()

template<typename T >
void uhal::log_inserter ( const T &  )

◆ Now()

timeval uhal::Now ( )

◆ operator<<() [1/27]

std::ostream & uhal::operator<< ( std::ostream &  aStream,
const TimeIntervalStats aStats 
)

◆ operator<<() [2/27]

std::ostream & uhal::operator<< ( std::ostream &  aStr,
const _ThisThreadID aThisThreadID 
)

Definition at line 42 of file log_inserters.threadID.cpp.

◆ operator<<() [3/27]

template<typename T >
std::ostream & uhal::operator<< ( std::ostream &  aStr,
const _Type< T > &  aType 
)

Definition at line 45 of file log_inserters.type.hxx.

References setupTemplate::name.

◆ operator<<() [4/27]

std::ostream & uhal::operator<< ( std::ostream &  aStr,
const uhal::URI aURI 
)

◆ operator<<() [5/27]

std::ostream & uhal::operator<< ( std::ostream &  aStr,
const Location aLocation 
)

◆ operator<<() [6/27]

template<typename T >
std::ostream & uhal::operator<< ( std::ostream &  aStr,
const _Quote< T > &  aQuote 
)

Definition at line 40 of file log_inserters.quote.hxx.

◆ operator<<() [7/27]

std::ostream & uhal::operator<< ( std::ostream &  aStr,
const uhal::HttpResponseType aHttpResponse 
)

◆ operator<<() [8/27]

std::ostream& uhal::operator<< ( std::ostream &  aStream,
const Mmap::PacketFmt aPacket 
)

Definition at line 87 of file ProtocolMmap.cpp.

References hex, and uhal::Mmap::PacketFmt::mData.

◆ operator<<() [9/27]

std::ostream & uhal::operator<< ( std::ostream &  aStr,
const uhal::eIPbusTransactionType aIPbusTransactionType 
)

Streaming operator for formatting objects of the uhal::eIPbusTransactionType.

Parameters
aStra stream to which to append the formatted data
aIPbusTransactionTypean enum object to be formatted
Returns
a reference to the stream for chaining stram calls

Definition at line 55 of file ProtocolIPbusCore.cpp.

References B_O_T, CONFIG_SPACE_READ, NI_READ, NI_WRITE, R_A_I, READ, RMW_BITS, RMW_SUM, and WRITE.

◆ operator<<() [10/27]

template<typename FORMAT >
std::ostream & uhal::operator<< ( std::ostream &  aStr,
const uhal::_Integer< uint8_t, FORMAT > &  aInt 
)

Definition at line 260 of file log_inserters.integer.hxx.

◆ operator<<() [11/27]

template<typename FORMAT >
std::ostream & uhal::operator<< ( std::ostream &  aStr,
const uhal::_Integer< int8_t, FORMAT > &  aInt 
)

Definition at line 267 of file log_inserters.integer.hxx.

◆ operator<<() [12/27]

template<typename FORMAT >
std::ostream & uhal::operator<< ( std::ostream &  aStr,
const uhal::_Integer< uint16_t, FORMAT > &  aInt 
)

Definition at line 274 of file log_inserters.integer.hxx.

◆ operator<<() [13/27]

template<typename FORMAT >
std::ostream & uhal::operator<< ( std::ostream &  aStr,
const uhal::_Integer< int16_t, FORMAT > &  aInt 
)

Definition at line 281 of file log_inserters.integer.hxx.

◆ operator<<() [14/27]

std::ostream & uhal::operator<< ( std::ostream &  aStream,
const PCIe::PacketFmt aPacket 
)

Definition at line 87 of file ProtocolPCIe.cpp.

References hex, and uhal::PCIe::PacketFmt::mData.

◆ operator<<() [15/27]

template<typename FORMAT >
std::ostream & uhal::operator<< ( std::ostream &  aStr,
const uhal::_Integer< uint32_t, FORMAT > &  aInt 
)

Definition at line 288 of file log_inserters.integer.hxx.

◆ operator<<() [16/27]

template<typename FORMAT >
std::ostream & uhal::operator<< ( std::ostream &  aStr,
const uhal::_Integer< int32_t, FORMAT > &  aInt 
)

Definition at line 295 of file log_inserters.integer.hxx.

◆ operator<<() [17/27]

template<typename FORMAT >
std::ostream & uhal::operator<< ( std::ostream &  aStr,
const uhal::_Integer< uint64_t, FORMAT > &  aInt 
)

Definition at line 302 of file log_inserters.integer.hxx.

◆ operator<<() [18/27]

template<typename FORMAT >
std::ostream & uhal::operator<< ( std::ostream &  aStr,
const uhal::_Integer< int64_t, FORMAT > &  aInt 
)

Definition at line 309 of file log_inserters.integer.hxx.

◆ operator<<() [19/27]

template<time_element T0, char D0, time_element T1, char D1, time_element T2, char D2, time_element T3, char D3, time_element T4, char D4, time_element T5, char D5, time_element T6>
std::ostream & uhal::operator<< ( std::ostream &  aStr,
const _Time< TimeFmt< T0, D0, T1, D1, T2, D2, T3, D3, T4, D4, T5, D5, T6 > > &  aTime 
)

Definition at line 129 of file log_inserters.time.hxx.

◆ operator<<() [20/27]

template<time_element T0, char D0, time_element T1, char D1, time_element T2, char D2, time_element T3, char D3, time_element T4, char D4, time_element T5>
std::ostream & uhal::operator<< ( std::ostream &  aStr,
const _Time< TimeFmt< T0, D0, T1, D1, T2, D2, T3, D3, T4, D4, T5,' ', null > > &  aTime 
)

Definition at line 154 of file log_inserters.time.hxx.

◆ operator<<() [21/27]

template<time_element T0, char D0, time_element T1, char D1, time_element T2, char D2, time_element T3, char D3, time_element T4>
std::ostream & uhal::operator<< ( std::ostream &  aStr,
const _Time< TimeFmt< T0, D0, T1, D1, T2, D2, T3, D3, T4,' ', null,' ', null > > &  aTime 
)

Definition at line 176 of file log_inserters.time.hxx.

◆ operator<<() [22/27]

template<time_element T0, char D0, time_element T1, char D1, time_element T2, char D2, time_element T3>
std::ostream & uhal::operator<< ( std::ostream &  aStr,
const _Time< TimeFmt< T0, D0, T1, D1, T2, D2, T3,' ', null,' ', null,' ', null > > &  aTime 
)

Definition at line 195 of file log_inserters.time.hxx.

◆ operator<<() [23/27]

template<time_element T0, char D0, time_element T1, char D1, time_element T2>
std::ostream & uhal::operator<< ( std::ostream &  aStr,
const _Time< TimeFmt< T0, D0, T1, D1, T2,' ', null,' ', null,' ', null,' ', null > > &  aTime 
)

Definition at line 211 of file log_inserters.time.hxx.

◆ operator<<() [24/27]

template<time_element T0, char D0, time_element T1>
std::ostream & uhal::operator<< ( std::ostream &  aStr,
const _Time< TimeFmt< T0, D0, T1,' ', null,' ', null,' ', null,' ', null,' ', null > > &  aTime 
)

Definition at line 224 of file log_inserters.time.hxx.

◆ operator<<() [25/27]

template<time_element T0>
std::ostream & uhal::operator<< ( std::ostream &  aStr,
const _Time< TimeFmt< T0,' ', null,' ', null,' ', null,' ', null,' ', null,' ', null > > &  aTime 
)

Definition at line 234 of file log_inserters.time.hxx.

◆ operator<<() [26/27]

template<typename T >
std::ostream& uhal::operator<< ( std::ostream &  aStream,
const TranslatedFmt< T > &  aFmt 
)

Definition at line 299 of file ProtocolIPbusCore.hpp.

◆ operator<<() [27/27]

std::ostream & uhal::operator<< ( std::ostream &  aStr,
const uhal::Node aNode 
)

The log_inserter function to add the node object to a log entry.

Parameters
aNodea node to format and print to log
aStra stream to which to append the formatted node
Returns
a reference to the stream object for chaining stream calls

Definition at line 57 of file Node.cpp.

References uhal::Node::stream().

◆ print()

template<time_element T>
void uhal::print ( std::ostream &  aStr,
const tm *  aTm,
const uint32_t &  aUsec 
)

◆ print< day >()

template<>
void uhal::print< day > ( std::ostream &  aStr,
const tm *  aTm,
const uint32_t &   
)

Definition at line 90 of file log_inserters.time.cpp.

◆ print< hr >()

template<>
void uhal::print< hr > ( std::ostream &  aStr,
const tm *  aTm,
const uint32_t &   
)

Definition at line 102 of file log_inserters.time.cpp.

◆ print< min >()

template<>
void uhal::print< min > ( std::ostream &  aStr,
const tm *  aTm,
const uint32_t &   
)

Definition at line 113 of file log_inserters.time.cpp.

◆ print< mth >()

template<>
void uhal::print< mth > ( std::ostream &  aStr,
const tm *  aTm,
const uint32_t &   
)

Definition at line 81 of file log_inserters.time.cpp.

◆ print< sec >()

template<>
void uhal::print< sec > ( std::ostream &  aStr,
const tm *  aTm,
const uint32_t &   
)

Definition at line 127 of file log_inserters.time.cpp.

◆ print< strmth >()

template<>
void uhal::print< strmth > ( std::ostream &  aStr,
const tm *  aTm,
const uint32_t &   
)

Definition at line 72 of file log_inserters.time.cpp.

◆ print< usec >()

template<>
void uhal::print< usec > ( std::ostream &  aStr,
const tm *  ,
const uint32_t &  aUsec 
)

Definition at line 141 of file log_inserters.time.cpp.

References Time().

◆ print< year >()

template<>
void uhal::print< year > ( std::ostream &  aStr,
const tm *  aTm,
const uint32_t &   
)

Definition at line 47 of file log_inserters.time.cpp.

◆ print< yr >()

template<>
void uhal::print< yr > ( std::ostream &  aStr,
const tm *  aTm,
const uint32_t &   
)

Definition at line 55 of file log_inserters.time.cpp.

◆ Quote() [1/2]

template<typename T >
_Quote< T > uhal::Quote ( const T &  aT)

Definition at line 48 of file log_inserters.quote.hxx.

Referenced by uhal::NodeTreeBuilder::addChildren(), uhal::NodeTreeBuilder::CallBack(), uhal::ConnectionManager::CallBack(), uhal::UDP< InnerProtocol >::CheckDeadline(), uhal::TCP< InnerProtocol, nr_buffers_per_send >::CheckDeadline(), uhal::NodeTreeBuilder::checkForAddressCollisions(), uhal::Mmap::File::close(), uhal::PCIe::File::close(), uhal::TCP< InnerProtocol, nr_buffers_per_send >::connect(), uhal::UDP< InnerProtocol >::connect(), uhal::Mmap::connect(), uhal::PCIe::connect(), uhal::DerivedNodeFactory::convertToClassType(), uhal::DerivedNodeFactory::Creator< T >::create(), uhal::PCIe::disconnect(), uhal::TCP< InnerProtocol, nr_buffers_per_send >::dispatchExceptionHandler(), uhal::Mmap::dispatchExceptionHandler(), ExtractTargetID(), uhal::tests::PCIeDummyHardware::fifoRead(), uhal::Mmap::Flush(), uhal::Rule< R >::forbid(), uhal::ClientFactory::getClient(), uhal::ConnectionManager::getDevice(), uhal::Node::getNode(), uhal::NodeTreeBuilder::getNodeTree(), uhal::utilities::GetXMLattribute(), uhal::utilities::HttpGet(), uhal::Mmap::implementDispatch(), main(), uhal::Mmap::Mmap(), uhal::Mmap::File::open(), uhal::PCIe::File::open(), uhal::utilities::OpenFile(), uhal::Parser< uhal::Node * >::operator()(), operator<<(), uhal::utilities::ParseSemicolonDelimitedUriList(), uhal::PCIe::PCIe(), uhal::tests::PCIeDummyHardware::PCIeDummyHardware(), uhal::utilities::PugiXMLParseResultPrettifier(), uhal::PCIe::File::read(), uhal::Mmap::read(), uhal::Node::read(), uhal::UDP< InnerProtocol >::read_callback(), uhal::TCP< InnerProtocol, nr_buffers_per_send >::read_callback(), uhal::Node::readBlock(), uhal::Node::readBlockOffset(), uhal::Rule< R >::require(), uhal::tests::PCIeDummyHardware::run(), uhal::tests::PerfTester::runValidationTest(), uhal::NodeTreeBuilder::setModeAndSize(), uhal::utilities::ShellExpandFilenameExpr(), uhal::tests::PCIeDummyHardware::stop(), uhal::ControlHub< InnerProtocol >::validate(), uhal::IPbusCore::validate(), uhal::IPbus< 2, IPbus_minor >::validate(), uhal::tests::PerfTester::validation_test_write_rmwsum_read(), uhal::PCIe::File::write(), uhal::Mmap::write(), uhal::Node::write(), uhal::UDP< InnerProtocol >::write_callback(), uhal::TCP< InnerProtocol, nr_buffers_per_send >::write_callback(), uhal::Node::writeBlock(), uhal::Node::writeBlockOffset(), uhal::tests::PCIeDummyHardware::~PCIeDummyHardware(), uhal::TCP< InnerProtocol, nr_buffers_per_send >::~TCP(), and uhal::UDP< InnerProtocol >::~UDP().

◆ Quote() [2/2]

_Quote< const char *> uhal::Quote ( const char *  aStr)

Definition at line 39 of file log_inserters.quote.cpp.

◆ sign_helper() [1/5]

template<typename T >
void uhal::sign_helper ( std::ostream &  aStr,
const T &  aInt 
)

Helper function for adding the '+'/'-' sign.

Definition at line 56 of file log_inserters.integer.hxx.

Referenced by uhal::_Integer< T, IntFmt< dec, fixed, WIDTH > >::print(), and uhal::_Integer< T, IntFmt< dec, variable, WIDTH > >::print().

◆ sign_helper() [2/5]

template<>
void uhal::sign_helper ( std::ostream &  aStr,
const int8_t &  aInt 
)

Helper function for adding the '+'/'-' sign to int8_ts.

Definition at line 40 of file log_inserters.integer.cpp.

◆ sign_helper() [3/5]

template<>
void uhal::sign_helper ( std::ostream &  aStr,
const int16_t &  aInt 
)

Helper function for adding the '+'/'-' sign to int16_ts.

Definition at line 49 of file log_inserters.integer.cpp.

◆ sign_helper() [4/5]

template<>
void uhal::sign_helper ( std::ostream &  aStr,
const int32_t &  aInt 
)

Helper function for adding the '+'/'-' sign to int32_ts.

Definition at line 58 of file log_inserters.integer.cpp.

◆ sign_helper() [5/5]

template<>
void uhal::sign_helper ( std::ostream &  aStr,
const int64_t &  aInt 
)

Helper function for adding the '+'/'-' sign to int64_ts.

Definition at line 67 of file log_inserters.integer.cpp.

◆ ThisThreadID()

_ThisThreadID uhal::ThisThreadID ( )

◆ Time() [1/2]

_Time< DefaultTimeFmt > uhal::Time ( const timeval &  aTime)

Helper function which wrap the template uglyness in a pretty package.

Parameters
aTimea time object to be formatted and logged
Returns
a time wrapper object whose template parameters fully encapsulate the default formatting

Definition at line 54 of file log_inserters.time.hxx.

Referenced by uhal::FatalLevel::colour_head(), uhal::ErrorLevel::colour_head(), uhal::WarningLevel::colour_head(), uhal::NoticeLevel::colour_head(), uhal::InfoLevel::colour_head(), uhal::DebugLevel::colour_head(), main(), and print< usec >().

◆ Time() [2/2]

template<typename FORMAT >
_Time< FORMAT > uhal::Time ( const timeval &  aTime,
const FORMAT &  aFmt 
)

Helper function which wrap the template uglyness in a pretty package.

Parameters
aTimea time object to be formatted and logged
aFmta time format object whose template parameters fully encapsulate the desired formatting
Returns
a time wrapper object whose template parameters fully encapsulate the desired formatting

Definition at line 245 of file log_inserters.time.hxx.

◆ Type() [1/2]

template<typename T >
_Type< T > uhal::Type ( )

Definition at line 60 of file log_inserters.type.hxx.

Referenced by uhal::Node::getNode(), and main().

◆ Type() [2/2]

template<typename T >
_Type< T > uhal::Type ( const T &  aT)

Definition at line 66 of file log_inserters.type.hxx.

Variable Documentation

◆ Debug

DebugLevel uhal::Debug

Definition at line 133 of file LogLevels.cpp.

Referenced by uhal::HostToTargetInspector< IPbus_major, IPbus_minor >::analyze(), uhal::tests::DummyHardware< 2, 0 >::AnalyzeReceivedAndCreateReply(), uhal::NodeTreeBuilder::bitmaskNodeCreator(), uhal::tests::PerfTester::buildClients(), uhal::ClientInterface::checkBufferSpace(), uhal::UDP< InnerProtocol >::CheckDeadline(), uhal::TCP< InnerProtocol, nr_buffers_per_send >::CheckDeadline(), uhal::Mmap::connect(), uhal::PCIe::connect(), uhal::DerivedNodeFactory::Creator< T >::create(), uhal::PCIe::disconnect(), uhal::Mmap::Flush(), uhal::IPbusCore::implementBOT(), uhal::Mmap::implementDispatch(), uhal::IPbusCore::implementRead(), uhal::IPbusCore::implementReadBlock(), uhal::IPbusCore::implementReadConfigurationSpace(), uhal::IPbusCore::implementRMWbits(), uhal::IPbusCore::implementRMWsum(), uhal::IPbusCore::implementWrite(), uhal::IPbusCore::implementWriteBlock(), main(), uhal::NodeTreeBuilder::moduleNodeCreator(), uhal::tests::DummyHardwareOptions::parseFromCommandLine(), uhal::utilities::ParseSemicolonDelimitedUriList(), uhal::PCIe::PCIe(), uhal::tests::PCIeDummyHardware::PCIeDummyHardware(), uhal::NodeTreeBuilder::plainNodeCreator(), uhal::IPbus< 1, IPbus_minor >::predispatch(), uhal::UDP< InnerProtocol >::read(), uhal::TCP< InnerProtocol, nr_buffers_per_send >::read(), uhal::Mmap::read(), uhal::TCP< InnerProtocol, nr_buffers_per_send >::read_callback(), uhal::tests::PCIeDummyHardware::run(), uhal::utilities::ShellExpandFilenameExpr(), uhal::IPbusCore::validate(), uhal::UDP< InnerProtocol >::write(), uhal::TCP< InnerProtocol, nr_buffers_per_send >::write(), and uhal::Mmap::write().

◆ Error

ErrorLevel uhal::Error

Definition at line 61 of file LogLevels.cpp.

Referenced by uhal::HostToTargetInspector< IPbus_major, IPbus_minor >::analyze(), uhal::TargetToHostInspector< IPbus_major, IPbus_minor >::analyze(), uhal::tests::DummyHardware< 2, 0 >::AnalyzeReceivedAndCreateReply(), uhal::NodeTreeBuilder::CallBack(), uhal::ConnectionManager::CallBack(), uhal::tests::PerfTester::QueuedBlockRead::check_values(), uhal::tests::PerfTester::QueuedBlockWrite::check_values(), uhal::tests::PerfTester::QueuedRmwBits::check_values(), uhal::tests::PerfTester::QueuedRmwSum::check_values(), uhal::NodeTreeBuilder::checkForAddressCollisions(), uhal::Mmap::File::close(), uhal::PCIe::File::close(), uhal::IPbus< 1, IPbus_minor >::ExtractHeader(), uhal::IPbus< 2, IPbus_minor >::ExtractHeader(), uhal::Node::getNode(), uhal::utilities::GetXMLattribute(), uhal::tests::TCPDummyHardware< IPbus_major, IPbus_minor >::handle_read_chunk_header(), uhal::tests::TCPDummyHardware< IPbus_major, IPbus_minor >::handle_read_chunk_payload(), uhal::utilities::HttpGet(), main(), uhal::tests::DummyHardwareOptions::parseFromCommandLine(), uhal::utilities::PugiXMLParseResultPrettifier(), uhal::UDP< InnerProtocol >::read(), uhal::PCIe::read(), uhal::UDP< InnerProtocol >::read_callback(), uhal::TCP< InnerProtocol, nr_buffers_per_send >::read_callback(), uhal::tests::PerfTester::runValidationTest(), uhal::HostToTargetInspector< IPbus_major, IPbus_minor >::unknown_packet_header(), uhal::TargetToHostInspector< IPbus_major, IPbus_minor >::unknown_packet_header(), uhal::HostToTargetInspector< IPbus_major, IPbus_minor >::unknown_type(), uhal::tests::DummyHardware< 2, 0 >::unknown_type(), uhal::TargetToHostInspector< IPbus_major, IPbus_minor >::unknown_type(), uhal::tests::PerfTester::validation_test_write_rmwsum_read(), uhal::UDP< InnerProtocol >::write(), uhal::PCIe::write(), uhal::TCP< InnerProtocol, nr_buffers_per_send >::~TCP(), and uhal::UDP< InnerProtocol >::~UDP().

◆ Fatal

FatalLevel uhal::Fatal

◆ Info

InfoLevel uhal::Info

◆ Notice

NoticeLevel uhal::Notice

Definition at line 96 of file LogLevels.cpp.

Referenced by uhal::HostToTargetInspector< IPbus_major, IPbus_minor >::bot(), uhal::TargetToHostInspector< IPbus_major, IPbus_minor >::bot(), uhal::tests::PerfTester::QueuedBlockRead::check_values(), uhal::tests::PerfTester::QueuedBlockWrite::check_values(), uhal::tests::PerfTester::QueuedRmwBits::check_values(), uhal::tests::PerfTester::QueuedRmwSum::check_values(), uhal::HostToTargetInspector< IPbus_major, IPbus_minor >::control_packet_header(), uhal::tests::DummyHardware< 2, 0 >::control_packet_header(), uhal::TargetToHostInspector< IPbus_major, IPbus_minor >::control_packet_header(), uhal::Mmap::dispatchExceptionHandler(), main(), uhal::Mmap::Mmap(), uhal::HostToTargetInspector< IPbus_major, IPbus_minor >::ni_read(), uhal::TargetToHostInspector< IPbus_major, IPbus_minor >::ni_read(), uhal::HostToTargetInspector< IPbus_major, IPbus_minor >::ni_write(), uhal::TargetToHostInspector< IPbus_major, IPbus_minor >::ni_write(), uhal::tests::DummyHardwareOptions::parseFromCommandLine(), uhal::PCIe::PCIe(), uhal::tests::PCIeDummyHardware::PCIeDummyHardware(), uhal::HostToTargetInspector< IPbus_major, IPbus_minor >::read(), uhal::TargetToHostInspector< IPbus_major, IPbus_minor >::read(), uhal::HostToTargetInspector< IPbus_major, IPbus_minor >::readConfigurationSpace(), uhal::HostToTargetInspector< IPbus_major, IPbus_minor >::resend_packet_header(), uhal::HostToTargetInspector< IPbus_major, IPbus_minor >::rmw_bits(), uhal::TargetToHostInspector< IPbus_major, IPbus_minor >::rmw_bits(), uhal::HostToTargetInspector< IPbus_major, IPbus_minor >::rmw_sum(), uhal::TargetToHostInspector< IPbus_major, IPbus_minor >::rmw_sum(), uhal::tests::PerfTester::runValidationTest(), uhal::NodeTreeBuilder::setModeAndSize(), uhal::HostToTargetInspector< IPbus_major, IPbus_minor >::status_packet_header(), uhal::TargetToHostInspector< IPbus_major, IPbus_minor >::status_packet_header(), uhal::tests::PerfTester::validation_test_block_write_read(), uhal::tests::PerfTester::validation_test_write_rmwsum_read(), uhal::HostToTargetInspector< IPbus_major, IPbus_minor >::write(), uhal::TargetToHostInspector< IPbus_major, IPbus_minor >::write(), and uhal::tests::PCIeDummyHardware::~PCIeDummyHardware().

◆ Warning

WarningLevel uhal::Warning