SysToMath C++ Libraries Implementation Reference ManualVersion 1.10-r347
Generated by Doxygen 1.5.4-20071203
Thu Jan 3 20:17:00 2008
CONTENTS 1
Contents
1 SysToMath C++ Libraries Implementation Main Page 1
2 SysToMath C++ Libraries Implementation Module Index 2
3 SysToMath C++ Libraries Implementation Directory Hierarchy 3
4 SysToMath C++ Libraries Implementation Namespace Index 3
5 SysToMath C++ Libraries Implementation Class Index 4
6 SysToMath C++ Libraries Implementation Class Index 10
7 SysToMath C++ Libraries Implementation File Index 16
8 SysToMath C++ Libraries Implementation Page Index 18
9 SysToMath C++ Libraries Implementation Module Documentation 18
10 SysToMath C++ Libraries Implementation Directory Documentation 99
11 SysToMath C++ Libraries Implementation Namespace Documentation 105
12 SysToMath C++ Libraries Implementation Class Documentation 120
13 SysToMath C++ Libraries Implementation File Documentation 493
14 SysToMath C++ Libraries Implementation Example Documentation 569
15 SysToMath C++ Libraries Implementation Page Documentation 614
1 SysToMath C++ Libraries Implementation Main Page
1.1 Introduction
This documentation describes the C++ libraries contained in the SysToMath C++ Libraries package:
• SysToMath Aids C++ Library
• SysToMath Tool Aids C++ Library
They depend on the
• SysToMath Base C Library
belonging to the SysToMath C Libraries package.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
1.2 Supported Tool Families 2
1.2 Supported Tool Families
The C++ libraries contained in the SysToMath C++ Libraries package are designed to support the toolfamilies:
• Microsoft Visual Studio Tool Family
• GNU Tool Family
2 SysToMath C++ Libraries Implementation Module Index
2.1 SysToMath C++ Libraries Implementation Modules
Here is a list of all modules:
SysToMath Aids C++ Library 18
DebugAids: Debugging Support Facilities 19
DebugAids Implementation 46
DivAids: Diverse Aids 23
DivAids Implementation 48
DivAids Test 87
FilesysAids: File System Aids 39
FilesysAids Implementation 56
FilesysAids Test 88
GenCRC: Generic CRC Generation 44
GenCRC Implementation 58
GenCRC Test 90
LoggerAids: Formatted Logging Aids 61
LoggerAids Implementation 58
SmartptrAids: Smart Pointer Aids 72
SmartptrAids Implementation 59
SmartptrAids Test 91
SysToMath Aids C++ Library Test 96
SysToMath Tool Aids C++ Library 86
BinMsg: Abstract Binary Message Model 76
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
3 SysToMath C++ Libraries Implementation Directory Hierarchy 3
BinMsg Implementation 79
CtAids: ClearCase cleartool Aids 77
CtAids Implementation 79
DspMsg: DSP Message Model 78
DspMsg Implementation 80
LvdsPacket: LVDS Packet Model 84
LvdsPacket Implementation 81
McBspMsg: McBSP Message Model 84
McBspMsg Implementation 82
MsgTimestamp: Message Timestamp Model 85
MsgTimestamp Implementation 82
PrintkBinMsg: PrintkBin Message Model 85
PrintkBinMsg Implementation 83
3 SysToMath C++ Libraries Implementation Directory Hierarchy
3.1 SysToMath C++ Libraries Implementation Directories
This directory hierarchy is sorted roughly, but not completely, alphabetically:
stmaids 102
stm 101
impl 100
test 103
stmtoolaids 102
stm 101
toolaids 104
impl 99
4 SysToMath C++ Libraries Implementation Namespace Index
4.1 SysToMath C++ Libraries Implementation Namespace List
Here is a list of all namespaces with brief descriptions:
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
5 SysToMath C++ Libraries Implementation Class Index 4
stm (Namespace for the SysToMath C++ Libraries ) 105
stm::buffer (Namespace containing all buffer related utilities ) 112
stm::local (Implementation namespace for the SysToMath C++ Libraries ) 114
stm::rectrl (Namespace for regular expression matching issues ) 115
stm::smartptr (Namespace for all smart pointer aids class templates ) 116
stm::smartptr::local (Implementation namespace for the SysToMath Aids C++ Library mod-ule SmartptrAids ) 117
stm::tools (Namespace for the SysToMath Tool Aids C++ Library modules ) 118
stm::tools::local (Implementation namespace for the SysToMath Toll Aids C++ Library mod-ules ) 119
5 SysToMath C++ Libraries Implementation Class Index
5.1 SysToMath C++ Libraries Implementation Class Hierarchy
This inheritance list is sorted roughly, but not completely, alphabetically:
stm::local::basic_xlogger< StringT, lockingPolicy > 136
stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy > 130
stm::local::basic_xlogger< StringT, lockingPolicy >::Fmt 143
stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::Fmt 133
stm::local::basic_xlogger< StringT, lockingPolicy >::locker 144
stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::locker 134
stm::local::basic_xlogger< StringT, lockingPolicy >::no_lock 145
stm::local::basic_xlogger< StringT, lockingPolicy >::Stream 146
stm::local::basic_xlogger< std::string, lockingPolicy > 136
stm::basic_logger< std::string, stdIndent, lineLength, lockingPolicy > 130
stm::logger< stdIndent, lineLength, errorConsole, lockingPolicy > 296
stm::local::basic_xlogger< std::wstring, lockingPolicy > 136
stm::basic_logger< std::wstring, stdIndent, lineLength, lockingPolicy > 130
stm::wlogger< stdIndent, lineLength, errorConsole, lockingPolicy > 398
stm::smartptr::bijective< T, Compare, Allocator, Policy > 148
stm::local::BraceExpand 159
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
5.1 SysToMath C++ Libraries Implementation Class Hierarchy 5
stm::local::BraceExpand::Data 160
stm::local::BraceExpand::Data::Tail 162
stm::byte_iterator_range 163
stm::tools::BaseMessage< ContextT > 120
stm::tools::McBspMessage< ContextT > 321
stm::tools::PrintkBinMessage< ContextT > 351
stm::tools::BinMessage< ContextT > 149
stm::smartptr::local::comp_id< T, Compare > 164
stm::smartptr::local::comp_value< T, Compare > 165
stm::smartptr::local::comp_value_id< T, Compare > 166
stm::tools::Ct::Mode 179
stm::smartptr::local::decrefcount< T, Compare, refcounted, multirange > 187
stm::local::errmsg 194
stm::fmtflags 214
stm::hexfmt< UnsignedT, DefaultFlags > 215
stm::hexfmt< ElemT ∗, DefaultFlags > 219
stm::has_pow2size< T > 214
stm::smartptr::local::increfcount< T, Compare, refcounted, multirange > 222
stm::smartptr::injective< T, Compare, Allocator, Policy > 223
stm::smartptr::injective_set< T, Compare, Allocator, Policy > 236
stm::smartptr::local::item_descr< T, Compare, false, false > 288
stm::smartptr::local::item_descr< T, Compare, false, true > 290
stm::smartptr::local::item_descr< T, Compare, true, false > 292
stm::smartptr::local::item_descr< T, Compare, true, true > 293
stm::smartptr::local::item_type< T, Compare > 295
stm::logger_base 298
stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy > 130
stm::basic_logger< std::string, stdIndent, lineLength, lockingPolicy > 130
stm::basic_logger< std::wstring, stdIndent, lineLength, lockingPolicy > 130
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
5.1 SysToMath C++ Libraries Implementation Class Hierarchy 6
stm::tools::LvdsPacket< ContextT >::Aich 306
stm::tools::LvdsPacket< ContextT >::DataType 307
stm::tools::LvdsPacket< ContextT >::Priority 308
stm::smartptr::MakeMultirange< Policy > 309
stm::smartptr::MakeSurjective< Policy > 309
stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange > 310
stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange>::rangeid_type 315
stm::smartptr::local::mapped_ptr< T, Compare, Allocator, Policy::surjective::value, Pol-icy::multirange::value > 310
stm::smartptr::injective_ptr< T, Compare, Allocator, Policy > 224
stm::smartptr::injective_set< T, Compare, Allocator, Policy >::accessor 242
stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, false > 316
stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, false >::rangeid_-type 320
stm::smartptr::local::mapped_ptr< T, Compare, Allocator,stm::smartptr::MakeMultirange< Policy >::surjective::value,stm::smartptr::MakeMultirange< Policy >::multirange::value > 310
stm::smartptr::injective_ptr< T, Compare, Allocator, stm::smartptr::MakeMultirange<Policy > > 224
Node 328
stm::nospace< CharT > 331
Operation 332
Operation::Archive 334
Operation::Mode 335
Operation::Type 335
stm::path< NameT > 336
stm::smartptr::local::pcomp< T, Compare > 348
stm::smartptr::local::pointee_type< T > 348
stm::smartptr::policy< Flags > 350
stm::pstring 353
stm::numpstring 331
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
5.1 SysToMath C++ Libraries Implementation Class Hierarchy 7
stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, multirange > 359
stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, multirange>::range_iterator 364
stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, false > 365
stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, false >::range_-iterator 368
Slot 372
stm::space< CharT > 373
basic_ostringstream 374
stm::basic_logger< std::string, stdIndent, lineLength, lockingPolicy > 130
stm::basic_logger< std::wstring, stdIndent, lineLength, lockingPolicy > 130
map 374
stm::local::xinputrange< std::set< InputFileT >, bufSize > 443
stm::inputrange< std::set< InputFileT >, bufSize > 244
stm::inputseq< InputFileT, bufSize > 257
Sudoku 375
Sudoku::State 380
TestPtr< Policy > 390
TestSet< Policy > 394
stm::tools::local::xArgList 399
stm::tools::Ct::ArgList 177
stm::tools::local::xBaseMessage< ContextT > 401
stm::tools::BaseMessage< ContextT > 120
stm::tools::local::xBaseMessageContext< DataT, InputRangeT, ContextT > 404
stm::tools::BaseMessageContext< DataT, InputRangeT, ContextT > 126
stm::tools::BinMessageContext< DataT, InputRangeT, ContextT > 154
stm::tools::local::xBinMessage< ContextT > 406
stm::tools::BinMessage< ContextT > 149
stm::tools::local::xBinMessageContext< ContextT > 408
stm::tools::BinMessageContext< DataT, InputRangeT, ContextT > 154
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
5.1 SysToMath C++ Libraries Implementation Class Hierarchy 8
stm::tools::local::xBinMessageGap 412
stm::tools::BinMessageContext< DataT, InputRangeT, ContextT >::Gap 157
stm::local::xcondition 413
stm::condition 166
stm::local::xcrc< RemPolT > 414
stm::crc< RemPolT > 169
stm::tools::local::xCt 417
stm::tools::Ct 174
stm::tools::local::xCtOperation 419
stm::tools::CtOperation 183
stm::tools::local::xCtOperation::LabelList 421
stm::local::xdirdata< DataT, EnvT > 422
stm::path< NameT >::dirdata< DataT, EnvT > 342
stm::tools::local::xDspMessage< ContextT > 424
stm::tools::DspMessage< ContextT > 187
stm::local::xfilefind< PathContainerT > 426
stm::filefind< PathContainerT > 195
stm::local::xfilespec 428
stm::filespec 199
stm::local::xfilespec::Env 437
stm::local::xfilespec::Rollback 438
stm::local::xfilespeclist 439
stm::filespeclist 207
stm::tools::CtExceptions 180
stm::local::xfixedfmt< FloatT > 440
stm::fixedfmt< FloatT > 211
stm::local::xhexfmt< UnsignedT > 442
stm::hexfmt< UnsignedT, DefaultFlags > 215
stm::local::xhexfmt< ElemT ∗ > 442
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
5.1 SysToMath C++ Libraries Implementation Class Hierarchy 9
stm::hexfmt< ElemT ∗, DefaultFlags > 219
stm::local::xinputrange< FileRangeT, bufSize > 443
stm::inputrange< FileRangeT, bufSize > 244
stm::local::xinputrange_iterator< BufRangeT, ContextT > 449
stm::inputrange_iterator< BufRangeT, ContextT > 252
stm::local::xIntegral_range< IntegralT, minVal, maxVal > 453
stm::integral_range< IntegralT, minVal, maxVal > 258
stm::local::xIntegral_set< IntegralRangeT, RangeSetT > 457
stm::integral_set< IntegralRangeT, RangeSetT > 268
stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::Env 461
stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::integral_iterator 462
stm::tools::local::xLvdsPacket< ContextT > 463
stm::tools::LvdsPacket< ContextT > 299
stm::tools::local::xMcBspMessage< ContextT > 468
stm::tools::McBspMessage< ContextT > 321
stm::tools::local::xMcBspMessage< ContextT >::Identification 469
stm::tools::local::xMsgTimestamp 474
stm::tools::MsgTimestamp 324
stm::tools::local::xPrintkBinMessage< ContextT > 477
stm::tools::PrintkBinMessage< ContextT > 351
stm::tools::local::xPrintkBinMessage< ContextT >::Identification 478
stm::local::xreadablefile 483
stm::readablefile< NameT > 355
stm::local::xrecursionenv 484
stm::path< NameT >::recursionenv 346
stm::local::xscoped_lock 486
stm::scoped_lock 370
stm::local::xsystem_condition 487
stm::system_condition 386
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
6 SysToMath C++ Libraries Implementation Class Index 10
stm::local::xsystem_scoped_lock 488
stm::system_scoped_lock 389
stm::tools::local::xTraceHeader 489
stm::tools::DspMessage< ContextT >::TraceHeader 191
Xyz 492
6 SysToMath C++ Libraries Implementation Class Index
6.1 SysToMath C++ Libraries Implementation Class List
Here are the classes, structs, unions and interfaces with brief descriptions:
stm::tools::BaseMessage< ContextT > (Abstract base class of message types for scanningfrom its byte_iterator_range base class object ) 120
stm::tools::BaseMessageContext< DataT, InputRangeT, ContextT > (Base message contexttype which shall be a direct or indirect public base class of its template parameter Con-textT ) 126
stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy > (Class template to man-age formatted logging on an output stream (normally a log file) and optionally on a secondstream (normally a console) and on the system log (see stm::syslog()) ) 130
stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::Fmt (Format informa-tion for output streams ) 133
stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::locker (Scoped lockingfor output streams ) 134
stm::local::basic_xlogger< StringT, lockingPolicy > (Stm::basic_logger implementation baseclass template ) 136
stm::local::basic_xlogger< StringT, lockingPolicy >::Fmt 143
stm::local::basic_xlogger< StringT, lockingPolicy >::locker 144
stm::local::basic_xlogger< StringT, lockingPolicy >::no_lock (Dummy type for no locking ) 145
stm::local::basic_xlogger< StringT, lockingPolicy >::Stream 146
stm::smartptr::bijective< T, Compare, Allocator, Policy > (The traits class template bijectivecombines the class template injective_ptr and its associated class template injective_sethaving the surjective policy property ) 148
stm::tools::BinMessage< ContextT > (Binary message scanning from a stm::byte_iterator_-range ) 149
stm::tools::BinMessageContext< DataT, InputRangeT, ContextT > (Binary message contexttype ) 154
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
6.1 SysToMath C++ Libraries Implementation Class List 11
stm::tools::BinMessageContext< DataT, InputRangeT, ContextT >::Gap (Characterizationof the gap, i.e ) 157
stm::local::BraceExpand (Brace expansion implementation class ) 159
stm::local::BraceExpand::Data 160
stm::local::BraceExpand::Data::Tail 162
stm::byte_iterator_range (Byte iterator range class ) 163
stm::smartptr::local::comp_id< T, Compare > 164
stm::smartptr::local::comp_value< T, Compare > 165
stm::smartptr::local::comp_value_id< T, Compare > 166
stm::condition (Condition class ) 166
stm::crc< RemPolT > (Class template crc provides a means to generate cyclic redundancycheck (CRC) remainder polynomials of type RemPolT over buffers of byte-like objects ) 169
stm::tools::Ct (Main ClearCase cleartool aids class ) 174
stm::tools::Ct::ArgList (Class to hold multiple arguments for a command ) 177
stm::tools::Ct::Mode (Ct action modes ) 179
stm::tools::CtExceptions (ClearCase cleartool exceptions class ) 180
stm::tools::CtOperation (ClearCase cleartool operation class ) 183
stm::smartptr::local::decrefcount< T, Compare, refcounted, multirange > 187
stm::tools::DspMessage< ContextT > (DSP message contained in a binary message ) 187
stm::tools::DspMessage< ContextT >::TraceHeader (Type representing a trace header ) 191
stm::local::errmsg (Implementation class for macro StmDebugAidsErrmsg ) 194
stm::filefind< PathContainerT > (Container class representing existing file system elementsdefined by a file spec using pattern matching based file name expansion ) 195
stm::filespec (Class to specify file system element names ) 199
stm::filespeclist (List class of filespec objects ) 207
stm::fixedfmt< FloatT > (Class template allowing to format the floating point number of typeFloatT held on an output stream in fixed point notation using a specified precision ) 211
stm::fmtflags (Base class of class template stm::hexfmt specifying format flags ) 214
stm::has_pow2size< T > 214
stm::hexfmt< UnsignedT, DefaultFlags > (Class template allowing to format the unsignednumber held as hexadecimal string ) 215
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
6.1 SysToMath C++ Libraries Implementation Class List 12
stm::hexfmt< ElemT ∗, DefaultFlags > (Class template partial specialization allowing to for-mat the pointer held as hexadecimal string ) 219
stm::smartptr::local::increfcount< T, Compare, refcounted, multirange > 222
stm::smartptr::injective< T, Compare, Allocator, Policy > (The traits class template injectivecombines the class template injective_ptr and its associated class template injective_sethaving either the surjective or the not surjective policy property ) 223
stm::smartptr::injective_ptr< T, Compare, Allocator, Policy > (The class template injective_-ptr is a smart pointer pointing to unique constant objects of element type T stored using astatic repository ) 224
stm::smartptr::injective_set< T, Compare, Allocator, Policy > (The class template injective_-set is a container of unique constant objects of value type T stored wrapping a specificrange of the static repository of an injective_ptr<T, Compare, Allocator, Policy> object ) 236
stm::smartptr::injective_set< T, Compare, Allocator, Policy >::accessor (Subclass ofinjective_ptr<T, Compare, Allocator, MakeMultirange<Policy> > representing an ele-ment of this injective_set object ) 242
stm::inputrange< FileRangeT, bufSize > (Class template representing a range of input files )244
stm::inputrange_iterator< BufRangeT, ContextT > (Input iterator class template readingsuccessive byte ranges from the input range of the ContextT object for which it was con-structed ) 252
stm::inputseq< InputFileT, bufSize > 257
stm::integral_range< IntegralT, minVal, maxVal > (Class template representing a range ofintegral objects of type IntegralT constrained by the minimal and maximal values minValand maxVal ) 258
stm::integral_set< IntegralRangeT, RangeSetT > (Class template integral_set is a set con-tainer representing a set of integral type objects constrained by minimal and maximalvalues wrapping a set of integral ranges ) 268
stm::smartptr::local::item_descr< T, Compare, false, false > 288
stm::smartptr::local::item_descr< T, Compare, false, true > 290
stm::smartptr::local::item_descr< T, Compare, true, false > 292
stm::smartptr::local::item_descr< T, Compare, true, true > 293
stm::smartptr::local::item_type< T, Compare > 295
stm::logger< stdIndent, lineLength, errorConsole, lockingPolicy > (Class template to man-age formatted logging on a std::string based output stream (normally a log file) and op-tionally on a second std::string based stream (normally a console, by default std::cout, iftemplate parameter errorConsole is false (the default), or else std::cerr) ) 296
stm::logger_base (Common base class of all basic_logger class template specializations ) 298
stm::tools::LvdsPacket< ContextT > (LVDS packet contained in a binary message ) 299
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
6.1 SysToMath C++ Libraries Implementation Class List 13
stm::tools::LvdsPacket< ContextT >::Aich (LVDS packet Aich values ) 306
stm::tools::LvdsPacket< ContextT >::DataType (LVDS packet data type values ) 307
stm::tools::LvdsPacket< ContextT >::Priority (LVDS packet priority values ) 308
stm::smartptr::MakeMultirange< Policy > (Class template serving as wrapper of templateparameter Policy to ensure the multirange policy property ) 309
stm::smartptr::MakeSurjective< Policy > (Class template serving as wrapper of templateparameter Policy to ensure the surjective policy property ) 309
stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange >(Stm::smartptr::injective_ptr implementation base class template ) 310
stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange>::rangeid_type 315
stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, false > 316
stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, false >::rangeid_-type 320
stm::tools::McBspMessage< ContextT > (McBSP message scanning from a BaseMessage’sbyte_iterator_range ) 321
stm::tools::MsgTimestamp (Message timestamp type ) 324
Node 328
stm::nospace< CharT > (Unary predicate functor template determining if a CharT object isno white space as defined by the current locale ) 331
stm::numpstring (Class to represent a file system name with a case unsensitive order relationon Windows systems else with a case case sensitive order relation collating numericallycorrect ) 331
Operation 332
Operation::Archive 334
Operation::Mode 335
Operation::Type 335
stm::path< NameT > (Class template path refining boost::filesystem::path ) 336
stm::path< NameT >::dirdata< DataT, EnvT > (Abstract base class template of directorydata created for each directory the recusion handles ) 342
stm::path< NameT >::recursionenv (Type of or public base class of the global recursion en-vironment used by the methods recurse() and traverse() ) 346
stm::smartptr::local::pcomp< T, Compare > 348
stm::smartptr::local::pointee_type< T > 348
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
6.1 SysToMath C++ Libraries Implementation Class List 14
stm::smartptr::policy< Flags > (Class template serving as Policy template parameter forclass templates injective_ptr and injective_set ) 350
stm::tools::PrintkBinMessage< ContextT > (PrintkBin message scanning from a theBaseMessage’s byte_iterator_range ) 351
stm::pstring (Class to represent a std::string with a case unsensitive order relation on Win-dows systems else with a case sensitive order relation used for file system element naming) 353
stm::readablefile< NameT > (Class template representing a file named by its NameT sub-object which is guaranteed to be accessible for reading and holding its size at the time ofdefinition ) 355
stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, multirange > 359
stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, multirange>::range_iterator 364
stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, false > 365
stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, false >::range_-iterator 368
stm::scoped_lock (Scoped lock class ) 370
Slot 372
stm::space< CharT > (Unary predicate functor template determining if a CharT object is awhite space as defined by the current locale ) 373
basic_ostringstream 374
map 374
Sudoku (Sudoku model ) 375
Sudoku::State (Sudoku state ) 380
stm::system_condition (System condition class ) 386
stm::system_scoped_lock (System scoped lock class ) 389
TestPtr< Policy > 390
TestSet< Policy > 394
stm::wlogger< stdIndent, lineLength, errorConsole, lockingPolicy > (Class template to man-age formatted logging on a std::wstring based output stream (normally a log file) and op-tionally on a second std::wstring based stream (normally a console, by default std::wcout,if template parameter errorConsole is false (the default), or else std::wcerr) ) 398
stm::tools::local::xArgList (Stm::tools::Ct::ArgList implementation base class ) 399
stm::tools::local::xBaseMessage< ContextT > (Stm::tools::BaseMessage implementationbase class template ) 401
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
6.1 SysToMath C++ Libraries Implementation Class List 15
stm::tools::local::xBaseMessageContext< DataT, InputRangeT, ContextT >(Stm::tools::BaseMessageContext implementation base class template ) 404
stm::tools::local::xBinMessage< ContextT > (Stm::tools::BinMessage implementation baseclass template ) 406
stm::tools::local::xBinMessageContext< ContextT > (Stm::tools::BinMessageContext im-plementation base class template ) 408
stm::tools::local::xBinMessageGap (Stm::tools::BinMessageContext::Gap implementationbase class ) 412
stm::local::xcondition (Stm::condition implementation base class ) 413
stm::local::xcrc< RemPolT > (Stm::crc implementation base class template ) 414
stm::tools::local::xCt (Stm::tools::Ct implementation base class ) 417
stm::tools::local::xCtOperation (Stm::tools::CtOperation implementation base class ) 419
stm::tools::local::xCtOperation::LabelList 421
stm::local::xdirdata< DataT, EnvT > (Stm::path::dirdata implementation base class tem-plate ) 422
stm::tools::local::xDspMessage< ContextT > (Stm::tools::DspMessage implementation baseclass template ) 424
stm::local::xfilefind< PathContainerT > (Stm::filefind implementation base class template ) 426
stm::local::xfilespec (Stm::filespec implementation base class ) 428
stm::local::xfilespec::Env (Environment for regular expression creation ) 437
stm::local::xfilespec::Rollback (Rollback data for regular expression creation ) 438
stm::local::xfilespeclist (Stm::filespeclist implementation base class ) 439
stm::local::xfixedfmt< FloatT > (Stm::fixedfmt implementation base class template ) 440
stm::local::xhexfmt< UnsignedT > (Stm::hexfmt implementation base class template ) 442
stm::local::xinputrange< FileRangeT, bufSize > (Stm::inputrange implementation base classtemplate ) 443
stm::local::xinputrange_iterator< BufRangeT, ContextT > (Stm::inputrange_iterator im-plementation base class template ) 449
stm::local::xIntegral_range< IntegralT, minVal, maxVal > (Stm::integral_range implemen-tation base class template ) 453
stm::local::xIntegral_set< IntegralRangeT, RangeSetT > (Stm::integral_set implementationbase class template ) 457
stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::Env 461
stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::integral_iterator 462
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
7 SysToMath C++ Libraries Implementation File Index 16
stm::tools::local::xLvdsPacket< ContextT > (Stm::tools::LvdsPacket implementation baseclass template ) 463
stm::tools::local::xMcBspMessage< ContextT > (Stm::tools::McBspMessage implementa-tion base class template ) 468
stm::tools::local::xMcBspMessage< ContextT >::Identification (Type managing the identifi-cation of a McBSP message in a byte stream ) 469
stm::tools::local::xMsgTimestamp (Stm::tools::MsgTimestamp implementation base class ) 474
stm::tools::local::xPrintkBinMessage< ContextT > 477
stm::tools::local::xPrintkBinMessage< ContextT >::Identification 478
stm::local::xreadablefile (Stm::readablefile implementation base class ) 483
stm::local::xrecursionenv (Stm::path::recursionenv implementation base class ) 484
stm::local::xscoped_lock (Stm::scoped_lock implementation base class ) 486
stm::local::xsystem_condition (Stm::system_condition implementation base class ) 487
stm::local::xsystem_scoped_lock (Stm::system_scoped_lock implementation base class ) 488
stm::tools::local::xTraceHeader (Stm::tools::DspMessage::TraceHeader implementationbase class ) 489
Xyz 492
7 SysToMath C++ Libraries Implementation File Index
7.1 SysToMath C++ Libraries Implementation File List
Here is a list of all files with brief descriptions:
aids.hpp (Central include file for SysToMath Aids C++ library ) 493
aidsconfig.hpp (Management of library generation and of automatic library choice for theSysToMath Aids C++ library stmaids ) 494
binmsg.hpp (Declarations for the abstract binary message model ) 495
ctaids.cpp (Implementation of ClearCase cleartool utilities ) 497
ctaids.hpp (Declarations for ClearCase cleartool aids ) 498
debugaids.cpp (Implementation of the debugging support facilities ) 499
debugaids.hpp (Definition of debugging support macros and functions ) 500
debugxaids.hpp (Implementation of the debugging support facilities ) 503
divaids.cpp (Implementation of general utilities ) 505
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
7.1 SysToMath C++ Libraries Implementation File List 17
divaids.hpp (Declarations for diverse aids ) 506
divaidstest.cpp (Implementation of a console program demostrating the usage and testing theimplementation of the SysToMath Aids C++ Library module DivAids ) 513
divxaids.hpp (Implementation of diverse aids ) 514
dspmsg.cpp (Implementation of the DSP message model ) 521
dspmsg.hpp (Declarations for the DSP message model ) 522
filesysaids.cpp (Implementation of file system related utilities ) 523
filesysaids.hpp (Declarations for file system aids ) 524
filesystest.cpp (Implementation of a console program demostrating the usage and testing theimplementation of the SysToMath Aids C++ Library module FilesysAids ) 527
filesysxaids.hpp (Implementation of file system aids ) 528
gencrc.hpp (Declarations of generic CRC remainder polynomial generation ) 532
gencrctest.cpp (Implementation of a console program demostrating the usage and testing thefunctionality of the class template stm::crc which provides a generic CRC generator ) 534
genxcrc.hpp (Implementation of generic CRC remainder polynomial generation ) 535
loggeraids.hpp (Declarations of formatted logging aids ) 536
loggerxaids.hpp (Implementation of formatted logging aids ) 538
lvdspacket.hpp (Declarations for the LVDS packet model ) 540
mcbspmsg.hpp (Declarations for the McBSP message model ) 541
msgtimestamp.hpp (Declarations for the message timestamp model ) 542
printkbinmsg.hpp (Declarations for the PrintkBin message model ) 544
smartptraids.hpp (Declarations of smart pointer aids ) 545
smartptrtest.cpp (Implementation of a console program demostrating the usage and testingthe implementation of the SysToMath Aids C++ Library module SmartptrAids ) 548
smartptrxaids.hpp (Implementation of smart pointer aids ) 549
sudoku.cpp (Implementation of a console program demostrating the usage and testing theimplementation of the SysToMath Aids C++ Library stmaids ) 553
toolaids.hpp (Central include file for SysToMath Tool Aids C++ library ) 554
toolaidsconfig.hpp (Management of library generation and of automatic library choice for theSysToMath Tool Aids C++ library stmaids ) 555
xbinmsg.hpp (Implementation of the abstract binary message model ) 557
xctaids.hpp (Implementation of ClearCase cleartool aids ) 559
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
8 SysToMath C++ Libraries Implementation Page Index 18
xdspmsg.hpp (Implementation of the DSP message model ) 560
xlvdspacket.hpp (Implementation of the LVDS packet model ) 562
xmcbspmsg.hpp (Implementation of the McBSP message model ) 564
xmsgtimestamp.hpp (Implementation of the message timestamp model ) 565
xprintkbinmsg.hpp (Implementation of the PrintkBin message model ) 567
8 SysToMath C++ Libraries Implementation Page Index
8.1 SysToMath C++ Libraries Implementation Related Pages
Here is a list of all related documentation pages:
Deprecated List 619
9 SysToMath C++ Libraries Implementation Module Documenta-tion
9.1 SysToMath Aids C++ Library
Collaboration diagram for SysToMath Aids C++ Library:
GenCRC: Generic CRC Generation
SysToMath Aids C++ Library Test
SmartptrAids: Smart Pointer Aids
LoggerAids: Formatted Logging Aids
DivAids: Diverse Aids
DebugAids: Debugging Support Facilities
FilesysAids: File System Aids
SysToMath Aids C++ Library
9.1.1 Detailed Description
SysToMath Aids C++ Library (stmaids).
The SysToMath Aids C++ Library consists of several library objects providing various macros, functions,function templates, classes and class templates facilitating some basic computational tasks.
Files
• file aids.hppCentral include file for SysToMath Aids C++ library.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.2 DebugAids: Debugging Support Facilities 19
• file aidsconfig.hppManagement of library generation and of automatic library choice for the SysToMath Aids C++ librarystmaids.
Modules
• DebugAids: Debugging Support FacilitiesCollection of some debugging support macros and functions.
• DivAids: Diverse AidsCollection types, functions, function tempates, classes and class templates providing endian handling, bufferhandling, byte iterator ranges, integral ranges, integral sets, condition variables, scoped locks and stringhandling support.
• FilesysAids: File System AidsCollection of some file system related classes and class templates for path handling, bash-like file nameglobbing, POSIX-conform file spec expansion, and file and file range input scanning.
• GenCRC: Generic CRC GenerationDeclaration of the class template stm::crc used to generate cyclic redundancy check (CRC) remainderpolynomials of template type RemPolT over buffers of byte-like objects.
• LoggerAids: Formatted Logging AidsDeclaration of class templates for formatted logging on an output stream and on the console.
• SmartptrAids: Smart Pointer AidsDeclaration of class templates for smart pointer aids.
• SysToMath Aids C++ Library TestDemonstration of the usage and tests of the implementation of the SysToMath Aids C++ Library stmaids.
9.2 DebugAids: Debugging Support Facilities
Collaboration diagram for DebugAids: Debugging Support Facilities:
DebugAids ImplementationDebugAids: Debugging Support FacilitiesSysToMath Aids C++ Library
9.2.1 Detailed Description
Collection of some debugging support macros and functions.
These facilities are used throughout the other SysToMath Aids C++ Library modules.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.2 DebugAids: Debugging Support Facilities 20
Files
• file debugaids.hppDefinition of debugging support macros and functions.
Modules
• DebugAids ImplementationImplementation of the debugging support facilities.
Defines
• #define StmDebugAidsErrmsg(msg) StmDebugAidsErrmsgImpl_ (msg)Return the error message msg as std::string.
• #define StmDebugAidsVerify(cond) StmDebugAidsVerifyImpl_ (cond)Verify that the boolean condition cond is true.
Enumerations
• enum stm::SyslogFlags {
stm::SyslogNoLog = 0x00000000,
stm::SyslogInfo = 0x00000001,
stm::LogInfo = 0x00000001,
stm::SyslogWarning = 0x00000002,
stm::LogWarning = 0x00000002,
stm::SyslogError = 0x00000003,
stm::LogError = 0x00000003,
stm::SyslogLevelMask = 0x00000003,
stm::LogLevelMask = 0x00000003,
stm::SyslogPerror = 0x00010000,
stm::LogPerror = 0x00010000,
stm::SyslogNoPerror = 0x00020000,
stm::LogNoPerror = 0x00020000 }Syslog flags.
Functions
• void stm::initSyslog (bool perror=false, const std::string &prog=std::string())Initialize syslog().
• void stm::syslog (const std::string &message, unsigned int flags=SyslogInfo)Output message to the system log according to flags.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.2 DebugAids: Debugging Support Facilities 21
9.2.2 Define Documentation
9.2.2.1 #define StmDebugAidsErrmsg(msg) StmDebugAidsErrmsgImpl_ (msg)
Return the error message msg as std::string.
If the macro NDEBUG in not defined, that error message is preceded by the filename and line number of theinvocation location. For conveniance inside msg std::ostringstream::operator<<() may be used.
Examples:
filesystest.cpp, and smartptrtest.cpp.
Definition at line 94 of file debugaids.hpp.
Referenced by main().
9.2.2.2 #define StmDebugAidsVerify(cond) StmDebugAidsVerifyImpl_ (cond)
Verify that the boolean condition cond is true.
If the macro NDEBUG is defined or cond is true, the macro does nothing.
Else if cond is false, a dialog box pops up prompting for the action to be done offering the choice ofignoring the situation or of throwing a std::logic_error exception with cond as text.
On Windows systems, moreover, there is a choice to enter the debugger.
Examples:
smartptrtest.cpp, and sudoku.cpp.
Definition at line 106 of file debugaids.hpp.
Referenced by stm::tools::CtExceptions::add(), stm::local::xIntegral_set< IntegralRangeT,RangeSetT >::adjust(), stm::local::xfilespec::appChar(), stm::local::xfilespec::appCirc(),stm::local::xfilespec::appDot(), stm::local::xfilespec::appDotSeq(), stm::local::xfilespec::append(),stm::local::xfilespec::bracketExpr(), stm::inputrange< FileRangeT, bufSize >::bufAdvance(),stm::local::xfilespec::charClassExpr(), stm::local::xfilespec::checkLeadingDot(),stm::local::xfilespec::collSymb(), stm::tools::local::xBinMessageContext< ContextT >::createMessage(),stm::smartptr::local::item_descr< T, Compare, true, false >::decrefcount(), stm::smartptr::local::item_-descr< T, Compare, true, true >::decrefcount(), Sudoku::State::define(), TestSet< Policy >::define(),stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, multirange >::defineRange(),stm::inputrange< FileRangeT, bufSize >::file(), stm::inputrange< FileRangeT, bufSize >::fileOffset(),stm::filespec::findUnescapedParentheses(), Sudoku::State::generate(), stm::smartptr::local::mapped_-ptr< T, Compare, Allocator, refcounted, false >::getrefcount(), stm::smartptr::local::mapped_ptr< T,Compare, Allocator, refcounted, multirange >::getrefcount(), stm::local::xfilefind< PathContainerT>::handlePath(), stm::local::xfilespec::iappend(), Sudoku::State::init(), stm::smartptr::local::mapped_ptr<T, Compare, Allocator, refcounted, multirange >::init(), stm::smartptr::injective_set< T, Compare,Allocator, Policy >::insert(), main(), stm::smartptr::local::mapped_ptr< T, Compare, Allocator,refcounted, false >::mapped_ptr(), stm::smartptr::local::mapped_ptr< T, Compare, Allocator, ref-counted, multirange >::mapped_ptr(), stm::tools::McBspMessage< ContextT >::McBspMessage(),Node::Node(), stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::integral_iterator::operator++(),stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::integral_iterator::operator–(), stm::integral_-set< IntegralRangeT, RangeSetT >::operator-=(), stm::smartptr::injective_set< T, Compare, Alloca-tor, Policy >::accessor::operator=(), stm::integral_set< IntegralRangeT, RangeSetT >::operator|=(),stm::tools::PrintkBinMessage< ContextT >::PrintkBinMessage(), Sudoku::State::randomVal(),stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, multirange >::range(),
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.2 DebugAids: Debugging Support Facilities 22
stm::inputrange< FileRangeT, bufSize >::read(), stm::smartptr::local::repository_type< T, Com-pare, Allocator, refcounted, false >::remove(), stm::smartptr::local::repository_type< T, Com-pare, Allocator, refcounted, multirange >::remove(), stm::local::xinputrange_iterator< BufRangeT,ContextT >::scan(), Sudoku::State::solve(), stm::local::xfilespec::starStarOp(), TestSet< Policy>::tell(), TestPtr< Policy >::tell(), testptr(), testset(), stm::local::BraceExpand::toExpand(), Su-doku::State::undefine(), stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted,multirange >::undefineRange(), stm::smartptr::local::repository_type< T, Compare, Allocator, re-fcounted, multirange >::updateRange(), stm::local::xIntegral_set< IntegralRangeT, RangeSetT>::verify(), Sudoku::write(), stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted,false >::∼mapped_ptr(), and stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted,multirange >::∼mapped_ptr().
9.2.3 Enumeration Type Documentation
9.2.3.1 enum stm::SyslogFlags
Syslog flags.
Enumerator:
SyslogNoLog No logging.
SyslogInfo Information log level.
LogInfo
Deprecated
Use stm::SyslogInfo instead.
SyslogWarning Warning log level.
LogWarning
Deprecated
Use stm::SyslogWarning instead.
SyslogError Error log level.
LogError
Deprecated
Use stm::SyslogError instead.
SyslogLevelMask Log level mask.
LogLevelMask
Deprecated
Use stm::SyslogLevelMask instead.
SyslogPerror If set, print to stderr as well.
LogPerror
Deprecated
Use stm::SyslogPerror instead.
SyslogNoPerror If set, do not print to stderr as well.
LogNoPerror
Deprecated
Use stm::SyslogNoPerror instead.
Definition at line 120 of file debugaids.hpp.
9.2.4 Function Documentation
9.2.4.1 void stm::initSyslog (bool perror = false, const std::string & prog = std::string ())
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.3 DivAids: Diverse Aids 23
Initialize syslog().
If perror is set, subsequent calls to syslog() will output their messages also to stderr. A non-empty progserves as identifier of the logged messages.
Definition at line 106 of file debugaids.cpp.
References stm::local::syslogPerror, and stm::local::syslogProg.
9.2.4.2 void stm::syslog (const std::string & message, unsigned int flags = SyslogInfo)
Output message to the system log according to flags.
If flags contains the SyslogPerror flag or initSyslog() was called with perror set, message is also output onstderr.
Definition at line 158 of file debugaids.cpp.
References stm::SyslogError, stm::SyslogInfo, stm::SyslogLevelMask, stm::SyslogNoPerror,stm::local::syslogPerror, stm::SyslogPerror, stm::local::syslogProg, and stm::SyslogWarning.
Referenced by stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::operator()().
9.3 DivAids: Diverse Aids
Collaboration diagram for DivAids: Diverse Aids:
DivAids Test
DivAids: Diverse Aids
DivAids Implementation
SysToMath Aids C++ Library
9.3.1 Detailed Description
Collection types, functions, function tempates, classes and class templates providing endian handling,buffer handling, byte iterator ranges, integral ranges, integral sets, condition variables, scoped locks andstring handling support.
The declarations of these utilities are all contained in the namespace stm.
Files
• file divaids.hppDeclarations for diverse aids.
Namespaces
• namespace stmNamespace for the SysToMath C++ Libraries.
• namespace stm::bufferNamespace containing all buffer related utilities.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.3 DivAids: Diverse Aids 24
• namespace stm::rectrlNamespace for regular expression matching issues.
Modules
• DivAids ImplementationImplementation of general utilities.
• DivAids TestDemonstration of the usage and tests of the implementation of the SysToMath Aids C++ Library moduleDivAids.
Classes
• class stm::byte_iterator_rangeByte iterator range class.
• class stm::integral_range< IntegralT, minVal, maxVal >
Class template representing a range of integral objects of type IntegralT constrained by the minimal andmaximal values minVal and maxVal.
• class stm::integral_set< IntegralRangeT, RangeSetT >
Class template integral_set is a set container representing a set of integral type objects constrained byminimal and maximal values wrapping a set of integral ranges.
• class stm::conditionCondition class.
• class stm::system_conditionSystem condition class.
• class stm::scoped_lockScoped lock class.
• class stm::system_scoped_lockSystem scoped lock class.
• struct stm::fmtflagsBase class of class template stm::hexfmt specifying format flags.
• class stm::hexfmt< UnsignedT, DefaultFlags >
Class template allowing to format the unsigned number held as hexadecimal string.
• class stm::hexfmt< ElemT ∗, DefaultFlags >
Class template partial specialization allowing to format the pointer held as hexadecimal string.
• class stm::fixedfmt< FloatT >
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.3 DivAids: Diverse Aids 25
Class template allowing to format the floating point number of type FloatT held on an output stream in fixedpoint notation using a specified precision.
• struct stm::space< CharT >
Unary predicate functor template determining if a CharT object is a white space as defined by the currentlocale.
• struct stm::nospace< CharT >
Unary predicate functor template determining if a CharT object is no white space as defined by the currentlocale.
Common unsigned and signed integer types
• typedef boost::uint8_t stm::byte• typedef boost::uint16_t stm::word• typedef boost::uint32_t stm::dword• typedef boost::uint64_t stm::qword• typedef boost::int8_t stm::int8• typedef boost::int16_t stm::int16• typedef boost::int32_t stm::int32• typedef boost::int64_t stm::int64• typedef boost::uint_t< sizeof(void ∗)∗CHAR_BIT >::leas stm::addrword )
Unsigned integer type capable of holding an address.
Endianness
• typedef boost::mpl::bool_< __BYTE_ORDER==__LITTLE_ENDIAN > stm::littleendianType being boost::mpl::true_ or boost::mpl::false_ depending on the host endianness.
• typedef boost::mpl::bool_< __BYTE_ORDER==__BIG_ENDIAN > stm::bigendianType being boost::mpl::true_ or boost::mpl::false_ depending on the host endianness.
• bool stm::hostlittleendian ()Returns true, if the host byte order is little-endian.
• bool stm::hostbigendian ()Returns true, if the host byte order is big-endian.
Predefined StmReCtrl Objects
The predefined StmReCtrl objects stm::rectrl::identity and stm::rectrl::tolower provide control and errorhandling for regular expressions (see Abstract Data Type StmRe).
• StmReCtrl stm::rectrl::identity = initialize ()• StmReCtrl stm::rectrl::tolower = NULL
Control and error handling of non-case-sensitive regular expressions.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.3 DivAids: Diverse Aids 26
Defines
• #define StmRectrlTry(envbuf) StmRectrlTryImpl_ (envbuf)std::logic_error exception based error control for normal and non-case-sensitive regular expressions con-trolled by the predefined StmReCtrl Objects stm::rectrl::identity and stm::rectrl::tolower.
Functions
• template<typename T>
T & stm::buffer::get (byte ∗ptr)Returns a reference to the T object beginning at byte address ptr.
• template<typename T>
const T & stm::buffer::get (const byte ∗ptr)Returns a constant reference to the T object beginning at byte address ptr.
• template<typename T>
T & stm::buffer::fetch (T &obj, const byte ∗ptr)Creates obj T as being a copy of the T object beginning at byte address ptr and returns a reference to it.
• template<typename T>
T & stm::buffer::swap (T &obj, typename boost::enable_if< boost::is_pod< T >, const byte ∗>::type ptr)
Creates obj T as being a byte swapped copy of the T object beginning at byte address ptr and returns areference to it.
• template<typename T>
T & stm::buffer::endianConvertIf (T &obj, typename boost::enable_if< boost::is_pod< T >, constbyte ∗ >::type ptr, bool convert)
Creates obj T as being an endian converted or unconverted copy of the T object beginning at byte addressptr and returns a reference to it.
• template<typename T>
T & stm::buffer::endianConvertIf (T &obj, typename boost::enable_if< boost::is_pod< T >, constbyte ∗ >::type ptr, boost::mpl::false_)
Creates obj T as being an unconverted copy of the T object beginning at byte address ptr and returns areference to it.
• template<typename T>
T & stm::buffer::endianConvertIf (T &obj, typename boost::enable_if< boost::is_pod< T >, constbyte ∗ >::type ptr, boost::mpl::true_)
Creates obj T as being an endian converted copy of the T object beginning at byte address ptr and returns areference to it.
• template<typename T>
T & stm::buffer::networkByteOrderConvert (T &obj, typename boost::enable_if< boost::is_pod< T>, const byte ∗ >::type ptr)
Creates obj T as being an endian converted or unconverted copy of the T object beginning at byte addressptr and returns a reference to it.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.3 DivAids: Diverse Aids 27
• template<typename T>
T stm::buffer::swapped (typename boost::enable_if< boost::is_pod< T >, T >::type value)Returns an object of type T being a byte swapped copy of the T object value.
• template<typename T>
T stm::buffer::endianConvertedIf (typename boost::enable_if< boost::is_pod< T >, T >::typevalue, bool convert)
Returns the endian converted or unconverted value of an object of type T.
• template<typename T>
T stm::buffer::endianConvertedIf (typename boost::enable_if< boost::is_pod< T >, T >::typevalue, boost::mpl::false_)
Returns the unconverted value of an object of type T.
• template<typename T>
T stm::buffer::endianConvertedIf (typename boost::enable_if< boost::is_pod< T >, T >::typevalue, boost::mpl::true_)
Returns the endian converted value of an object of type T.
• template<typename T>
T stm::buffer::networkByteOrderConverted (typename boost::enable_if< boost::is_pod< T >, T>::type value)
Returns the endian converted or unconverted value of an object of type T.
• template<typename T>
size_t stm::buffer::pad (typename boost::enable_if< has_pow2size< T >, size_t >::type offset)Returns the least number aligned to T not being less than offset.
• template<typename T>
byte ∗ stm::buffer::put (byte ∗ptr, const T &value)Stores a T object at byte address ptr and returns the byte address of the T object following that T object.
• template<class IStreamT, typename IntegralT, IntegralT minVal, IntegralT maxVal>IStreamT & stm::operator>> (IStreamT &is, integral_range< IntegralT, minVal, maxVal >&range)
Extract the integral range formatted as single integral number or as expression "first-last" with integralnumbers first < last enclosed in parentheses from the input stream is and store it in the integral range.
• template<class OStreamT, typename IntegralT, IntegralT minVal, IntegralT maxVal>OStreamT & stm::operator<< (OStreamT &os, const integral_range< IntegralT, minVal, maxVal >&range)
Insert the integral range held by range into the output stream os formatted as single decimal numbers orexpression "first-last" with decimal numbers first < last.
• template<class IStreamT, class IntegralRangeT, class RangeSetT>
IStreamT & stm::operator>> (IStreamT &is, integral_set< IntegralRangeT, RangeSetT > &set)Extract the integral ranges formatted as comma separated sequence of single integral numbers and/or ex-pressions "first-last" with integral numbers first < last enclosed in parentheses from the input stream is andstore them in the integral set.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.3 DivAids: Diverse Aids 28
• template<class OStreamT, class IntegralRangeT, class RangeSetT>
OStreamT & stm::operator<< (OStreamT &os, const integral_set< IntegralRangeT, RangeSetT >&set)
Insert the integral ranges held by the integral set into the output stream os formatted as comma separatedsequence of single decimal numbers and/or expressions "first-last" with decimal numbers first < last.
• template<class OStreamT, typename UnsignedT, dword DefaultFlags>OStreamT & stm::operator<< (OStreamT &os, const hexfmt< UnsignedT, DefaultFlags > &val)
Insert the value held by val into the output stream os as hexadecimal string formatted according to the flagsin effect.
• template<class OStreamT, typename ElemT, dword DefaultFlags>OStreamT & stm::operator<< (OStreamT &os, const hexfmt< ElemT ∗, DefaultFlags > &ptr)
Insert the value held by ptr into the output stream os as hexadecimal string according to the flags in effect.
• template<class OStreamT, typename FloatT>
OStreamT & stm::operator<< (OStreamT &os, const fixedfmt< FloatT > &val)Insert the value held by val into the output stream os in fixed point notation using the precision specified byval.
• template<typename ScalarT>
dword stm::nrOfSetBits (ScalarT value)Function template returning the number of set bits of a ScalarT value.
• template<class StringT>
StringT::size_type stm::clamped_offset (const StringT &str, typename StringT::size_type pos)Function template returning the offset pos of the string str clamped by its length.
• template<class StringT>
StringT::size_type stm::clamped_rest (const StringT &str, typename StringT::size_type pos)Function template returning the length of the string str beginning with offset pos clamped by the string’slength.
• template<class StringT>
StringT stm::trim_back (const StringT &str)Function template returning a copy of str.substr without trailing white space characters as defined by thecurrent locale.
• template<class StringT>
StringT stm::trim_back (const StringT &str, typename StringT::size_type pos)Function template returning a copy of str.substr (0, pos) without trailing white space characters as definedby the current locale.
• template<class StringT>
StringT::size_type stm::find_trim_back (const StringT &str)Function template returning trim_back (str).size ().
• template<class StringT>
StringT::size_type stm::find_trim_back (const StringT &str, typename StringT::size_type pos)Function template returning trim_back (str, pos).size ().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.3 DivAids: Diverse Aids 29
• template<class StringT>
StringT::size_type stm::find_token_end (const StringT &str, typename StringT::size_type pos=0)Function template returning the least index npos >= pos such that npos == str.length () or str [npos] iswhite space.
• template<class StringT>
StringT stm::trim_back (const StringT &str, const StringT &sepchars)Function template returning a copy of str without trailing characters from sepchars.
• template<class StringT>
StringT stm::trim_back (const StringT &str, const StringT &sepchars, typename StringT::size_typepos)
Function template returning a copy of str.substr (0, pos) without trailing characters from sepchars.
• template<class StringT>
StringT::size_type stm::find_trim_back (const StringT &str, const StringT &sepchars)Function template returning trim_back (str, sepchars).size ().
• template<class StringT>
StringT::size_type stm::find_trim_back (const StringT &str, const StringT &sepchars, typenameStringT::size_type pos)
Function template returning trim_back (str, sepchars, pos).size ().
• template<class StringT>
StringT::size_type stm::find_token_end (const StringT &str, const StringT &sepchars, typenameStringT::size_type pos=0)
Function template returning the least index npos >= pos with npos == str.length () or str [npos] is one ofthe characters of sepchars.
• template<class StringT>
StringT stm::trim_front (const StringT &str, typename StringT::size_type pos=0)Function template returning a copy of str.substr (pos) without leading white space characters as defined bythe current locale.
• template<class StringT>
StringT::size_type stm::find_trim_front (const StringT &str, typename StringT::size_type pos=0)Function template returning str.size () - trim_front (str, pos).size ().
• template<class StringT>
StringT stm::trim_front (const StringT &str, const StringT &sepchars, typename StringT::size_typepos=0)
Function template returning a copy of str.substr (pos) without leading characters from sepchars.
• template<class StringT>
StringT::size_type stm::find_trim_front (const StringT &str, const StringT &sepchars, typenameStringT::size_type pos=0)
Function template returning str.size () - trim_front (str, sepchars, pos).size ().
• template<class StringT>
StringT stm::trim (const StringT &str)Function template returning a copy of str without leading and trailing white space characters as defined bythe current locale.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.3 DivAids: Diverse Aids 30
• template<class StringT>
StringT stm::trim (const StringT &str, const StringT &sepchars)Function template returning a copy of str without leading and trailing characters from sepchars.
9.3.2 Define Documentation
9.3.2.1 #define StmRectrlTry(envbuf) StmRectrlTryImpl_ (envbuf)
std::logic_error exception based error control for normal and non-case-sensitive regular expressions con-trolled by the predefined StmReCtrl Objects stm::rectrl::identity and stm::rectrl::tolower.
To establich such an error control choose a name, say ErrorEnv, for the macro argument envbuf andplace a call
StmRectrlTry (ErrorEnv)
at the beginning of a try block inside which regular expressions (see Abstract Data Type StmRe) are useddirectly or implicitely (by using functions or classes using them in their implementation). Then all errorsoccurring in regular expression functions controlled by one of the StmReCtrl objects stm::rectrl::identityor stm::rectrl::tolower throw a std::logic_error exception with the error reason as text. Unless the macroNDEBUG is defined, that text is also output on stderr.
Examples:
filesystest.cpp.
Definition at line 446 of file divaids.hpp.
Referenced by main().
9.3.3 Typedef Documentation
9.3.3.1 typedef boost::uint8_t stm::byte
Examples:
sudoku.cpp.
Definition at line 112 of file divaids.hpp.
9.3.3.2 typedef boost::uint16_t stm::word
Examples:
sudoku.cpp.
Definition at line 113 of file divaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.3 DivAids: Diverse Aids 31
9.3.3.3 typedef boost::uint32_t stm::dword
Examples:
filesystest.cpp, smartptrtest.cpp, and sudoku.cpp.
Definition at line 114 of file divaids.hpp.
9.3.3.4 typedef boost::uint64_t stm::qword
Definition at line 115 of file divaids.hpp.
9.3.3.5 typedef boost::int8_t stm::int8
Definition at line 116 of file divaids.hpp.
9.3.3.6 typedef boost::int16_t stm::int16
Definition at line 117 of file divaids.hpp.
9.3.3.7 typedef boost::int32_t stm::int32
Definition at line 118 of file divaids.hpp.
9.3.3.8 typedef boost::int64_t stm::int64
Definition at line 119 of file divaids.hpp.
9.3.3.9 typedef boost::uint_t<sizeof (void ∗) ∗ CHAR_BIT>::leas stm::addrword)
Unsigned integer type capable of holding an address.
Definition at line 124 of file divaids.hpp.
9.3.3.10 typedef boost::mpl::bool_<__BYTE_ORDER == __LITTLE_ENDIAN>stm::littleendian
Type being boost::mpl::true_ or boost::mpl::false_ depending on the host endianness.
Definition at line 134 of file divaids.hpp.
9.3.3.11 typedef boost::mpl::bool_<__BYTE_ORDER == __BIG_ENDIAN> stm::bigendian
Type being boost::mpl::true_ or boost::mpl::false_ depending on the host endianness.
Definition at line 139 of file divaids.hpp.
9.3.4 Function Documentation
9.3.4.1 bool stm::hostlittleendian () [inline]
Returns true, if the host byte order is little-endian.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.3 DivAids: Diverse Aids 32
Deprecated
use stm::littleendian () instead.
Definition at line 1390 of file divxaids.hpp.
9.3.4.2 bool stm::hostbigendian () [inline]
Returns true, if the host byte order is big-endian.
Deprecated
use stm::bigendian () instead.
Definition at line 1393 of file divxaids.hpp.
9.3.4.3 template<typename T> T & stm::buffer::get (byte ∗ ptr) [inline]
Returns a reference to the T object beginning at byte address ptr.
Definition at line 1411 of file divxaids.hpp.
9.3.4.4 template<typename T> const T & stm::buffer::get (const byte ∗ ptr) [inline]
Returns a constant reference to the T object beginning at byte address ptr.
Definition at line 1418 of file divxaids.hpp.
9.3.4.5 template<typename T> T & stm::buffer::fetch (T & obj, const byte ∗ ptr) [inline]
Creates obj T as being a copy of the T object beginning at byte address ptr and returns a reference to it.
T must be assignable.
Definition at line 1425 of file divxaids.hpp.
9.3.4.6 template<typename T> T & stm::buffer::swap (T & obj, typename boost::enable_if<boost::is_pod< T >, const byte ∗ >::type ptr) [inline]
Creates obj T as being a byte swapped copy of the T object beginning at byte address ptr and returns areference to it.
This function template is instantiated only for POD types T.
Definition at line 1433 of file divxaids.hpp.
9.3.4.7 template<typename T> T & stm::buffer::endianConvertIf (T & obj, typenameboost::enable_if< boost::is_pod< T >, const byte ∗ >::type ptr, bool convert) [inline]
Creates obj T as being an endian converted or unconverted copy of the T object beginning at byte addressptr and returns a reference to it.
The conversion takes place, if convert is true. This function template is instantiated only for POD types T.
Definition at line 1448 of file divxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.3 DivAids: Diverse Aids 33
9.3.4.8 template<typename T> T & stm::buffer::endianConvertIf (T & obj, typenameboost::enable_if< boost::is_pod< T >, const byte ∗ >::type ptr, boost::mpl::false_) [inline]
Creates obj T as being an unconverted copy of the T object beginning at byte address ptr and returns areference to it.
This function template is instantiated only for POD types T.
Definition at line 1464 of file divxaids.hpp.
9.3.4.9 template<typename T> T & stm::buffer::endianConvertIf (T & obj, typenameboost::enable_if< boost::is_pod< T >, const byte ∗ >::type ptr, boost::mpl::true_) [inline]
Creates obj T as being an endian converted copy of the T object beginning at byte address ptr and returnsa reference to it.
This function template is instantiated only for POD types T.
Definition at line 1477 of file divxaids.hpp.
9.3.4.10 template<typename T> T & stm::buffer::networkByteOrderConvert (T & obj, typenameboost::enable_if< boost::is_pod< T >, const byte ∗ >::type ptr) [inline]
Creates obj T as being an endian converted or unconverted copy of the T object beginning at byte addressptr and returns a reference to it.
The conversion takes place, if the host byte order is not the network byte order (big endian). This functiontemplate is instantiated only for POD types T.
Definition at line 1490 of file divxaids.hpp.
9.3.4.11 template<typename T> T stm::buffer::swapped (typename boost::enable_if< boost::is_-pod< T >, T >::type value) [inline]
Returns an object of type T being a byte swapped copy of the T object value.
This function template is instantiated only for POD types T.
Definition at line 1501 of file divxaids.hpp.
9.3.4.12 template<typename T> T stm::buffer::endianConvertedIf (typename boost::enable_if<boost::is_pod< T >, T >::type value, bool convert) [inline]
Returns the endian converted or unconverted value of an object of type T.
The conversion takes place, if convert is true. This function template is instantiated only for POD types T.
Definition at line 1515 of file divxaids.hpp.
9.3.4.13 template<typename T> T stm::buffer::endianConvertedIf (typename boost::enable_if<boost::is_pod< T >, T >::type value, boost::mpl::false_) [inline]
Returns the unconverted value of an object of type T.
This function template is instantiated only for POD types T.
Definition at line 1530 of file divxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.3 DivAids: Diverse Aids 34
9.3.4.14 template<typename T> T stm::buffer::endianConvertedIf (typename boost::enable_if<boost::is_pod< T >, T >::type value, boost::mpl::true_) [inline]
Returns the endian converted value of an object of type T.
This function template is instantiated only for POD types T.
Definition at line 1542 of file divxaids.hpp.
9.3.4.15 template<typename T> T stm::buffer::networkByteOrderConverted (typenameboost::enable_if< boost::is_pod< T >, T >::type value) [inline]
Returns the endian converted or unconverted value of an object of type T.
The conversion takes place, if the host byte order is not the network byte order (big endian). This functiontemplate is instantiated only for POD types T.
Definition at line 1554 of file divxaids.hpp.
9.3.4.16 template<typename T> size_t stm::buffer::pad (typename boost::enable_if< has_-pow2size< T >, size_t >::type offset) [inline]
Returns the least number aligned to T not being less than offset.
This function template is instantiated only for types T with a power of two as sizeof (T).
Definition at line 1565 of file divxaids.hpp.
9.3.4.17 template<typename T> byte ∗ stm::buffer::put (byte ∗ ptr, const T & value) [inline]
Stores a T object at byte address ptr and returns the byte address of the T object following that T object.
Definition at line 1575 of file divxaids.hpp.
9.3.4.18 template<class IStreamT, typename IntegralT, IntegralT minVal, IntegralT maxVal>IStreamT & stm::operator>> (IStreamT & is, integral_range< IntegralT, minVal, maxVal > &range) [inline]
Extract the integral range formatted as single integral number or as expression "first-last" with integralnumbers first < last enclosed in parentheses from the input stream is and store it in the integral range.
Definition at line 1890 of file divxaids.hpp.
References stm::integral_range< IntegralT, minVal, maxVal >::assign().
9.3.4.19 template<class OStreamT, typename IntegralT, IntegralT minVal, IntegralT maxVal>OStreamT & stm::operator<< (OStreamT & os, const integral_range< IntegralT, minVal, max-Val > & range) [inline]
Insert the integral range held by range into the output stream os formatted as single decimal numbers orexpression "first-last" with decimal numbers first < last.
Definition at line 1906 of file divxaids.hpp.
References os, and stm::local::xIntegral_range< IntegralT, minVal, maxVal >::range.
9.3.4.20 template<class IStreamT, class IntegralRangeT, class RangeSetT> IStreamT &stm::operator>> (IStreamT & is, integral_set< IntegralRangeT, RangeSetT > & set) [inline]
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.3 DivAids: Diverse Aids 35
Extract the integral ranges formatted as comma separated sequence of single integral numbers and/or ex-pressions "first-last" with integral numbers first < last enclosed in parentheses from the input stream is andstore them in the integral set.
Definition at line 2774 of file divxaids.hpp.
9.3.4.21 template<class OStreamT, class IntegralRangeT, class RangeSetT> OStreamT &stm::operator<< (OStreamT & os, const integral_set< IntegralRangeT, RangeSetT > & set)[inline]
Insert the integral ranges held by the integral set into the output stream os formatted as comma separatedsequence of single decimal numbers and/or expressions "first-last" with decimal numbers first < last.
Definition at line 2790 of file divxaids.hpp.
References stm::integral_set< IntegralRangeT, RangeSetT >::beginrange(), os, and stm::integral_set< In-tegralRangeT, RangeSetT >::size().
9.3.4.22 template<class OStreamT, typename UnsignedT, dword DefaultFlags> OStreamT &stm::operator<< (OStreamT & os, const hexfmt< UnsignedT, DefaultFlags > & val) [inline]
Insert the value held by val into the output stream os as hexadecimal string formatted according to the flagsin effect.
Definition at line 3177 of file divxaids.hpp.
References stm::fmtflags::LowerCase, and os.
9.3.4.23 template<class OStreamT, typename ElemT, dword DefaultFlags> OStreamT &stm::operator<< (OStreamT & os, const hexfmt< ElemT ∗, DefaultFlags > & ptr) [inline]
Insert the value held by ptr into the output stream os as hexadecimal string according to the flags in effect.
Definition at line 3283 of file divxaids.hpp.
References stm::fmtflags::LowerCase, and os.
9.3.4.24 template<class OStreamT, typename FloatT> OStreamT & stm::operator<< (OStreamT& os, const fixedfmt< FloatT > & val) [inline]
Insert the value held by val into the output stream os in fixed point notation using the precision specifiedby val.
Definition at line 3332 of file divxaids.hpp.
References os.
9.3.4.25 template<typename ScalarT> dword stm::nrOfSetBits (ScalarT value) [inline]
Function template returning the number of set bits of a ScalarT value.
Definition at line 3350 of file divxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.3 DivAids: Diverse Aids 36
9.3.4.26 template<class StringT> StringT::size_type stm::clamped_offset (const StringT & str,typename StringT::size_type pos) [inline]
Function template returning the offset pos of the string str clamped by its length.
Definition at line 3387 of file divxaids.hpp.
Referenced by stm::find_token_end(), stm::find_trim_front(), and stm::trim_front().
9.3.4.27 template<class StringT> StringT::size_type stm::clamped_rest (const StringT & str,typename StringT::size_type pos) [inline]
Function template returning the length of the string str beginning with offset pos clamped by the string’slength.
Definition at line 3398 of file divxaids.hpp.
Referenced by stm::find_trim_back(), and stm::trim_back().
9.3.4.28 template<class StringT> StringT stm::trim_back (const StringT & str) [inline]
Function template returning a copy of str.substr without trailing white space characters as defined by thecurrent locale.
Definition at line 3409 of file divxaids.hpp.
Referenced by stm::trim(), and stm::trim_back().
9.3.4.29 template<class StringT> StringT stm::trim_back (const StringT & str, typenameStringT::size_type pos) [inline]
Function template returning a copy of str.substr (0, pos) without trailing white space characters as definedby the current locale.
Definition at line 3419 of file divxaids.hpp.
References stm::clamped_rest().
9.3.4.30 template<class StringT> StringT::size_type stm::find_trim_back (const StringT & str)[inline]
Function template returning trim_back (str).size ().
Definition at line 3437 of file divxaids.hpp.
Referenced by stm::find_trim_back(), and stm::basic_logger< StringT, stdIndent, lineLength, lockingPol-icy >::operator()().
9.3.4.31 template<class StringT> StringT::size_type stm::find_trim_back (const StringT & str,typename StringT::size_type pos) [inline]
Function template returning trim_back (str, pos).size ().
Definition at line 3447 of file divxaids.hpp.
References stm::clamped_rest().
9.3.4.32 template<class StringT> StringT::size_type stm::find_token_end (const StringT & str,typename StringT::size_type pos = 0) [inline]
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.3 DivAids: Diverse Aids 37
Function template returning the least index npos >= pos such that npos == str.length () or str [npos] iswhite space.
Definition at line 3462 of file divxaids.hpp.
References stm::clamped_offset().
Referenced by stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::operator()().
9.3.4.33 template<class StringT> StringT stm::trim_back (const StringT & str, const StringT &sepchars) [inline]
Function template returning a copy of str without trailing characters from sepchars.
Definition at line 3477 of file divxaids.hpp.
References stm::trim_back().
9.3.4.34 template<class StringT> StringT stm::trim_back (const StringT & str, const StringT &sepchars, typename StringT::size_type pos) [inline]
Function template returning a copy of str.substr (0, pos) without trailing characters from sepchars.
Definition at line 3488 of file divxaids.hpp.
9.3.4.35 template<class StringT> StringT::size_type stm::find_trim_back (const StringT & str,const StringT & sepchars) [inline]
Function template returning trim_back (str, sepchars).size ().
Definition at line 3503 of file divxaids.hpp.
References stm::find_trim_back().
9.3.4.36 template<class StringT> StringT::size_type stm::find_trim_back (const StringT & str,const StringT & sepchars, typename StringT::size_type pos) [inline]
Function template returning trim_back (str, sepchars, pos).size ().
Definition at line 3514 of file divxaids.hpp.
9.3.4.37 template<class StringT> StringT::size_type stm::find_token_end (const StringT & str,const StringT & sepchars, typename StringT::size_type pos = 0) [inline]
Function template returning the least index npos >= pos with npos == str.length () or str [npos] is one ofthe characters of sepchars.
Definition at line 3526 of file divxaids.hpp.
References stm::clamped_offset().
9.3.4.38 template<class StringT> StringT stm::trim_front (const StringT & str, typenameStringT::size_type pos = 0) [inline]
Function template returning a copy of str.substr (pos) without leading white space characters as defined bythe current locale.
Definition at line 3541 of file divxaids.hpp.
References stm::clamped_offset().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.3 DivAids: Diverse Aids 38
Referenced by stm::trim().
9.3.4.39 template<class StringT> StringT::size_type stm::find_trim_front (const StringT & str,typename StringT::size_type pos = 0) [inline]
Function template returning str.size () - trim_front (str, pos).size ().
Definition at line 3559 of file divxaids.hpp.
References stm::clamped_offset().
Referenced by stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::operator()().
9.3.4.40 template<class StringT> StringT stm::trim_front (const StringT & str, const StringT &sepchars, typename StringT::size_type pos = 0) [inline]
Function template returning a copy of str.substr (pos) without leading characters from sepchars.
Definition at line 3574 of file divxaids.hpp.
References stm::clamped_offset().
9.3.4.41 template<class StringT> StringT::size_type stm::find_trim_front (const StringT & str,const StringT & sepchars, typename StringT::size_type pos = 0) [inline]
Function template returning str.size () - trim_front (str, sepchars, pos).size ().
Definition at line 3588 of file divxaids.hpp.
References stm::clamped_offset().
9.3.4.42 template<class StringT> StringT stm::trim (const StringT & str) [inline]
Function template returning a copy of str without leading and trailing white space characters as defined bythe current locale.
Definition at line 3599 of file divxaids.hpp.
References stm::trim_back(), and stm::trim_front().
Referenced by stm::filespeclist::append(), stm::filespec::beginsWithRootDirectory(),stm::filespec::beginsWithRootName(), stm::brace_expand(), stm::tools::Ct::getCurrentBranch(),stm::filefind< PathContainerT >::insert(), stm::filespec::isAbsolute(), stm::tools::CtOperation::isLabel(),and stm::tools::Ct::ArgList::operator+=().
9.3.4.43 template<class StringT> StringT stm::trim (const StringT & str, const StringT &sepchars) [inline]
Function template returning a copy of str without leading and trailing characters from sepchars.
Definition at line 3606 of file divxaids.hpp.
References stm::trim_back(), and stm::trim_front().
9.3.5 Variable Documentation
9.3.5.1 StmReCtrl stm::rectrl::identity = initialize ()
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.4 FilesysAids: File System Aids 39
Control and error handling of normal regular expressions. Use stm::rectrl::identity as StmReCtrl argumentof regular expression functions (see Abstract Data Type StmRe).
Definition at line 108 of file divaids.cpp.
Referenced by stm::local::xfilespec::initialize(), stm::local::xIntegral_set< IntegralRangeT, Range-SetT >::initialize(), stm::local::xIntegral_range< IntegralT, minVal, maxVal >::initialize(),stm::rectrl::initialize(), and stm::local::BraceExpand::re().
9.3.5.2 StmReCtrl stm::rectrl::tolower = NULL
Control and error handling of non-case-sensitive regular expressions.
Use stm::rectrl::tolower as StmReCtrl argument of regular expression functions (see Abstract Data TypeStmRe).
Definition at line 107 of file divaids.cpp.
Referenced by stm::local::xfilespec::appChar(), stm::rectrl::initialize(), stm::operator<(), andstm::operator==().
9.4 FilesysAids: File System Aids
Collaboration diagram for FilesysAids: File System Aids:
FilesysAids Test
FilesysAids Implementation
FilesysAids: File System AidsSysToMath Aids C++ Library
9.4.1 Detailed Description
Collection of some file system related classes and class templates for path handling, bash-like file nameglobbing, POSIX-conform file spec expansion, and file and file range input scanning.
The declarations of these utilities are all contained in the namespace stm.
Files
• file filesysaids.hppDeclarations for file system aids.
Modules
• FilesysAids ImplementationImplementation of file system related utilities.
• FilesysAids TestDemonstration of the usage and tests of the implementation of the SysToMath Aids C++ Library moduleFilesysAids.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.4 FilesysAids: File System Aids 40
Classes
• class stm::pstringClass to represent a std::string with a case unsensitive order relation on Windows systems else with a casesensitive order relation used for file system element naming.
• class stm::numpstringClass to represent a file system name with a case unsensitive order relation on Windows systems else with acase case sensitive order relation collating numerically correct.
• class stm::path< NameT >
Class template path refining boost::filesystem::path.
• class stm::readablefile< NameT >
Class template representing a file named by its NameT subobject which is guaranteed to be accessible forreading and holding its size at the time of definition.
• class stm::inputrange< FileRangeT, bufSize >
Class template representing a range of input files.
• class stm::inputseq< InputFileT, bufSize >
• class stm::inputrange_iterator< BufRangeT, ContextT >
Input iterator class template reading successive byte ranges from the input range of the ContextT object forwhich it was constructed.
• class stm::filespecClass to specify file system element names.
• class stm::filespeclistList class of filespec objects.
• class stm::filefind< PathContainerT >
Container class representing existing file system elements defined by a file spec using pattern matchingbased file name expansion.
Typedefs
• typedef numpstring stm::numpath• typedef readablefile< numpstring > stm::sizedfile
For cenvenience sizedfile is a synonym for readablefile<numpstring>.
Functions
• int stm::makedir (const boost::filesystem::path &path)Make directory path.
• int stm::getkey ()Read one character from the console and return it as int on success, else return -1 and set the variable errnoaccording to the error.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.4 FilesysAids: File System Aids 41
• bool stm::isWin32Executable (const std::string &path)The function isWin32Executable returns true, if path (which may not exist) designates a WIN32 executablefile (case unsensitively the extension ’.exe’, ’.dll’, ’.msi’ or ’.com’).
• template<class SequenceT>
SequenceT & stm::brace_expand (SequenceT &result, const std::string &str, bool allowCom-maSep=false)
The function template brace_expand appends the maybe brace expanded words of str to the sequence resultand returns result.
• bool stm::designateSame (const pstring &p1, const pstring &p2)Return true, if the pstring object p1 designates the same file system element than that p2 designates.
• bool stm::operator< (const pstring &p1, const pstring &p2)Order relation for pstring objects.
• bool stm::operator== (const pstring &p1, const pstring &p2)Equality relation for pstring objects.
• bool stm::operator< (const numpstring &p1, const numpstring &p2)Order relation for numpstring objects.
• bool stm::operator== (const numpstring &p1, const numpstring &p2)Equality relation for numpstring objects.
• template<class NameT>
void stm::swap (readablefile< NameT > &rf1, readablefile< NameT > &rf2)Swaps the readablefile objects rf1 and rf2.
• template<class BufRangeT, class ContextT>
bool stm::operator== (const inputrange_iterator< BufRangeT, ContextT > &x, const inputrange_-iterator< BufRangeT, ContextT > &y)
Equality operator.
• template<class BufRangeT, class ContextT>
bool stm::operator!= (const inputrange_iterator< BufRangeT, ContextT > &x, const inputrange_-iterator< BufRangeT, ContextT > &y)
Inequality operator.
9.4.2 Typedef Documentation
9.4.2.1 typedef numpstring stm::numpath
Deprecated
For historical reasons numpath is an alternative name for numpstring.
Definition at line 226 of file filesysaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.4 FilesysAids: File System Aids 42
9.4.2.2 typedef readablefile<numpstring> stm::sizedfile
For cenvenience sizedfile is a synonym for readablefile<numpstring>.
Definition at line 617 of file filesysaids.hpp.
9.4.3 Function Documentation
9.4.3.1 int stm::makedir (const boost::filesystem::path & path)
Make directory path.
Returns 0 on success, else -1 and the variable errno set according to the error.
Definition at line 101 of file filesysaids.cpp.
9.4.3.2 int stm::getkey () [inline]
Read one character from the console and return it as int on success, else return -1 and set the variable errnoaccording to the error.
Definition at line 2433 of file filesysxaids.hpp.
References stmGetkey().
9.4.3.3 bool stm::isWin32Executable (const std::string & path) [inline]
The function isWin32Executable returns true, if path (which may not exist) designates a WIN32 executablefile (case unsensitively the extension ’.exe’, ’.dll’, ’.msi’ or ’.com’).
Definition at line 2439 of file filesysxaids.hpp.
9.4.3.4 template<class SequenceT> SequenceT & stm::brace_expand (SequenceT & result, conststd::string & str, bool allowCommaSep = false) [inline]
The function template brace_expand appends the maybe brace expanded words of str to the sequence resultand returns result.
In order to distinguish from extended regular expression file specs, only words not beginning with ’(’ arebrace expanded as defined for the bash shell. On Windows systems instead of ’\’ the character ’%’ is takento escape the brace expansion operators ’{’, ’,’ and ’}’. By default any non-empty sequence of whitspaceserves as word delimiter. If allowCommaSep is true, also unescaped commas not included in pairs of bracesalso belong to these word delimiters. For SequenceT any container having a method push_back is suitable.As the implementation of brace_expand uses regular expressions (see Abstract Data Type StmRe), for itserror control the macro StmRectrlTry can be used.
Definition at line 2451 of file filesysxaids.hpp.
References stm::filespec::containsUnescapedBrace(), stm::filespec::findFirstOfUnescaped(),stm::filespec::findUnescapedParentheses(), stm::local::BraceExpand::re(), stmReMatch(), and stm::trim().
Referenced by stm::tools::CtOperation::addLabels(), stm::filespeclist::append(), and stm::filefind< Path-ContainerT >::insert().
9.4.3.5 bool stm::designateSame (const pstring & p1, const pstring & p2) [inline]
Return true, if the pstring object p1 designates the same file system element than that p2 designates.
Definition at line 1235 of file filesysxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.4 FilesysAids: File System Aids 43
References stm::pstring::designatesSame().
9.4.3.6 bool stm::operator< (const pstring & p1, const pstring & p2) [inline]
Order relation for pstring objects.
Definition at line 1241 of file filesysxaids.hpp.
References stm::rectrl::tolower.
9.4.3.7 bool stm::operator== (const pstring & p1, const pstring & p2) [inline]
Equality relation for pstring objects.
Definition at line 1264 of file filesysxaids.hpp.
References stm::rectrl::tolower.
9.4.3.8 bool stm::operator< (const numpstring & p1, const numpstring & p2) [inline]
Order relation for numpstring objects.
Definition at line 1299 of file filesysxaids.hpp.
9.4.3.9 bool stm::operator== (const numpstring & p1, const numpstring & p2) [inline]
Equality relation for numpstring objects.
Definition at line 1324 of file filesysxaids.hpp.
9.4.3.10 template<class NameT> void stm::swap (readablefile< NameT > & rf1, readablefile<NameT > & rf2) [inline]
Swaps the readablefile objects rf1 and rf2.
Definition at line 1753 of file filesysxaids.hpp.
References stm::readablefile< NameT >::swap().
Referenced by stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange>::load().
9.4.3.11 template<class BufRangeT, class ContextT> bool stm::operator== (const inputrange_-iterator< BufRangeT, ContextT > & x, const inputrange_iterator< BufRangeT, ContextT > & y)[inline]
Equality operator.
Definition at line 2120 of file filesysxaids.hpp.
9.4.3.12 template<class BufRangeT, class ContextT> bool stm::operator!= (const inputrange_-iterator< BufRangeT, ContextT > & x, const inputrange_iterator< BufRangeT, ContextT > &y) [inline]
Inequality operator.
Definition at line 2131 of file filesysxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.5 GenCRC: Generic CRC Generation 44
9.5 GenCRC: Generic CRC Generation
Collaboration diagram for GenCRC: Generic CRC Generation:
GenCRC: Generic CRC Generation
GenCRC Test
GenCRC Implementation
SysToMath Aids C++ Library
9.5.1 Detailed Description
Declaration of the class template stm::crc used to generate cyclic redundancy check (CRC) remainderpolynomials of template type RemPolT over buffers of byte-like objects.
In the following class template documentation the international standard C++ISO/IEC 14882:2003(E) iscited in the form of parenthesized expressions with the same syntax and semantics as inside this interna-tional standard itself.
Files
• file gencrc.hppDeclarations of generic CRC remainder polynomial generation.
Modules
• GenCRC ImplementationImplementation of the class template stm::crc used to generate cyclic redundancy check (CRC) remainderpolynomials of template type RemPolT over buffers of byte-like objects.
• GenCRC TestDemonstration of the usage and tests of the implementation of the SysToMath Aids C++ Library moduleGenCRC.
Classes
• class stm::crc< RemPolT >
Class template crc provides a means to generate cyclic redundancy check (CRC) remainder polynomials oftype RemPolT over buffers of byte-like objects.
9.5.1.1 Examples of GenCRC Usage
#include <assert.h>#include <string>#include <stm/gencrc.hpp>
// Define CRC types.assert (sizeof (unsigned short) == 2);assert (sizeof (unsigned int) == 4);typedef stm::crc<unsigned short> crc16;
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.5 GenCRC: Generic CRC Generation 45
typedef stm::crc<unsigned int> crc32;
// Buffers to check.std::string hello = "Hello ";std::string world = "world!";
// CRC16 generator polynomial as designated by CCITT (Comitonsultatif// International Tgraphique et Tphonique).crc16 ccittcheck (0x1021, 0xffff);
// CCITT CRC16 check sum of the concatenation of the strings hello and// world.unsigned short ccittCheckSum =
ccittcheck(
ccittcheck(
hello.begin (),hello.end ()
),world.c_str (),world.size ()
);
// CRC16 generator polynomial as used by BISYNCH and ARC.crc16 crc16check (0x8005, 0, true);
// CRC16 check sum of the concatenation of the strings hello and world.unsigned short crc16CheckSum =
crc16check(
crc16check(
hello.begin (),hello.end ()
),world.c_str (),world.size (),true
);
// CRC16 generator polynomial as used by XMODEM.crc16 xmodemcheck (0x8408, 0, true);
// XMODEM check sum of the concatenation of the strings hello and world.unsigned short xmodemCheckSum =
xmodemcheck(
xmodemcheck(
hello.begin (),hello.end ()
),world.c_str (),world.size (),true
);
// Commonly used CRC32 generator polynomial.crc32 crc32check (0x04C11DB7, 0xFFFFFFFF, true);
// CRC32 check sum of the concatenation of the strings hello and world.unsigned int crc32CheckSum =
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.6 DebugAids Implementation 46
crc32check(
crc32check(
hello.begin (),hello.end ()
),world.c_str (),world.size (),true,0xFFFFFFFF
);
9.6 DebugAids Implementation
Collaboration diagram for DebugAids Implementation:
DebugAids Implementation DivAids Implementationstm::localDebugAids: Debugging Support Facilities
9.6.1 Detailed Description
Implementation of the debugging support facilities.
Files
• file debugxaids.hppImplementation of the debugging support facilities.
• file debugaids.cppImplementation of the debugging support facilities.
Namespaces
• namespace stm::localImplementation namespace for the SysToMath C++ Libraries.
Defines
• #define StmDebugAidsErrmsgImpl_(msg) std::string (stm::local::errmsg (__FILE__, __LINE__)<< msg)
Implementation macro for StmDebugAidsErrmsg.
• #define StmDebugAidsVerifyImpl_(cond)Implementation macro for StmDebugAidsVerify.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.6 DebugAids Implementation 47
Variables
• static bool stm::local::syslogPerror• static std::string stm::local::syslogProg
9.6.2 Define Documentation
9.6.2.1 #define StmDebugAidsErrmsgImpl_(msg) std::string (stm::local::errmsg (__FILE__, __-LINE__) << msg)
Implementation macro for StmDebugAidsErrmsg.
Definition at line 107 of file debugxaids.hpp.
9.6.2.2 #define StmDebugAidsVerifyImpl_(cond)
Value:
if (!stm::local::errmsg::active && ! (cond)) do \{ \
std::cerr << StmDebugAidsErrmsgImpl_ ("Condition ’" #cond "’ failed.") << std::endl; \std::cerr << "Press ’i’ to ignore, or any other key to abort: "; \int ch = stmGetkey (fileno (stdin)); \std::cerr << char (ch) << std::endl; \switch (ch) \{ \case ’i’: \case ’I’: \
stm::local::errmsg::active = false; \break; \
default: \stm::local::errmsg::active = false; \throw std::logic_error (StmDebugAidsErrmsgImpl_ ("Condition ’" #cond "’ failed.")); \break; \
} \} while (0)
Implementation macro for StmDebugAidsVerify.
Definition at line 139 of file debugxaids.hpp.
9.6.3 Variable Documentation
9.6.3.1 bool stm::local::syslogPerror [static]
Definition at line 96 of file debugaids.cpp.
Referenced by stm::initSyslog(), and stm::syslog().
9.6.3.2 std::string stm::local::syslogProg [static]
Definition at line 97 of file debugaids.cpp.
Referenced by stm::initSyslog(), and stm::syslog().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.7 DivAids Implementation 48
9.7 DivAids Implementation
Collaboration diagram for DivAids Implementation:
DivAids: Diverse Aids DivAids Implementation DebugAids Implementationstm::local
9.7.1 Detailed Description
Implementation of general utilities.
Files
• file divxaids.hppImplementation of diverse aids.
• file divaids.cppImplementation of general utilities.
Namespaces
• namespace stm::localImplementation namespace for the SysToMath C++ Libraries.
Classes
• class stm::local::xIntegral_range< IntegralT, minVal, maxVal >
stm::integral_range implementation base class template.
• class stm::local::xIntegral_set< IntegralRangeT, RangeSetT >
stm::integral_set implementation base class template.
• class stm::local::xconditionstm::condition implementation base class.
• class stm::local::xsystem_conditionstm::system_condition implementation base class.
• class stm::local::xscoped_lockstm::scoped_lock implementation base class.
• class stm::local::xsystem_scoped_lockstm::system_scoped_lock implementation base class.
• class stm::local::xhexfmt< UnsignedT >
stm::hexfmt implementation base class template.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.7 DivAids Implementation 49
• class stm::local::xfixedfmt< FloatT >
stm::fixedfmt implementation base class template.
Defines
• #define StmRectrlTryImpl_(envbuf)Implementation macro for StmRectrlTry.
Functions
• StmReCtrl stm::rectrl::initialize ()stm::rectrl initialization.
• stm::local::xIntegral_range::xIntegral_range (integral_type fromNumber, integral_type toNumber)• impl & stm::local::xIntegral_range::match (const std::string &rstr, size_t fmtFlags)• static int stm::local::xIntegral_range::getIntegral (boost::mpl::false_, const std::string &vstr,
integral_type &val)If vstr designates an integral_type object, that object is assigned to val and 0 is returned, else 1.
• static int stm::local::xIntegral_range::getIntegral (boost::mpl::true_, const std::string &vstr,integral_type &val)
If vstr designates an integral_type object, that object is assigned to val and 0 is returned, else 1.
• static StmRe stm::local::xIntegral_range::initialize ()• static int stm::local::xIntegral_range::optassign (StmMtcFctCmd cmd, StmReMtc reMtc)• static int stm::local::xIntegral_range::assign (StmMtcFctCmd cmd, StmReMtc reMtc)• stm::local::xIntegral_set::integral_iterator::integral_iterator ()• bool stm::local::xIntegral_set::integral_iterator::operator== (const integral_iterator &other) const• bool stm::local::xIntegral_set::integral_iterator::operator!= (const integral_iterator &other) const• integral_type stm::local::xIntegral_set::integral_iterator::operator ∗ () const• integral_iterator & stm::local::xIntegral_set::integral_iterator::operator++ ()• const integral_iterator & stm::local::xIntegral_set::integral_iterator::operator++ (int)• integral_iterator & stm::local::xIntegral_set::integral_iterator::operator– ()• const integral_iterator & stm::local::xIntegral_set::integral_iterator::operator– (int)• stm::local::xIntegral_set::integral_iterator::integral_iterator (const impl ∗parent, typename
impl::const_iterator rit, integral_type value)• stm::local::xIntegral_set::xIntegral_set ()• void stm::local::xIntegral_set::adjust () throw ()
Adjust this object to be consistent.
• void stm::local::xIntegral_set::verify () constVerify, if this object is consistent. Only active in debug version.
• integral_iterator stm::local::xIntegral_set::mkIterator (const_iterator rit, integral_type value)• iterator stm::local::xIntegral_set::rangeOf (integral_type number, bool includeTo)
Return the iterator pointing to the range the number belongs to, or end(), if there is no such range.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.7 DivAids Implementation 50
• const_iterator stm::local::xIntegral_set::rangeOf (integral_type number, bool includeTo) const• impl & stm::local::xIntegral_set::match (const std::string &rstr, size_t fmtFlags)• static StmRe stm::local::xIntegral_set::initialize ()• static int stm::local::xIntegral_set::setassign (StmMtcFctCmd cmd, StmReMtc reMtc)• bool stm::local::xcondition::wait_ (scoped_lock &lock, int64 absTimeMs)• bool stm::local::xsystem_condition::wait_ (system_scoped_lock &lock, int64 absTimeMs)
Variables
• static StmRe stm::local::xIntegral_range::optrange = NULL• static StmRe stm::local::xIntegral_range::range• static StmRe stm::local::xIntegral_set::optranges = NULL• static StmRe stm::local::xIntegral_set::ranges
9.7.2 Define Documentation
9.7.2.1 #define StmRectrlTryImpl_(envbuf)
Value:
jmp_buf tolower##envbuf##_; \jmp_buf identity##envbuf##_; \if (setjmp (tolower##envbuf##_)) \{ \
throw std::logic_error \( \
std::string ("system error: ") + \stmReCtrlGetErrorMsg (stm::rectrl::tolower) \
); \} \if (setjmp (identity##envbuf##_)) \{ \
throw std::logic_error \( \
std::string ("system error: ") + \stmReCtrlGetErrorMsg (stm::rectrl::identity) \
); \} \stmReCtrlSetErrorEnv (stm::rectrl::tolower, &tolower##envbuf##_); \stmReCtrlSetErrorEnv (stm::rectrl::identity, &identity##envbuf##_)
Implementation macro for StmRectrlTry.
Definition at line 203 of file divxaids.hpp.
9.7.3 Function Documentation
9.7.3.1 StmReCtrl stm::rectrl::initialize ()
stm::rectrl initialization.
Definition at line 85 of file divaids.cpp.
References stm::rectrl::identity, StmElements, stmReCtrlCreate(), and stm::rectrl::tolower.
Referenced by stm::local::xfilespec::initialize(), stm::local::xIntegral_set< IntegralRangeT, Range-SetT >::initialize(), stm::local::xIntegral_range< IntegralT, minVal, maxVal >::initialize(),stm::local::BraceExpand::re(), stm::local::xfilespec::xfilespec(), and stm::local::xIntegral_range< In-tegralT, minVal, maxVal >::xIntegral_range().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.7 DivAids Implementation 51
9.7.3.2 template<typename IntegralT, IntegralT minVal, IntegralT maxVal>stm::local::xIntegral_range< IntegralT, minVal, maxVal >::xIntegral_range (integral_typefromNumber, integral_type toNumber) [inline, protected, inherited]
Definition at line 748 of file divxaids.hpp.
References stm::rectrl::initialize().
9.7.3.3 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> xIntegral_range<IntegralT, minVal, maxVal >::impl & stm::local::xIntegral_range< IntegralT, minVal, maxVal>::match (const std::string & rstr, size_t fmtFlags) [inline, protected, inherited]
Definition at line 768 of file divxaids.hpp.
References stmReMatch().
Referenced by stm::integral_range< IntegralT, minVal, maxVal >::assign().
9.7.3.4 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> intstm::local::xIntegral_range< IntegralT, minVal, maxVal >::getIntegral (boost::mpl::false_,const std::string & vstr, integral_type & val) [inline, static, private, inherited]
If vstr designates an integral_type object, that object is assigned to val and 0 is returned, else 1.
Only instantiated for unsigned integral types.
Definition at line 791 of file divxaids.hpp.
9.7.3.5 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> intstm::local::xIntegral_range< IntegralT, minVal, maxVal >::getIntegral (boost::mpl::true_,const std::string & vstr, integral_type & val) [inline, static, private, inherited]
If vstr designates an integral_type object, that object is assigned to val and 0 is returned, else 1.
Only instantiated for signed integral types.
Definition at line 815 of file divxaids.hpp.
9.7.3.6 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> StmRestm::local::xIntegral_range< IntegralT, minVal, maxVal >::initialize () [inline, static,private, inherited]
Definition at line 837 of file divxaids.hpp.
References stm::local::xIntegral_range< IntegralT, minVal, maxVal >::assign(), stm::rectrl::identity,stm::rectrl::initialize(), stm::local::xIntegral_range< IntegralT, minVal, maxVal >::optassign(),stm::local::xIntegral_range< IntegralT, minVal, maxVal >::optrange, stm::local::xIntegral_range<IntegralT, minVal, maxVal >::range, and stmReCreate().
9.7.3.7 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> intstm::local::xIntegral_range< IntegralT, minVal, maxVal >::optassign (StmMtcFctCmd cmd,StmReMtc reMtc) [inline, static, private, inherited]
Definition at line 870 of file divxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.7 DivAids Implementation 52
References StmMtcFctCmd::action, stmQreMtcNthSimpleReMtc(), stmQreMtcSimpleReMtcCount(), andstmReMtcNthQreMtc().
Referenced by stm::local::xIntegral_range< IntegralT, minVal, maxVal >::initialize().
9.7.3.8 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> intstm::local::xIntegral_range< IntegralT, minVal, maxVal >::assign (StmMtcFctCmd cmd, Stm-ReMtc reMtc) [inline, static, private, inherited]
Definition at line 889 of file divxaids.hpp.
References StmMtcFctCmd::action, stmQreMtcNthSimpleReMtc(), stmQreMtcSimpleReMtcCount(),stmReMtcEnv(), stmReMtcNthQreMtc(), stmReMtcNthQreMtcLen(), and stmReMtcNthQreMtcStr().
Referenced by stm::local::xIntegral_range< IntegralT, minVal, maxVal >::initialize().
9.7.3.9 template<class IntegralRangeT, class RangeSetT> stm::local::xIntegral_set< Integral-RangeT, RangeSetT >::integral_iterator::integral_iterator () [inline, inherited]
Definition at line 949 of file divxaids.hpp.
9.7.3.10 template<class IntegralRangeT, class RangeSetT> bool stm::local::xIntegral_set< Inte-gralRangeT, RangeSetT >::integral_iterator::operator== (const integral_iterator & other) const[inline, inherited]
Definition at line 957 of file divxaids.hpp.
9.7.3.11 template<class IntegralRangeT, class RangeSetT> bool stm::local::xIntegral_set< In-tegralRangeT, RangeSetT >::integral_iterator::operator!= (const integral_iterator & other) const[inline, inherited]
Definition at line 969 of file divxaids.hpp.
9.7.3.12 template<class IntegralRangeT, class RangeSetT> xIntegral_set< IntegralRangeT,RangeSetT >::integral_type stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::integral_-iterator::operator ∗ () const [inline, inherited]
Definition at line 980 of file divxaids.hpp.
References stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::integral_iterator::parent_-, stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::integral_iterator::rit_, andstm::local::xIntegral_set< IntegralRangeT, RangeSetT >::integral_iterator::value_.
9.7.3.13 template<class IntegralRangeT, class RangeSetT> xIntegral_set< IntegralRangeT,RangeSetT >::integral_iterator & stm::local::xIntegral_set< IntegralRangeT, RangeSetT>::integral_iterator::operator++ () [inline, inherited]
Definition at line 995 of file divxaids.hpp.
References stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::MaxVal, stm::local::xIntegral_-set< IntegralRangeT, RangeSetT >::MinVal, stm::local::xIntegral_set< IntegralRangeT, RangeSetT>::integral_iterator::parent_, stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::integral_-iterator::rit_, StmDebugAidsVerify, and stm::local::xIntegral_set< IntegralRangeT, RangeSetT>::integral_iterator::value_.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.7 DivAids Implementation 53
9.7.3.14 template<class IntegralRangeT, class RangeSetT> const xIntegral_set< Integral-RangeT, RangeSetT >::integral_iterator & stm::local::xIntegral_set< IntegralRangeT, RangeSetT>::integral_iterator::operator++ (int) [inline, inherited]
Definition at line 1017 of file divxaids.hpp.
9.7.3.15 template<class IntegralRangeT, class RangeSetT> xIntegral_set< IntegralRangeT,RangeSetT >::integral_iterator & stm::local::xIntegral_set< IntegralRangeT, RangeSetT>::integral_iterator::operator– () [inline, inherited]
Definition at line 1029 of file divxaids.hpp.
References stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::MaxVal, stm::local::xIntegral_-set< IntegralRangeT, RangeSetT >::MinVal, stm::local::xIntegral_set< IntegralRangeT, RangeSetT>::integral_iterator::parent_, stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::integral_-iterator::rit_, StmDebugAidsVerify, and stm::local::xIntegral_set< IntegralRangeT, RangeSetT>::integral_iterator::value_.
9.7.3.16 template<class IntegralRangeT, class RangeSetT> const xIntegral_set< Integral-RangeT, RangeSetT >::integral_iterator & stm::local::xIntegral_set< IntegralRangeT, RangeSetT>::integral_iterator::operator– (int) [inline, inherited]
Definition at line 1045 of file divxaids.hpp.
9.7.3.17 template<class IntegralRangeT, class RangeSetT> stm::local::xIntegral_set< Integral-RangeT, RangeSetT >::integral_iterator::integral_iterator (const impl ∗ parent, typenameimpl::const_iterator rit, integral_type value) [inline, private, inherited]
Definition at line 1057 of file divxaids.hpp.
9.7.3.18 template<class IntegralRangeT, class RangeSetT> stm::local::xIntegral_set< Integral-RangeT, RangeSetT >::xIntegral_set () [inline, protected, inherited]
Definition at line 1083 of file divxaids.hpp.
References stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::initialize().
9.7.3.19 template<class IntegralRangeT, class RangeSetT> void stm::local::xIntegral_set< Inte-gralRangeT, RangeSetT >::adjust () throw () [inline, protected, inherited]
Adjust this object to be consistent.
Definition at line 1090 of file divxaids.hpp.
References stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::MaxVal, stm::local::xIntegral_set<IntegralRangeT, RangeSetT >::MinVal, stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::size_,and StmDebugAidsVerify.
Referenced by stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::match(), stm::integral_set< Inte-gralRangeT, RangeSetT >::operator-=(), stm::integral_set< IntegralRangeT, RangeSetT >::operator|=(),and stm::integral_set< IntegralRangeT, RangeSetT >::swap().
9.7.3.20 template<class IntegralRangeT, class RangeSetT> void stm::local::xIntegral_set< Inte-gralRangeT, RangeSetT >::verify () const [inline, protected, inherited]
Verify, if this object is consistent. Only active in debug version.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.7 DivAids Implementation 54
Definition at line 1133 of file divxaids.hpp.
References stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::MaxVal, stm::local::xIntegral_set<IntegralRangeT, RangeSetT >::MinVal, stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::size_,and StmDebugAidsVerify.
Referenced by stm::integral_set< IntegralRangeT, RangeSetT >::invert(), stm::integral_set< Integral-RangeT, RangeSetT >::operator &=(), stm::integral_set< IntegralRangeT, RangeSetT >::operator-=(),and stm::integral_set< IntegralRangeT, RangeSetT >::operator|=().
9.7.3.21 template<class IntegralRangeT, class RangeSetT> xIntegral_set< IntegralRangeT,RangeSetT >::integral_iterator stm::local::xIntegral_set< IntegralRangeT, RangeSetT>::mkIterator (const_iterator rit, integral_type value) [inline, protected, inherited]
Definition at line 1155 of file divxaids.hpp.
Referenced by stm::integral_set< IntegralRangeT, RangeSetT >::begin(), stm::integral_set< Integral-RangeT, RangeSetT >::end(), and stm::integral_set< IntegralRangeT, RangeSetT >::find().
9.7.3.22 template<class IntegralRangeT, class RangeSetT> xIntegral_set< IntegralRangeT,RangeSetT >::iterator stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::rangeOf(integral_type number, bool includeTo) [inline, protected, inherited]
Return the iterator pointing to the range the number belongs to, or end(), if there is no such range.
Definition at line 1168 of file divxaids.hpp.
References stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::MinVal.
Referenced by stm::integral_set< IntegralRangeT, RangeSetT >::find(), stm::integral_set< Integral-RangeT, RangeSetT >::findrange(), stm::integral_set< IntegralRangeT, RangeSetT >::operator &=(),stm::integral_set< IntegralRangeT, RangeSetT >::operator-=(), stm::integral_set< IntegralRangeT,RangeSetT >::operator>=(), and stm::integral_set< IntegralRangeT, RangeSetT >::operator|=().
9.7.3.23 template<class IntegralRangeT, class RangeSetT> xIntegral_set< IntegralRangeT,RangeSetT >::const_iterator stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::rangeOf(integral_type number, bool includeTo) const [inline, protected, inherited]
Definition at line 1187 of file divxaids.hpp.
References stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::MinVal.
9.7.3.24 template<class IntegralRangeT, class RangeSetT> xIntegral_set< IntegralRangeT,RangeSetT >::impl & stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::match (conststd::string & rstr, size_t fmtFlags) [inline, protected, inherited]
Definition at line 1205 of file divxaids.hpp.
References stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::adjust(), stm::local::xIntegral_-set< IntegralRangeT, RangeSetT >::optranges, stm::local::xIntegral_set< IntegralRangeT, RangeSetT>::ranges, and stmReMatch().
Referenced by stm::integral_set< IntegralRangeT, RangeSetT >::assign().
9.7.3.25 template<class IntegralRangeT, class RangeSetT> StmRe stm::local::xIntegral_set< In-tegralRangeT, RangeSetT >::initialize () [inline, static, private, inherited]
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.7 DivAids Implementation 55
Definition at line 1228 of file divxaids.hpp.
References stm::rectrl::identity, stm::rectrl::initialize(), stm::local::xIntegral_set< IntegralRangeT,RangeSetT >::optranges, stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::ranges,stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::setassign(), and stmReCreate().
Referenced by stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::xIntegral_set().
9.7.3.26 template<class IntegralRangeT, class RangeSetT> int stm::local::xIntegral_set< In-tegralRangeT, RangeSetT >::setassign (StmMtcFctCmd cmd, StmReMtc reMtc) [inline,static, private, inherited]
Definition at line 1253 of file divxaids.hpp.
References StmMtcFctCmd::action, and stmReMtcEnv().
Referenced by stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::initialize().
9.7.3.27 bool stm::local::xcondition::wait_ (scoped_lock & lock, int64 absTimeMs) [inline,inherited]
Definition at line 1272 of file divxaids.hpp.
References stm::local::xcondition::cond_, stm::local::xscoped_lock::mutex_, stmConditionTimedWait(),and stmConditionWait().
Referenced by stm::condition::timed_wait(), and stm::condition::wait().
9.7.3.28 bool stm::local::xsystem_condition::wait_ (system_scoped_lock & lock, int64 absTimeMs)[inline, inherited]
Definition at line 1328 of file divxaids.hpp.
References stm::local::xsystem_condition::cond_, stm::local::xsystem_scoped_lock::mutex_, stmNamed-ConditionTimedWait(), and stmNamedConditionWait().
Referenced by stm::system_condition::timed_wait(), and stm::system_condition::wait().
9.7.4 Variable Documentation
9.7.4.1 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> StmRestm::local::xIntegral_range< IntegralT, minVal, maxVal >::optrange = NULL [inline,static, private, inherited]
Definition at line 356 of file divxaids.hpp.
Referenced by stm::local::xIntegral_range< IntegralT, minVal, maxVal >::initialize().
9.7.4.2 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> StmRestm::local::xIntegral_range< IntegralT, minVal, maxVal >::range [inline, static,private, inherited]
Initial value:
xIntegral_range<IntegralT, minVal, maxVal>::initialize ()
Definition at line 357 of file divxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.8 FilesysAids Implementation 56
Referenced by stm::local::xIntegral_range< IntegralT, minVal, maxVal >::initialize(), andstm::operator<<().
9.7.4.3 template<class IntegralRangeT, class RangeSetT> StmRe stm::local::xIntegral_set< Inte-gralRangeT, RangeSetT >::optranges = NULL [inline, static, private, inherited]
Definition at line 496 of file divxaids.hpp.
Referenced by stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::initialize(), andstm::local::xIntegral_set< IntegralRangeT, RangeSetT >::match().
9.7.4.4 template<class IntegralRangeT, class RangeSetT> StmRe stm::local::xIntegral_set< Inte-gralRangeT, RangeSetT >::ranges [inline, static, private, inherited]
Initial value:
xIntegral_set<IntegralRangeT, RangeSetT>::initialize ()
Definition at line 497 of file divxaids.hpp.
Referenced by stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::initialize(), andstm::local::xIntegral_set< IntegralRangeT, RangeSetT >::match().
9.8 FilesysAids Implementation
Collaboration diagram for FilesysAids Implementation:
FilesysAids ImplementationFilesysAids: File System Aids
9.8.1 Detailed Description
Implementation of file system related utilities.
Files
• file filesysxaids.hppImplementation of file system aids.
• file filesysaids.cppImplementation of file system related utilities.
Classes
• class stm::local::xrecursionenvstm::path::recursionenv implementation base class.
• class stm::local::xdirdata< DataT, EnvT >
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.8 FilesysAids Implementation 57
stm::path::dirdata implementation base class template.
• class stm::local::xreadablefilestm::readablefile implementation base class.
• class stm::local::xinputrange< FileRangeT, bufSize >
stm::inputrange implementation base class template.
• class stm::local::xinputrange_iterator< BufRangeT, ContextT >
stm::inputrange_iterator implementation base class template.
• class stm::local::xfilespecstm::filespec implementation base class.
• class stm::local::xfilespecliststm::filespeclist implementation base class.
• class stm::local::xfilefind< PathContainerT >
stm::filefind implementation base class template.
• class stm::local::BraceExpandBrace expansion implementation class.
Defines
• #define PsepChars "/"• #define PsepRe "/"• #define Esc "\\"• #define EscRe "\\"
9.8.2 Define Documentation
9.8.2.1 #define PsepChars "/"
Definition at line 87 of file filesysaids.cpp.
Referenced by stm::local::xfilespec::appDot(), stm::local::xfilespec::appDotSeq(),stm::pstring::limitedPath(), and stm::local::xfilespec::starStarOp().
9.8.2.2 #define PsepRe "/"
Definition at line 88 of file filesysaids.cpp.
Referenced by stm::local::xfilespec::bracketExpr(), stm::filespec::filespec(), andstm::local::xfilespec::starStarOp().
9.8.2.3 #define Esc "\\"
Definition at line 89 of file filesysaids.cpp.
Referenced by stm::filespec::findFirstOfUnescaped(), and stm::filespec::findLastOfUnescaped().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.9 GenCRC Implementation 58
9.8.2.4 #define EscRe "\\"
Definition at line 90 of file filesysaids.cpp.
Referenced by stm::local::xfilespec::initialize().
9.9 GenCRC Implementation
Collaboration diagram for GenCRC Implementation:
GenCRC: Generic CRC Generation GenCRC Implementation
9.9.1 Detailed Description
Implementation of the class template stm::crc used to generate cyclic redundancy check (CRC) remainderpolynomials of template type RemPolT over buffers of byte-like objects.
Files
• file genxcrc.hppImplementation of generic CRC remainder polynomial generation.
Classes
• class stm::local::xcrc< RemPolT >
stm::crc implementation base class template.
9.10 LoggerAids Implementation
Collaboration diagram for LoggerAids Implementation:
LoggerAids: Formatted Logging Aids LoggerAids Implementation
9.10.1 Detailed Description
Implementation of utilities for formatted logging on an output stream and on the console.
Files
• file loggerxaids.hppImplementation of formatted logging aids.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.11 SmartptrAids Implementation 59
Classes
• class stm::local::basic_xlogger< StringT, lockingPolicy >
stm::basic_logger implementation base class template.
Variables
• static const char_type stm::local::basic_xlogger::psep_ [ ]Path separator characters ’/’ and ’\’.
• static const size_t stm::local::basic_xlogger::PsepLen = sizeof (psep_) / sizeof (char_type)Number of path separator characters.
9.10.2 Variable Documentation
9.10.2.1 template<class StringT, word lockingPolicy> const basic_xlogger< StringT, lockingPolicy>::char_type stm::local::basic_xlogger< StringT, lockingPolicy >::psep_ [inline, static,protected, inherited]
Initial value:
{char_type (’/’),char_type (’\\’)
}
Path separator characters ’/’ and ’\’.
Definition at line 613 of file loggerxaids.hpp.
Referenced by stm::local::basic_xlogger< std::string, lockingPolicy >::tprint().
9.10.2.2 template<class StringT, word lockingPolicy> const size_t stm::local::basic_xlogger<StringT, lockingPolicy >::PsepLen = sizeof (psep_) / sizeof (char_type) [inline, static,protected, inherited]
Number of path separator characters.
Definition at line 616 of file loggerxaids.hpp.
Referenced by stm::local::basic_xlogger< std::string, lockingPolicy >::tprint().
9.11 SmartptrAids Implementation
Collaboration diagram for SmartptrAids Implementation:
SmartptrAids: Smart Pointer Aids SmartptrAids Implementation
9.11.1 Detailed Description
Implementation of class templates for smart pointer aids.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.11 SmartptrAids Implementation 60
Files
• file smartptrxaids.hppImplementation of smart pointer aids.
Namespaces
• namespace stm::smartptr::localImplementation namespace for the SysToMath Aids C++ Library module SmartptrAids.
Classes
• class stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange >
stm::smartptr::injective_ptr implementation base class template.
• struct stm::smartptr::local::pcomp< T, Compare >
• class stm::smartptr::local::pointee_type< T >
• struct stm::smartptr::local::item_type< T, Compare >
• struct stm::smartptr::local::item_descr< T, Compare, true, true >
• struct stm::smartptr::local::item_descr< T, Compare, false, true >
• struct stm::smartptr::local::increfcount< T, Compare, refcounted, multirange >
• struct stm::smartptr::local::decrefcount< T, Compare, refcounted, multirange >
• struct stm::smartptr::local::comp_value_id< T, Compare >
• struct stm::smartptr::local::comp_id< T, Compare >
• struct stm::smartptr::local::comp_value< T, Compare >
• class stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, multirange >
• class stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, false >
• struct stm::smartptr::local::item_descr< T, Compare, true, false >
• struct stm::smartptr::local::item_descr< T, Compare, false, false >
• class stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, false >
Typedefs
• typedef long stm::smartptr::local::refcount_typeTo be compatible with boost::shared_ptr.
9.11.2 Typedef Documentation
9.11.2.1 typedef long stm::smartptr::local::refcount_type
To be compatible with boost::shared_ptr.
Definition at line 181 of file smartptrxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.12 LoggerAids: Formatted Logging Aids 61
9.12 LoggerAids: Formatted Logging Aids
Collaboration diagram for LoggerAids: Formatted Logging Aids:
LoggerAids: Formatted Logging Aids LoggerAids ImplementationSysToMath Aids C++ Library
9.12.1 Detailed Description
Declaration of class templates for formatted logging on an output stream and on the console.
The declarations of these utilities are all contained in the namespace stm.
In the following documentation the international standard C++ISO/IEC 14882:2003(E) is cited in the formof parenthesized expressions with the same syntax and semantics as inside this international standard itself.
Files
• file loggeraids.hppDeclarations of formatted logging aids.
Modules
• LoggerAids ImplementationImplementation of utilities for formatted logging on an output stream and on the console.
Classes
• class stm::logger_baseCommon base class of all basic_logger class template specializations.
• class stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >
Class template to manage formatted logging on an output stream (normally a log file) and optionally on asecond stream (normally a console) and on the system log (see stm::syslog()).
• struct stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::FmtFormat information for output streams.
• struct stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::lockerScoped locking for output streams.
• class stm::logger< stdIndent, lineLength, errorConsole, lockingPolicy >
Class template to manage formatted logging on a std::string based output stream (normally a log file)and optionally on a second std::string based stream (normally a console, by default std::cout, if templateparameter errorConsole is false (the default), or else std::cerr).
• class stm::wlogger< stdIndent, lineLength, errorConsole, lockingPolicy >
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.12 LoggerAids: Formatted Logging Aids 62
Class template to manage formatted logging on a std::wstring based output stream (normally a log file) andoptionally on a second std::wstring based stream (normally a console, by default std::wcout, if templateparameter errorConsole is false (the default), or else std::wcerr).
Typedefs
• typedef basic_logger< StringT, stdIndent, lineLength, lockingPolicy > stm::basic_logger::logger_-type
This basic_logger type.
• typedef StringT stm::basic_logger::string_typeString type.
• typedef std::basic_ostream< typename string_type::value_type, typename string_type::traits_type >stm::basic_logger::ostream_type
Output stream type.
• typedef impl::char_type stm::basic_logger::char_typeCharacter type.
Enumerations
• enum {
stm::basic_logger::StdIndent = stdIndent,
stm::basic_logger::LineLength = lineLength,
stm::basic_logger::LockingPolicy = lockingPolicy }• enum stm::basic_logger::FmtFlags {
stm::basic_logger::NoFlag = impl::NoFlag,
stm::basic_logger::Indent = impl::Indent,
stm::basic_logger::NoPara = impl::NoPara,
stm::basic_logger::KeepWs = impl::KeepWs,
stm::basic_logger::AutoInd = impl::AutoInd,
stm::basic_logger::ColonInd = impl::ColonInd,
stm::basic_logger::ColonTable = impl::ColonTable,
stm::basic_logger::RiJust = impl::RiJust,
stm::basic_logger::RawPath = impl::RawPath,
stm::basic_logger::Single = impl::Single }Format information flags.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.12 LoggerAids: Formatted Logging Aids 63
Functions
• stm::basic_logger::Fmt::Fmt (word flags, word indent=StdIndent, word length=LineLength)Constructs an object with format information flags, indent and length.
• stm::basic_logger::locker::locker (const logger_type &logger)Construct a scoped lock for logger.
• stm::basic_logger::locker::∼locker ()Destructor.
• stm::basic_logger::basic_logger (const std::string &mutexName=std::string())Default constructor for a basic_logger object not to print.
• stm::basic_logger::basic_logger (const logger_type &other)Copy constructor.
• stm::basic_logger::basic_logger (ostream_type &stream, const std::string &mutex-Name=std::string())
Construct a basic_logger object to print on stream.
• stm::basic_logger::basic_logger (ostream_type &stream, ostream_type &console, const std::string&mutexName=std::string())
Construct a basic_logger object to print on stream and on console.
• stm::basic_logger::∼basic_logger ()Destroy a basic_logger object.
• bool stm::basic_logger::hasStream () constReturn true, if this basic_logger object has a stream, else false.
• void stm::basic_logger::setStream (ostream_type &stream)Configure this basic_logger object to print on stream.
• void stm::basic_logger::unsetStream ()Configure this basic_logger object to print on no stream.
• bool stm::basic_logger::hasConsole () constReturn true, if this basic_logger object has a console, else false.
• void stm::basic_logger::setConsole (ostream_type &console)Configure this basic_logger object to print on console.
• void stm::basic_logger::unsetConsole ()Configure this basic_logger object to print on no console.
• int stm::basic_logger::adjustChild ()Adjust this basic_logger object after a call to fork().
• int stm::basic_logger::operator() (Fmt streamFmt=Fmt(), Fmt consoleFmt=Fmt())
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.12 LoggerAids: Formatted Logging Aids 64
Print the contents of the string stream base of this basic_logger to the streams configured and then clear it.
• int stm::basic_logger::underline (int n, char_type ch=char_type(’=’), dword nl=1)Print character ch (default ’=’) n times to the streams configured, followed by nl times (default 1) thenewline character.
• int stm::basic_logger::paragraph (dword nl=1)Print on each configured stream as much newlines that at least nl empty lines are present after the lastrecently printed non empty line.
• static string_type stm::basic_logger::mkPath (const string_type &str)Return a copy of str, if str does not contain white space, else str quoted by ’"’ characters.
• stm::logger::logger (bool enableStream, const std::string &mutexName)Construct a logger object to print on stream (default the standard console), if enableStream is true.
• stm::logger::logger (std::ostream &stream, const std::string &mutexName)Construct a logger object to print on stream.
• stm::logger::logger (std::ostream &stream, bool enableConsole=false, const std::string &mutex-Name=std::string())
Construct a logger object to print on stream and on the standard console, if enableConsole is true (defaultfalse).
• stm::logger::logger (std::ostream &stream, std::ostream &console, const std::string &mutex-Name=std::string())
Construct a logger object to print on stream and on console.
• void stm::logger::setConsole ()Configure this logger object to print on the standard console.
• stm::wlogger::wlogger (bool enableStream, const std::string &mutexName)Construct a logger object to print on stream (default the standard console), if enableStream is true.
• stm::wlogger::wlogger (std::ostream &stream, const std::string &mutexName)Construct a logger object to print on stream.
• stm::wlogger::wlogger (std::wostream &stream, bool enableConsole=false, const std::string &mu-texName=std::string())
Construct a wlogger object to print on stream and on the standard console, if enableConsole is true (defaultfalse).
• stm::wlogger::wlogger (std::wostream &stream, std::wostream &console, const std::string &mutex-Name=std::string())
Construct a wlogger object to print on stream and on console.
• void stm::wlogger::setConsole ()Configure this wlogger object to print on the standard console.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.12 LoggerAids: Formatted Logging Aids 65
9.12.2 Typedef Documentation
9.12.2.1 template<class StringT, word stdIndent = 4, word lineLength = 79, word lockingPolicy= logger_base::NoLocking> typedef basic_logger< StringT, stdIndent, lineLength, lockingPolicy >stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::logger_type [inherited]
This basic_logger type.
Definition at line 187 of file loggeraids.hpp.
9.12.2.2 template<class StringT, word stdIndent = 4, word lineLength = 79, word lockingPolicy =logger_base::NoLocking> typedef StringT stm::basic_logger< StringT, stdIndent, lineLength, lock-ingPolicy >::string_type [inherited]
String type.
Shall be a specialization of std::basic_string.
Reimplemented from stm::local::basic_xlogger< StringT, lockingPolicy >.
Definition at line 191 of file loggeraids.hpp.
9.12.2.3 template<class StringT, word stdIndent = 4, word lineLength = 79, word lockingPolicy= logger_base::NoLocking> typedef std::basic_ostream< typename string_type::value_type, type-name string_type::traits_type > stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy>::ostream_type [inherited]
Output stream type.
Reimplemented from stm::local::basic_xlogger< StringT, lockingPolicy >.
Definition at line 200 of file loggeraids.hpp.
9.12.2.4 template<class StringT, word stdIndent = 4, word lineLength = 79, word lockingPolicy= logger_base::NoLocking> typedef impl::char_type stm::basic_logger< StringT, stdIndent, line-Length, lockingPolicy >::char_type [inherited]
Character type.
The same as string_type::value_type and ostream_type::char_type.
Reimplemented from stm::local::basic_xlogger< StringT, lockingPolicy >.
Definition at line 205 of file loggeraids.hpp.
9.12.3 Enumeration Type Documentation
9.12.3.1 template<class StringT, word stdIndent = 4, word lineLength = 79, word lockingPolicy =logger_base::NoLocking> anonymous enum [inherited]
Enumerator:
StdIndent Standard indentation.
LineLength Standard line length.
LockingPolicy Locking policy.
Definition at line 207 of file loggeraids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.12 LoggerAids: Formatted Logging Aids 66
9.12.3.2 template<class StringT, word stdIndent = 4, word lineLength = 79, word lockingPolicy =logger_base::NoLocking> enum stm::basic_logger::FmtFlags [inherited]
Format information flags.
These flag values may be bitwise ored and also combined with the syslog level flags ofstm::SyslogFlags.
Enumerator:
NoFlag No flag.Oring this value has no effect.
Indent Indentation flag causes the string to be output to be formatted using indentation of the con-tiuation lines.This flag is set imlicitly, if another flag except NoFlag, a syslog level flag or Single is set.
NoPara No paragraph flag.
KeepWs Keep white space flag.
AutoInd Auto indentation flag.
ColonInd Colon indentation flag.
ColonTable Colon table flag.
RiJust Right justification flag.
RawPath Raw path flag.
Single Single stream flag.
Definition at line 218 of file loggeraids.hpp.
9.12.4 Function Documentation
9.12.4.1 template<class StringT, word stdIndent, word lineLength, word lockingPolicy>stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::Fmt::Fmt (word flags, wordindent = StdIndent, word length = LineLength) [inline, inherited]
Constructs an object with format information flags, indent and length.
Reimplemented from stm::local::basic_xlogger< StringT, lockingPolicy >::Fmt.
Definition at line 1081 of file loggerxaids.hpp.
9.12.4.2 template<class StringT, word stdIndent, word lineLength, word lockingPolicy>stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::locker::locker (const logger_-type & logger) [inline, inherited]
Construct a scoped lock for logger.
Definition at line 1102 of file loggerxaids.hpp.
9.12.4.3 template<class StringT, word stdIndent, word lineLength, word lockingPolicy>stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::locker::∼locker () [inline,inherited]
Destructor.
Reimplemented from stm::local::basic_xlogger< StringT, lockingPolicy >::locker.
Definition at line 1116 of file loggerxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.12 LoggerAids: Formatted Logging Aids 67
9.12.4.4 template<class StringT, word stdIndent, word lineLength, word lockingPolicy>stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::basic_logger (const std::string& mutexName = std::string ()) [inline, inherited]
Default constructor for a basic_logger object not to print.
mutexName is the name of the mutex used for system-wide locking, if applicable. If for system-widelocking mutexName is empty, the standard name ’StmLoggerLock’ is used.
Definition at line 672 of file loggerxaids.hpp.
9.12.4.5 template<class StringT, word stdIndent, word lineLength, word lockingPolicy>stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::basic_logger (const logger_-type & other) [inline, inherited]
Copy constructor.
Definition at line 691 of file loggerxaids.hpp.
9.12.4.6 template<class StringT, word stdIndent, word lineLength, word lockingPolicy>stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::basic_logger (ostream_type &stream, const std::string & mutexName = std::string ()) [inline, inherited]
Construct a basic_logger object to print on stream.
mutexName is the name of the mutex used for system-wide locking, if applicable. If for system-widelocking mutexName is empty, the standard name ’StmLoggerLock’ is used.
Definition at line 714 of file loggerxaids.hpp.
9.12.4.7 template<class StringT, word stdIndent, word lineLength, word lockingPolicy>stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::basic_logger (ostream_type& stream, ostream_type & console, const std::string & mutexName = std::string ())[inline, inherited]
Construct a basic_logger object to print on stream and on console.
mutexName is the name of the mutex used for system-wide locking, if applicable. If for system-widelocking mutexName is empty, the standard name ’StmLoggerLock’ is used.
Definition at line 734 of file loggerxaids.hpp.
9.12.4.8 template<class StringT, word stdIndent, word lineLength, word lockingPolicy>stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::∼basic_logger () [inline,inherited]
Destroy a basic_logger object.
Definition at line 754 of file loggerxaids.hpp.
References stm::local::basic_xlogger< StringT, lockingPolicy >::destroySync().
9.12.4.9 template<class StringT, word stdIndent, word lineLength, word lockingPolicy>bool stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::hasStream () const[inline, inherited]
Return true, if this basic_logger object has a stream, else false.
Definition at line 768 of file loggerxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.12 LoggerAids: Formatted Logging Aids 68
9.12.4.10 template<class StringT, word stdIndent, word lineLength, word lockingPolicy> voidstm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::setStream (ostream_type &stream) [inline, inherited]
Configure this basic_logger object to print on stream.
Definition at line 782 of file loggerxaids.hpp.
Referenced by stm::logger< stdIndent, lineLength, errorConsole, lockingPolicy >::logger().
9.12.4.11 template<class StringT, word stdIndent, word lineLength, word lockingPolicy> voidstm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::unsetStream () [inline,inherited]
Configure this basic_logger object to print on no stream.
Definition at line 803 of file loggerxaids.hpp.
References stm::local::basic_xlogger< StringT, lockingPolicy >::Stream::ColonInactive,stm::local::basic_xlogger< StringT, lockingPolicy >::Stream::colonState, stm::local::basic_xlogger<StringT, lockingPolicy >::Stream::nls, stm::local::basic_xlogger< StringT, lockingPolicy >::output, andstm::local::basic_xlogger< StringT, lockingPolicy >::Stream::pStream.
9.12.4.12 template<class StringT, word stdIndent, word lineLength, word lockingPolicy>bool stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::hasConsole () const[inline, inherited]
Return true, if this basic_logger object has a console, else false.
Definition at line 823 of file loggerxaids.hpp.
References stm::local::basic_xlogger< StringT, lockingPolicy >::output, and stm::local::basic_xlogger<StringT, lockingPolicy >::Stream::pStream.
9.12.4.13 template<class StringT, word stdIndent, word lineLength, word lockingPolicy> voidstm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::setConsole (ostream_type &console) [inline, inherited]
Configure this basic_logger object to print on console.
Definition at line 837 of file loggerxaids.hpp.
References stm::local::basic_xlogger< StringT, lockingPolicy >::Stream::ColonInactive,stm::local::basic_xlogger< StringT, lockingPolicy >::Stream::colonState, stm::local::basic_xlogger<StringT, lockingPolicy >::Stream::nls, stm::local::basic_xlogger< StringT, lockingPolicy >::output, andstm::local::basic_xlogger< StringT, lockingPolicy >::Stream::pStream.
Referenced by stm::logger< stdIndent, lineLength, errorConsole, lockingPolicy >::logger().
9.12.4.14 template<class StringT, word stdIndent, word lineLength, word lockingPolicy> voidstm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::unsetConsole () [inline,inherited]
Configure this basic_logger object to print on no console.
Definition at line 858 of file loggerxaids.hpp.
References stm::local::basic_xlogger< StringT, lockingPolicy >::Stream::ColonInactive,stm::local::basic_xlogger< StringT, lockingPolicy >::Stream::colonState, stm::local::basic_xlogger<
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.12 LoggerAids: Formatted Logging Aids 69
StringT, lockingPolicy >::Stream::nls, stm::local::basic_xlogger< StringT, lockingPolicy >::output, andstm::local::basic_xlogger< StringT, lockingPolicy >::Stream::pStream.
9.12.4.15 template<class StringT, word stdIndent, word lineLength, word lockingPolicy> intstm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::adjustChild () [inline,inherited]
Adjust this basic_logger object after a call to fork().
This method is intended to be called after a fork system call by the child process in order to adjust thereference count of the named mutex used to implement system-wide locking. Returns 0 on success, else-1 with errno set appropriately.
Definition at line 877 of file loggerxaids.hpp.
References stm::local::basic_xlogger< StringT, lockingPolicy >::adjustSync().
9.12.4.16 template<class StringT, word stdIndent, word lineLength, word lockingPolicy> intstm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::operator() (Fmt streamFmt =Fmt (), Fmt consoleFmt = Fmt ()) [inline, inherited]
Print the contents of the string stream base of this basic_logger to the streams configured and then clear it.
For printing on the stream streamFmt and for printing on the console consoleFmt is used as format infor-mation. If one of the Fmt objects has a syslog level defined (see stm::SyslogFlags) in its flags member,the content is also printed to the system log (see stm::syslog()). The operation is ended on the first erroroccurred in which case a negative value is returned, or else the number of characters written to the laststream configured not counting trailing white space. If no stream is configured, 0 is returned.
Definition at line 891 of file loggerxaids.hpp.
References stm::local::basic_xlogger< StringT, lockingPolicy >::clearNls(), stm::local::basic_xlogger<StringT, lockingPolicy >::Stream::ColonInactive, stm::basic_logger< StringT, stdIndent, lineLength,lockingPolicy >::ColonInd, stm::local::basic_xlogger< StringT, lockingPolicy >::Stream::ColonScan,stm::local::basic_xlogger< StringT, lockingPolicy >::Stream::colonState, stm::find_token_end(),stm::find_trim_back(), stm::find_trim_front(), stm::local::basic_xlogger< StringT, lockingPolicy>::Fmt::flags_, stm::local::basic_xlogger< StringT, lockingPolicy >::Stream::fmt, stm::basic_logger<StringT, stdIndent, lineLength, lockingPolicy >::Indent, stm::local::basic_xlogger< StringT, lockingPol-icy >::Stream::index, stm::LogLevelMask, stm::local::basic_xlogger< StringT, lockingPolicy >::output,stm::local::basic_xlogger< StringT, lockingPolicy >::printch(), stm::local::basic_xlogger< StringT,lockingPolicy >::Stream::pStream, stm::local::basic_xlogger< StringT, lockingPolicy >::Stream::ret,stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::Single, stm::local::basic_xlogger<StringT, lockingPolicy >::Streams, stm::syslog(), stm::local::basic_xlogger< StringT, lockingPolicy>::tprint(), and stm::local::basic_xlogger< StringT, lockingPolicy >::Stream::wrapped.
9.12.4.17 template<class StringT, word stdIndent, word lineLength, word lockingPolicy> intstm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::underline (int n, char_typech = char_type (’=’), dword nl = 1) [inline, inherited]
Print character ch (default ’=’) n times to the streams configured, followed by nl times (default 1) thenewline character.
The operation is ended on the first error occurred in which case -1 is returned, or else n. Also, if no streamis configured, n is returned.
Definition at line 990 of file loggerxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.12 LoggerAids: Formatted Logging Aids 70
References stm::local::basic_xlogger< StringT, lockingPolicy >::clearNls(), and stm::local::basic_-xlogger< StringT, lockingPolicy >::printch().
9.12.4.18 template<class StringT, word stdIndent, word lineLength, word lockingPolicy> intstm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::paragraph (dword nl = 1)[inline, inherited]
Print on each configured stream as much newlines that at least nl empty lines are present after the lastrecently printed non empty line.
The operation is ended on the first error occurred in which case a negative value is returned, or else thenumber of newlines written to the last stream configured. If no stream is configured, 0 is returned.
Definition at line 1019 of file loggerxaids.hpp.
References stm::local::basic_xlogger< StringT, lockingPolicy >::Stream::nls, stm::local::basic_xlogger<StringT, lockingPolicy >::output, and stm::local::basic_xlogger< StringT, lockingPolicy >::Streams.
9.12.4.19 template<class StringT, word stdIndent, word lineLength, word lockingPolicy> StringTstm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::mkPath (const string_type &str) [inline, static, inherited]
Return a copy of str, if str does not contain white space, else str quoted by ’"’ characters.
Definition at line 1048 of file loggerxaids.hpp.
9.12.4.20 template<word stdIndent, word lineLength, bool errorConsole, word lockingPolicy>stm::logger< stdIndent, lineLength, errorConsole, lockingPolicy >::logger (bool enableStream,const std::string & mutexName) [inline, inherited]
Construct a logger object to print on stream (default the standard console), if enableStream is true.
mutexName is the name of the mutex used for system-wide locking, if applicable. If for system-widelocking mutexName is empty, the standard name ’StmLoggerLock’ is used.
Definition at line 1157 of file loggerxaids.hpp.
References stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::setStream().
9.12.4.21 template<word stdIndent, word lineLength, bool errorConsole, word lockingPolicy>stm::logger< stdIndent, lineLength, errorConsole, lockingPolicy >::logger (std::ostream & stream,const std::string & mutexName) [inline, inherited]
Construct a logger object to print on stream.
mutexName is the name of the mutex used for system-wide locking, if applicable. If for system-widelocking mutexName is empty, the standard name ’StmLoggerLock’ is used.
Definition at line 1181 of file loggerxaids.hpp.
9.12.4.22 template<word stdIndent, word lineLength, bool errorConsole, word lockingPolicy>stm::logger< stdIndent, lineLength, errorConsole, lockingPolicy >::logger (std::ostream & stream,bool enableConsole = false, const std::string & mutexName = std::string ()) [inline,inherited]
Construct a logger object to print on stream and on the standard console, if enableConsole is true (defaultfalse).
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.12 LoggerAids: Formatted Logging Aids 71
mutexName is the name of the mutex used for system-wide locking, if applicable. If for system-widelocking mutexName is empty, the standard name ’StmLoggerLock’ is used.
Definition at line 1201 of file loggerxaids.hpp.
References stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::setConsole().
9.12.4.23 template<word stdIndent, word lineLength, bool errorConsole, word lockingPolicy>stm::logger< stdIndent, lineLength, errorConsole, lockingPolicy >::logger (std::ostream & stream,std::ostream & console, const std::string & mutexName = std::string ()) [inline,inherited]
Construct a logger object to print on stream and on console.
mutexName is the name of the mutex used for system-wide locking, if applicable. If for system-widelocking mutexName is empty, the standard name ’StmLoggerLock’ is used.
Definition at line 1227 of file loggerxaids.hpp.
9.12.4.24 template<word stdIndent, word lineLength, bool errorConsole, word lockingPolicy>void stm::logger< stdIndent, lineLength, errorConsole, lockingPolicy >::setConsole () [inline,inherited]
Configure this logger object to print on the standard console.
Definition at line 1248 of file loggerxaids.hpp.
Referenced by stm::wlogger< stdIndent, lineLength, errorConsole, lockingPolicy >::wlogger().
9.12.4.25 template<word stdIndent, word lineLength, bool errorConsole, word lockingPolicy>stm::wlogger< stdIndent, lineLength, errorConsole, lockingPolicy >::wlogger (bool enableStream,const std::string & mutexName) [inline, inherited]
Construct a logger object to print on stream (default the standard console), if enableStream is true.
mutexName is the name of the mutex used for system-wide locking, if applicable. If for system-widelocking mutexName is empty, the standard name ’StmLoggerLock’ is used.
Definition at line 1296 of file loggerxaids.hpp.
References stm::basic_logger< std::string, stdIndent, lineLength, lockingPolicy >::setStream().
9.12.4.26 template<word stdIndent, word lineLength, bool errorConsole, word lockingPolicy>stm::wlogger< stdIndent, lineLength, errorConsole, lockingPolicy >::wlogger (std::ostream &stream, const std::string & mutexName) [inline, inherited]
Construct a logger object to print on stream.
mutexName is the name of the mutex used for system-wide locking, if applicable. If for system-widelocking mutexName is empty, the standard name ’StmLoggerLock’ is used.
Definition at line 1320 of file loggerxaids.hpp.
9.12.4.27 template<word stdIndent, word lineLength, bool errorConsole, word lockingPolicy>stm::wlogger< stdIndent, lineLength, errorConsole, lockingPolicy >::wlogger (std::wostream &stream, bool enableConsole = false, const std::string & mutexName = std::string ())[inline, inherited]
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.13 SmartptrAids: Smart Pointer Aids 72
Construct a wlogger object to print on stream and on the standard console, if enableConsole is true (defaultfalse).
mutexName is the name of the mutex used for system-wide locking, if applicable. If for system-widelocking mutexName is empty, the standard name ’StmLoggerLock’ is used.
Definition at line 1340 of file loggerxaids.hpp.
References stm::logger< stdIndent, lineLength, errorConsole, lockingPolicy >::setConsole().
9.12.4.28 template<word stdIndent, word lineLength, bool errorConsole, word lockingPolicy>stm::wlogger< stdIndent, lineLength, errorConsole, lockingPolicy >::wlogger (std::wostream& stream, std::wostream & console, const std::string & mutexName = std::string ())[inline, inherited]
Construct a wlogger object to print on stream and on console.
mutexName is the name of the mutex used for system-wide locking, if applicable. If for system-widelocking mutexName is empty, the standard name ’StmLoggerLock’ is used.
Definition at line 1366 of file loggerxaids.hpp.
9.12.4.29 template<word stdIndent, word lineLength, bool errorConsole, word lockingPolicy>void stm::wlogger< stdIndent, lineLength, errorConsole, lockingPolicy >::setConsole ()[inline, inherited]
Configure this wlogger object to print on the standard console.
Definition at line 1387 of file loggerxaids.hpp.
9.13 SmartptrAids: Smart Pointer Aids
Collaboration diagram for SmartptrAids: Smart Pointer Aids:
SmartptrAids: Smart Pointer Aids
SmartptrAids Implementation
SmartptrAids Test
SysToMath Aids C++ Library
9.13.1 Detailed Description
Declaration of class templates for smart pointer aids.
The declarations are all contained in the namespace stm::smartptr. They provide the class templateinjective_ptr for smart pointers pointing to unique constant objects managed by a static repository togetherwith its associated container class template injective_set as well as the traits class templates injective andbijective. For convenience these class templates names are lifted to namespace stm.
As the smart pointer class templates injective_ptr provides boost serialization support, the neededboost::archive and boost::serialization header files are included. Because boost serialization requiresthat all boost::archive header files are included before any boost::serialization header files, it is recom-mended to include this header file after all user specific boost::archive headers and before all user specificboost::serialization headers.
In the following class template documentation the international standard C++ISO/IEC 14882:2003(E) iscited in the form of parenthesized expressions with the same syntax and semantics as inside this interna-tional standard itself.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.13 SmartptrAids: Smart Pointer Aids 73
Files
• file smartptraids.hppDeclarations of smart pointer aids.
Namespaces
• namespace stm::smartptrNamespace for all smart pointer aids class templates.
Modules
• SmartptrAids ImplementationImplementation of class templates for smart pointer aids.
• SmartptrAids TestDemonstration of the usage and tests of the implementation of the SysToMath Aids C++ Library moduleSmartptrAids.
Classes
• struct stm::smartptr::policy< Flags >
Class template serving as Policy template parameter for class templates injective_ptr and injective_set.
• struct stm::smartptr::MakeSurjective< Policy >
Class template serving as wrapper of template parameter Policy to ensure the surjective policy property.
• struct stm::smartptr::MakeMultirange< Policy >
Class template serving as wrapper of template parameter Policy to ensure the multirange policy property.
• class stm::smartptr::injective_ptr< T, Compare, Allocator, Policy >
The class template injective_ptr is a smart pointer pointing to unique constant objects of element type Tstored using a static repository.
• class stm::smartptr::injective_set< T, Compare, Allocator, Policy >
The class template injective_set is a container of unique constant objects of value type T stored wrapping aspecific range of the static repository of an injective_ptr<T, Compare, Allocator, Policy> object.
• class stm::smartptr::injective< T, Compare, Allocator, Policy >
The traits class template injective combines the class template injective_ptr and its associated class templateinjective_set having either the surjective or the not surjective policy property.
• class stm::smartptr::bijective< T, Compare, Allocator, Policy >
The traits class template bijective combines the class template injective_ptr and its associated class templateinjective_set having the surjective policy property.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.13 SmartptrAids: Smart Pointer Aids 74
Policy Flags
The policy flag bits are bitwise orable.
• const stm::dword stm::smartptr::Surjective = 0x00000001Surjective policy flag.
• const stm::dword stm::smartptr::Multirange = 0x00000002Multirange policy flag.
Functions
• template<class T, class Compare, class Allocator, class Policy>
bool stm::smartptr::operator== (const injective_ptr< T, Compare, Allocator, Policy > &ptr1, constinjective_ptr< T, Compare, Allocator, Policy > &ptr2)
Returns true, if both ptr1 and ptr2 are empty or ptr1 and ptr2 are not empty and point to elements beingequivalent under the equivalence relation induced by Compare, else false.
• template<class T, class Compare, class Allocator, class Policy>
bool stm::smartptr::operator!= (const injective_ptr< T, Compare, Allocator, Policy > &ptr1, constinjective_ptr< T, Compare, Allocator, Policy > &ptr2)
Returns true, if either ptr1 or ptr2 is not empty and ptr1 or ptr2 is empty or else point to elements beingnon-equivalent under the equivalence relation induced by Compare, else false.
• template<class T, class Compare, class Allocator, class Policy>
bool stm::smartptr::operator< (const injective_ptr< T, Compare, Allocator, Policy > &ptr1, constinjective_ptr< T, Compare, Allocator, Policy > &ptr2)
Returns a bool value such that operator< is a strict weak ordering as decribed in (25.3) and that under theequivalence relation.
• template<class T, class Compare, class Allocator, class Policy>
void stm::smartptr::swap (injective_ptr< T, Compare, Allocator, Policy > &ptr1, injective_ptr< T,Compare, Allocator, Policy > &ptr2)
Exchanges the contents of the injective_ptr objects ptr1 and ptr2.
• template<class T, class Compare, class Allocator, class Policy>
const T ∗ stm::smartptr::get_pointer (const injective_ptr< T, Compare, Allocator, Policy > &ptr)Returns a constant pointer to the element pointed to by the injective_ptr object ptr, if ptr is not be empty,else the null pointer.
• template<class OStreamT, class T, class Compare, class Allocator, class Policy>
OStreamT & stm::smartptr::operator<< (OStreamT &os, const injective_ptr< T, Compare, Alloca-tor, Policy > &ptr)
Inserts a string representation of the address of the element pointed to by ptr into the output stream os.
9.13.2 Function Documentation
9.13.2.1 template<class T, class Compare, class Allocator, class Policy> boolstm::smartptr::operator== (const injective_ptr< T, Compare, Allocator, Policy > & ptr1, constinjective_ptr< T, Compare, Allocator, Policy > & ptr2) [inline]
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.13 SmartptrAids: Smart Pointer Aids 75
Returns true, if both ptr1 and ptr2 are empty or ptr1 and ptr2 are not empty and point to elements beingequivalent under the equivalence relation induced by Compare, else false.
Never throws.
Definition at line 2344 of file smartptrxaids.hpp.
References ptr1, and ptr2.
9.13.2.2 template<class T, class Compare, class Allocator, class Policy> boolstm::smartptr::operator!= (const injective_ptr< T, Compare, Allocator, Policy > & ptr1, constinjective_ptr< T, Compare, Allocator, Policy > & ptr2) [inline]
Returns true, if either ptr1 or ptr2 is not empty and ptr1 or ptr2 is empty or else point to elements beingnon-equivalent under the equivalence relation induced by Compare, else false.
Never throws.
Definition at line 2355 of file smartptrxaids.hpp.
References ptr1, and ptr2.
9.13.2.3 template<class T, class Compare, class Allocator, class Policy> boolstm::smartptr::operator< (const injective_ptr< T, Compare, Allocator, Policy > & ptr1, constinjective_ptr< T, Compare, Allocator, Policy > & ptr2) [inline]
Returns a bool value such that operator< is a strict weak ordering as decribed in (25.3) and that under theequivalence relation.
! (ptr1 < ptr2) && ! (ptr2 < ptr1)
defined by operator<, two injective_ptr instances ptr1 and ptr2 are equivalent if and only if they point tovalues being equivalent under the equivalence relation induced by Compare or are both empty. An emptyinjective_ptr object is less than any non-empty injective_ptr object. This allows injective_ptr objects to beused as keys in associative containers. Never throws.
Definition at line 2366 of file smartptrxaids.hpp.
References ptr1, and ptr2.
9.13.2.4 template<class T, class Compare, class Allocator, class Policy> void stm::smartptr::swap(injective_ptr< T, Compare, Allocator, Policy > & ptr1, injective_ptr< T, Compare, Allocator, Policy> & ptr2) [inline]
Exchanges the contents of the injective_ptr objects ptr1 and ptr2.
Never throws.
Referenced by stm::smartptr::injective_ptr< T, Compare, Allocator, Policy >::swap(),stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, false >::swap(),stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange >::swap(),stm::readablefile< NameT >::swap(), stm::integral_set< IntegralRangeT, RangeSetT >::swap(),and stm::integral_range< IntegralT, minVal, maxVal >::swap().
9.13.2.5 template<class T, class Compare, class Allocator, class Policy> const T ∗stm::smartptr::get_pointer (const injective_ptr< T, Compare, Allocator, Policy > & ptr)[inline]
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.14 BinMsg: Abstract Binary Message Model 76
Returns a constant pointer to the element pointed to by the injective_ptr object ptr, if ptr is not be empty,else the null pointer.
Never throws.
Definition at line 2381 of file smartptrxaids.hpp.
References stm::smartptr::injective_ptr< T, Compare, Allocator, Policy >::get().
9.13.2.6 template<class OStreamT, class T, class Compare, class Allocator, class Policy> OS-treamT & stm::smartptr::operator<< (OStreamT & os, const injective_ptr< T, Compare, Allo-cator, Policy > & ptr) [inline]
Inserts a string representation of the address of the element pointed to by ptr into the output stream os.
Definition at line 2398 of file smartptrxaids.hpp.
References stm::smartptr::injective_ptr< T, Compare, Allocator, Policy >::get().
9.13.3 Variable Documentation
9.13.3.1 const stm::dword stm::smartptr::Surjective = 0x00000001
Surjective policy flag.
Definition at line 134 of file smartptraids.hpp.
9.13.3.2 const stm::dword stm::smartptr::Multirange = 0x00000002
Multirange policy flag.
Definition at line 135 of file smartptraids.hpp.
9.14 BinMsg: Abstract Binary Message Model
Collaboration diagram for BinMsg: Abstract Binary Message Model:
BinMsg ImplementationBinMsg: Abstract Binary Message ModelSysToMath Tool Aids C++ Library
9.14.1 Detailed Description
Collection of some abstract binary message model related utilities.
The declarations of these utilities are all contained in the namespace stm::tools.
Files
• file binmsg.hppDeclarations for the abstract binary message model.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.15 CtAids: ClearCase cleartool Aids 77
Modules
• BinMsg ImplementationImplementation of the abstract binary message model related utilities.
Classes
• class stm::tools::BaseMessageContext< DataT, InputRangeT, ContextT >
Base message context type which shall be a direct or indirect public base class of its template parameterContextT.
• class stm::tools::BaseMessage< ContextT >
Abstract base class of message types for scanning from its byte_iterator_range base class object.
• class stm::tools::BinMessageContext< DataT, InputRangeT, ContextT >
Binary message context type.
• class stm::tools::BinMessage< ContextT >
Binary message scanning from a stm::byte_iterator_range.
9.15 CtAids: ClearCase cleartool Aids
Collaboration diagram for CtAids: ClearCase cleartool Aids:
CtAids ImplementationCtAids: ClearCase cleartool AidsSysToMath Tool Aids C++ Library
9.15.1 Detailed Description
Collection of some ClearCase cleartool related utilities.
The declarations of these utilities are all contained in the namespace stm::tools.
Files
• file ctaids.hppDeclarations for ClearCase cleartool aids.
Namespaces
• namespace stm::toolsNamespace for the SysToMath Tool Aids C++ Library modules.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.16 DspMsg: DSP Message Model 78
Modules
• CtAids ImplementationImplementation of ClearCase cleartool related utilities.
Classes
• class stm::tools::CtMain ClearCase cleartool aids class.
• class stm::tools::CtOperationClearCase cleartool operation class.
• class stm::tools::CtExceptionsClearCase cleartool exceptions class.
9.16 DspMsg: DSP Message Model
Collaboration diagram for DspMsg: DSP Message Model:
DspMsg ImplementationSysToMath Tool Aids C++ Library DspMsg: DSP Message Model
9.16.1 Detailed Description
Collection of some DSP message model related utilities.
The declarations of these utilities are all contained in the namespace stm::tools.
Files
• file dspmsg.hppDeclarations for the DSP message model.
Modules
• DspMsg ImplementationImplementation of the DSP message model related utilities.
Classes
• class stm::tools::DspMessage< ContextT >
DSP message contained in a binary message.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.17 BinMsg Implementation 79
9.17 BinMsg Implementation
Collaboration diagram for BinMsg Implementation:
BinMsg Implementation CtAids Implementationstm::tools::localBinMsg: Abstract Binary Message Model
9.17.1 Detailed Description
Implementation of the abstract binary message model related utilities.
Files
• file xbinmsg.hppImplementation of the abstract binary message model.
Namespaces
• namespace stm::tools::localImplementation namespace for the SysToMath Toll Aids C++ Library modules.
Classes
• class stm::tools::local::xBaseMessageContext< DataT, InputRangeT, ContextT >
stm::tools::BaseMessageContext implementation base class template.
• class stm::tools::local::xBaseMessage< ContextT >
stm::tools::BaseMessage implementation base class template.
• class stm::tools::local::xBinMessageGapstm::tools::BinMessageContext::Gap implementation base class.
• class stm::tools::local::xBinMessageContext< ContextT >
stm::tools::BinMessageContext implementation base class template.
• class stm::tools::local::xBinMessage< ContextT >
stm::tools::BinMessage implementation base class template.
9.18 CtAids Implementation
Collaboration diagram for CtAids Implementation:
BinMsg ImplementationCtAids Implementation stm::tools::localCtAids: ClearCase cleartool Aids
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.19 DspMsg Implementation 80
9.18.1 Detailed Description
Implementation of ClearCase cleartool related utilities.
Files
• file xctaids.hppImplementation of ClearCase cleartool aids.
• file ctaids.cppImplementation of ClearCase cleartool utilities.
Namespaces
• namespace stm::tools::localImplementation namespace for the SysToMath Toll Aids C++ Library modules.
Classes
• class stm::tools::local::xArgListstm::tools::Ct::ArgList implementation base class.
• class stm::tools::local::xCtstm::tools::Ct implementation base class.
• class stm::tools::local::xCtOperationstm::tools::CtOperation implementation base class.
9.19 DspMsg Implementation
Collaboration diagram for DspMsg Implementation:
DspMsg ImplementationDspMsg: DSP Message Model
9.19.1 Detailed Description
Implementation of the DSP message model related utilities.
Files
• file xdspmsg.hppImplementation of the DSP message model.
• file dspmsg.cpp
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.20 LvdsPacket Implementation 81
Implementation of the DSP message model.
Classes
• class stm::tools::local::xTraceHeaderstm::tools::DspMessage::TraceHeader implementation base class.
• class stm::tools::local::xDspMessage< ContextT >
stm::tools::DspMessage implementation base class template.
Functions
• stm::tools::local::xTraceHeader::xTraceHeader (const byte_iterator_range &range)
9.19.2 Function Documentation
9.19.2.1 stm::tools::local::xTraceHeader::xTraceHeader (const byte_iterator_range & range)[protected, inherited]
Definition at line 100 of file dspmsg.cpp.
References stm::tools::local::xTraceHeader::BbtOpCode, stm::tools::local::xTraceHeader::bfn_-, stm::tools::local::xTraceHeader::DdtOpCode, stm::tools::local::xTraceHeader::frameChips_-, stm::tools::local::xTraceHeader::Length, stm::tools::local::xTraceHeader::opCode_-, stm::tools::local::xTraceHeader::payloadLength_, stm::tools::local::xTraceHeader::size_-, stm::tools::local::xTraceHeader::userFrameNo_, and stm::tools::local::xTraceHeader::userSlotNo_.
9.20 LvdsPacket Implementation
Collaboration diagram for LvdsPacket Implementation:
LvdsPacket ImplementationLvdsPacket: LVDS Packet Model
9.20.1 Detailed Description
Implementation of the LVDS packet model related utilities.
Files
• file xlvdspacket.hppImplementation of the LVDS packet model.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.21 McBspMsg Implementation 82
Classes
• class stm::tools::local::xLvdsPacket< ContextT >
stm::tools::LvdsPacket implementation base class template.
9.21 McBspMsg Implementation
Collaboration diagram for McBspMsg Implementation:
McBspMsg ImplementationMcBspMsg: McBSP Message Model
9.21.1 Detailed Description
Implementation of the McBSP message model related utilities.
Files
• file xmcbspmsg.hppImplementation of the McBSP message model.
Classes
• class stm::tools::local::xMcBspMessage< ContextT >
stm::tools::McBspMessage implementation base class template.
Variables
• static std::string stm::tools::local::xMcBspMessage::type_ = "McBSP message"
9.21.2 Variable Documentation
9.21.2.1 template<class ContextT> std::string stm::tools::local::xMcBspMessage< ContextT>::type_ = "McBSP message" [inline, static, protected, inherited]
Definition at line 285 of file xmcbspmsg.hpp.
Referenced by stm::tools::McBspMessage< ContextT >::Type(), and stm::tools::McBspMessage< Con-textT >::type().
9.22 MsgTimestamp Implementation
Collaboration diagram for MsgTimestamp Implementation:
MsgTimestamp: Message Timestamp Model MsgTimestamp Implementation
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.23 PrintkBinMsg Implementation 83
9.22.1 Detailed Description
Implementation of the message timestamp model related utilities.
Files
• file xmsgtimestamp.hppImplementation of the message timestamp model.
Classes
• class stm::tools::local::xMsgTimestampstm::tools::MsgTimestamp implementation base class.
9.23 PrintkBinMsg Implementation
Collaboration diagram for PrintkBinMsg Implementation:
PrintkBinMsg ImplementationPrintkBinMsg: PrintkBin Message Model
9.23.1 Detailed Description
Implementation of the PrintkBin message model related utilities.
Files
• file xprintkbinmsg.hppImplementation of the PrintkBin message model.
Classes
• class stm::tools::local::xPrintkBinMessage< ContextT >
Variables
• static std::string stm::tools::local::xPrintkBinMessage::type_ = "PrintkBin message"
9.23.2 Variable Documentation
9.23.2.1 template<class ContextT> std::string stm::tools::local::xPrintkBinMessage< ContextT>::type_ = "PrintkBin message" [inline, static, protected, inherited]
Definition at line 304 of file xprintkbinmsg.hpp.
Referenced by stm::tools::PrintkBinMessage< ContextT >::Type(), and stm::tools::PrintkBinMessage<ContextT >::type().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.24 LvdsPacket: LVDS Packet Model 84
9.24 LvdsPacket: LVDS Packet Model
Collaboration diagram for LvdsPacket: LVDS Packet Model:
LvdsPacket ImplementationSysToMath Tool Aids C++ Library LvdsPacket: LVDS Packet Model
9.24.1 Detailed Description
Collection of some LVDS Packet model related utilities.
The declarations of these utilities are all contained in the namespace stm::tools.
Files
• file lvdspacket.hppDeclarations for the LVDS packet model.
Modules
• LvdsPacket ImplementationImplementation of the LVDS packet model related utilities.
Classes
• class stm::tools::LvdsPacket< ContextT >
LVDS packet contained in a binary message.
9.25 McBspMsg: McBSP Message Model
Collaboration diagram for McBspMsg: McBSP Message Model:
McBspMsg ImplementationMcBspMsg: McBSP Message ModelSysToMath Tool Aids C++ Library
9.25.1 Detailed Description
Collection of some McBSP message model related utilities.
The declarations of these utilities are all contained in the namespace stm::tools.
Files
• file mcbspmsg.hppDeclarations for the McBSP message model.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.26 MsgTimestamp: Message Timestamp Model 85
Modules
• McBspMsg ImplementationImplementation of the McBSP message model related utilities.
Classes
• class stm::tools::McBspMessage< ContextT >
McBSP message scanning from a BaseMessage’s byte_iterator_range.
9.26 MsgTimestamp: Message Timestamp Model
Collaboration diagram for MsgTimestamp: Message Timestamp Model:
MsgTimestamp: Message Timestamp Model MsgTimestamp ImplementationSysToMath Tool Aids C++ Library
9.26.1 Detailed Description
Collection of some message timestamp model related utilities.
The declarations of these utilities are all contained in the namespace stm::tools.
Files
• file msgtimestamp.hppDeclarations for the message timestamp model.
Modules
• MsgTimestamp ImplementationImplementation of the message timestamp model related utilities.
Classes
• class stm::tools::MsgTimestampMessage timestamp type.
9.27 PrintkBinMsg: PrintkBin Message Model
Collaboration diagram for PrintkBinMsg: PrintkBin Message Model:
PrintkBinMsg ImplementationPrintkBinMsg: PrintkBin Message ModelSysToMath Tool Aids C++ Library
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.28 SysToMath Tool Aids C++ Library 86
9.27.1 Detailed Description
Collection of some PrintkBin message model related utilities.
The declarations of these utilities are all contained in the namespace stm::tools.
Files
• file printkbinmsg.hppDeclarations for the PrintkBin message model.
Modules
• PrintkBinMsg ImplementationImplementation of the PrintkBin message model related utilities.
Classes
• class stm::tools::PrintkBinMessage< ContextT >
PrintkBin message scanning from a the BaseMessage’s byte_iterator_range.
9.28 SysToMath Tool Aids C++ Library
Collaboration diagram for SysToMath Tool Aids C++ Library:
BinMsg: Abstract Binary Message Model
MsgTimestamp: Message Timestamp Model
PrintkBinMsg: PrintkBin Message Model
CtAids: ClearCase cleartool Aids
McBspMsg: McBSP Message Model
SysToMath Tool Aids C++ Library
LvdsPacket: LVDS Packet Model
DspMsg: DSP Message Model
9.28.1 Detailed Description
SysToMath Tool Aids C++ Library (stmtoolaids).
The SysToMath Tool Aids C++ Library consists of several library objects providing various macros, func-tions, function templates, classes and class templates facilitating some tool related computational tasks.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.29 DivAids Test 87
Files
• file toolaidsconfig.hppManagement of library generation and of automatic library choice for the SysToMath Tool Aids C++ librarystmaids.
• file toolaids.hppCentral include file for SysToMath Tool Aids C++ library.
Modules
• BinMsg: Abstract Binary Message ModelCollection of some abstract binary message model related utilities.
• CtAids: ClearCase cleartool AidsCollection of some ClearCase cleartool related utilities.
• DspMsg: DSP Message ModelCollection of some DSP message model related utilities.
• LvdsPacket: LVDS Packet ModelCollection of some LVDS Packet model related utilities.
• McBspMsg: McBSP Message ModelCollection of some McBSP message model related utilities.
• MsgTimestamp: Message Timestamp ModelCollection of some message timestamp model related utilities.
• PrintkBinMsg: PrintkBin Message ModelCollection of some PrintkBin message model related utilities.
9.29 DivAids Test
Collaboration diagram for DivAids Test:
DivAids TestDivAids: Diverse Aids
9.29.1 Detailed Description
Demonstration of the usage and tests of the implementation of the SysToMath Aids C++ Library moduleDivAids.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.30 FilesysAids Test 88
Files
• file divaidstest.cppImplementation of a console program demostrating the usage and testing the implementation of the Sys-ToMath Aids C++ Library module DivAids.
Functions
• int main (int argc, char ∗argv[ ])
Variables
• const char ∗ Copyright = "(C) 2006-2008 Tom Michaelis, SysToMath"• const char ∗ Version = "1.10-r347"
9.29.2 Function Documentation
9.29.2.1 int main (int argc, char ∗ argv[ ])
Definition at line 81 of file divaidstest.cpp.
9.29.3 Variable Documentation
9.29.3.1 const char∗ Copyright = "(C) 2006-2008 Tom Michaelis, SysToMath"
Examples:
divaidstest.cpp, filesystest.cpp, gencrctest.cpp, smartptrtest.cpp, and sudoku.cpp.
Definition at line 74 of file divaidstest.cpp.
Referenced by main().
9.29.3.2 const char∗ Version = "1.10-r347"
Examples:
divaidstest.cpp, filesystest.cpp, gencrctest.cpp, smartptrtest.cpp, and sudoku.cpp.
Definition at line 75 of file divaidstest.cpp.
Referenced by main().
9.30 FilesysAids Test
Collaboration diagram for FilesysAids Test:
FilesysAids TestFilesysAids: File System Aids
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.30 FilesysAids Test 89
9.30.1 Detailed Description
Demonstration of the usage and tests of the implementation of the SysToMath Aids C++ Library moduleFilesysAids.
Files
• file filesystest.cppImplementation of a console program demostrating the usage and testing the implementation of the Sys-ToMath Aids C++ Library module FilesysAids.
Functions
• int main (int argc, char ∗argv[ ])
Variables
• const char ∗ Copyright = "(C) 2006-2008 Tom Michaelis, SysToMath"• const char ∗ Version = "1.10-r347"• static const char ∗ man [ ]
Man page.
9.30.2 Function Documentation
9.30.2.1 int main (int argc, char ∗ argv[ ])
Definition at line 112 of file filesystest.cpp.
References Copyright, man, stm::filespeclist::NoBraceExpansion, stm::filespec::NoBracketExpr,stm::filespec::NoCharClass, stm::filespec::NoFlags, stm::filespeclist::SingleSpec, stmCmdLineCre-ate(), stmCmdLineGetArg(), stmCmdLineGetArgCount(), stmCmdLineGetCurrentArgIndex(), stm-CmdLineGetCurrentOptionArg(), stmCmdLineGetCurrentOptionName(), stmCmdLineGetErrbuf(),stmCmdLineGetFirstOptionId(), stmCmdLineGetNextOptionId(), stmCmdLineGetOpterr, stmCmd-LineGetProg(), StmCmdLineOptionArgError, stmCmdLinePrintfErrbuf(), stmCmdLineSetOpterr,StmCmdOptSpecOnlyOption, StmCmdOptSpecRequiresArg, StmDebugAidsErrmsg, StmElements,StmId, stmPrintManual(), stmPrintSynopsis(), StmRectrlTry, stm::filespec::UseExtRegularExpr,stm::filespec::UseMultipleDirOperator, and Version.
9.30.3 Variable Documentation
9.30.3.1 const char∗ Copyright = "(C) 2006-2008 Tom Michaelis, SysToMath"
Definition at line 74 of file filesystest.cpp.
9.30.3.2 const char∗ Version = "1.10-r347"
Definition at line 75 of file filesystest.cpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.31 GenCRC Test 90
9.30.3.3 const char∗ man[ ] [static]
Initial value:
{"NAME "," filesystest - test classes and class templates of stm/filesysaids.hpp "," ","SYNOPSIS "," filesystest [(--option=<flag>)...] [--stem=<spec>] <spec> "," filesystest --help "," filesystest --version "," ","DESCRIPTION "," <flag> is one of "," NoCharClass "," NoBracketExpr "," UseExtRegularExpr "," UseMultipleDirOperator "," NoBraceExpansion "," SingleSpec "," NoDirectories "," NoPlainFiles "," StoreRelative "}
Man page.
Definition at line 79 of file filesystest.cpp.
9.31 GenCRC Test
Collaboration diagram for GenCRC Test:
GenCRC: Generic CRC Generation GenCRC Test
9.31.1 Detailed Description
Demonstration of the usage and tests of the implementation of the SysToMath Aids C++ Library moduleGenCRC.
Files
• file gencrctest.cppImplementation of a console program demostrating the usage and testing the functionality of the classtemplate stm::crc which provides a generic CRC generator.
Functions
• int main (int argc, char ∗argv[ ])
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.32 SmartptrAids Test 91
Variables
• const char ∗ Copyright = "(C) 2003-2008 Tom Michaelis, SysToMath"• const char ∗ Version = "1.10-r347"
9.31.2 Function Documentation
9.31.2.1 int main (int argc, char ∗ argv[ ])
Definition at line 85 of file gencrctest.cpp.
9.31.3 Variable Documentation
9.31.3.1 const char∗ Copyright = "(C) 2003-2008 Tom Michaelis, SysToMath"
Definition at line 75 of file gencrctest.cpp.
9.31.3.2 const char∗ Version = "1.10-r347"
Definition at line 76 of file gencrctest.cpp.
9.32 SmartptrAids Test
Collaboration diagram for SmartptrAids Test:
SmartptrAids: Smart Pointer Aids SmartptrAids Test
9.32.1 Detailed Description
Demonstration of the usage and tests of the implementation of the SysToMath Aids C++ Library moduleSmartptrAids.
Files
• file smartptrtest.cppImplementation of a console program demostrating the usage and testing the implementation of the Sys-ToMath Aids C++ Library module SmartptrAids.
Classes
• struct Xyz• class Slot• class Node• struct Operation• struct TestPtr< Policy >
• struct TestSet< Policy >
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.32 SmartptrAids Test 92
Typedefs
• typedef stm::injective_ptr< Xyz > XyzPtr• typedef stm::bijective< Node >::set NodeSet
Functions
• bool operator< (const Xyz &e1, const Xyz &e2)• template<class Policy>
void testptr (const Operation &op)• template<class Policy>
void testset (const Operation &op)• int main (int argc, char ∗argv[ ])
Variables
• const char ∗ Copyright = "(C) 2006-2008 Tom Michaelis, SysToMath"• const char ∗ Version = "1.10-r347"• static const char ∗ man [ ]
Man page.
• XyzPtr ptr1• XyzPtr ptr2 = Xyz (3)• Xyz xyz1 = ∗ptr2• Xyz xyz2 (7, ptr1)• const Xyz ∗ p = xyz2.ptr.get ()• NodeSet nodes• Slot rootSlot• Node::Ptr rootNode = nodes.insert (Node (rootSlot))
9.32.2 Typedef Documentation
9.32.2.1 typedef stm::injective_ptr<Xyz> XyzPtr
Definition at line 170 of file smartptrtest.cpp.
9.32.2.2 typedef stm::bijective<Node>::set NodeSet
Examples:
smartptrtest.cpp.
Definition at line 202 of file smartptrtest.cpp.
9.32.3 Function Documentation
9.32.3.1 bool operator< (const Xyz & e1, const Xyz & e2)
Examples:
smartptrtest.cpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.32 SmartptrAids Test 93
Definition at line 192 of file smartptrtest.cpp.
References Xyz::id, and Xyz::ptr.
9.32.3.2 template<class Policy> void testptr (const Operation & op) [inline]
Examples:
smartptrtest.cpp.
Definition at line 1092 of file smartptrtest.cpp.
References Operation::archive, Operation::Archive::Bin, Operation::dir, Operation::loadOnly, StmDe-bugAidsVerify, stm::path< NameT >::string(), TestPtr< Policy >::tell(), Operation::Archive::Txt, andOperation::Archive::Xml.
9.32.3.3 template<class Policy> void testset (const Operation & op) [inline]
Examples:
smartptrtest.cpp.
Definition at line 1150 of file smartptrtest.cpp.
References Operation::archive, Operation::Archive::Bin, TestSet< Policy >::define(), Operation::dir,TestSet< Policy >::dwptr0, TestSet< Policy >::dwptr1, Operation::loadOnly, StmDebugAidsVerify,stm::path< NameT >::string(), TestSet< Policy >::strptr0, TestSet< Policy >::strptr1, TestSet< Policy>::tell(), Operation::Archive::Txt, and Operation::Archive::Xml.
9.32.3.4 int main (int argc, char ∗ argv[ ])
Definition at line 699 of file smartptrtest.cpp.
References Operation::Archive::All, Operation::Mode::All, Operation::Type::All, Operation::archive, Op-eration::Mode::Bij, Operation::Archive::Bin, Copyright, Operation::dir, Operation::Mode::Inj, Opera-tion::loadOnly, man, Operation::mode, Operation::Type::Ptr, Operation::Type::Set, stmCmdLineCre-ate(), stmCmdLineDestroy(), stmCmdLineGetArg(), stmCmdLineGetArgCount(), stmCmdLineGetCur-rentArgIndex(), stmCmdLineGetCurrentOptionArg(), stmCmdLineGetCurrentOptionName(), stmCmdLi-neGetErrbuf(), stmCmdLineGetFirstOptionId(), stmCmdLineGetNextOptionId(), stmCmdLineGetOpterr,stmCmdLineGetProg(), StmCmdLineOptionArgError, stmCmdLinePrintfErrbuf(), stmCmdLineSetOpterr,StmCmdOptSpecOnlyOption, StmCmdOptSpecRequiresArg, StmDebugAidsErrmsg, StmDebugAidsVer-ify, StmElements, StmId, stmPrintManual(), stmPrintManualFooter(), stmPrintManualHeader(), stm-PrintOptionHelp(), stmPrintSynopsis(), Operation::Archive::Txt, Operation::type, Version, and Opera-tion::Archive::Xml.
9.32.4 Variable Documentation
9.32.4.1 const char∗ Copyright = "(C) 2006-2008 Tom Michaelis, SysToMath"
Definition at line 74 of file smartptrtest.cpp.
9.32.4.2 const char∗ Version = "1.10-r347"
Definition at line 75 of file smartptrtest.cpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.32 SmartptrAids Test 94
9.32.4.3 const char∗ man[ ] [static]
Initial value:
{"NAME "," smartptrtest - test classes and class templates of smartptraids.hpp "," ","SYNOPSIS "," smartptrtest [--load-only] [--type=<test-type>] [--mode=<test-mode>] "," [--archive=<archive-type>] [--dir=<directory>] "," smartptrtest --help [<option-name>...] "," smartptrtest --version "," ","DESCRIPTION "," The command ’smartptrtest’ tests classes and class templates of the "" SysToMath library ’libstmaids’ declared in the C++ header file "" ’stm/smartptraids.hpp’. "," Unless option --load-only is used, at first boost serialization "" archives of the types configured by option --archive containing "" reference data of test types selected by option --type in the modes "" given by option --mode are created. Then these archives are loaded "" and their contents are compared with the reference data used to create"" the archives. "," The archive files are stored in the directory supplied by option --dir"" and are named ’test-<test-mode>_<test-type>.<archive-type>’. "," The test protocol is written to standard output. "" ","OPTIONS "," --help "," -h If no argument <option-name> follows, print the command man "" page on standard output, else the description of the options "" <option-name> and exit with exit code 2. The arguments "" <option-name> shall be stated without leading ’-’ or ’--’. "," "," --version "," -V Print version info on standard output and exit with exit code "" 2. "," "," --load-only "," -l "," Do not create boost serialization archives before loading them."" Assume that the archives to be loaded already exist. "," By default all archives needed are created before loading them "" again. "," "," --type=<test-type> "," -t test-type "," Test type templates to be handled: <test-type> is one of the "" following arguments: "," ’ptr’: TestPtr test type template "," ’set’: TestSet test type template, "," ’all’: all of the above test type templates (default). "," "," --mode=<test-mode> "," -m test-mode "," Test modes to be handled: <test-mode> is one of the following "" arguments: "," ’injective’ or ’inj’: injective_ptr based test mode, "," ’bijective’ or ’bij’: bijective_ptr based test mode, "," ’all’: all of the above test modes (default). "," "," --archive=<archive-type> "," -a <archive-type> "," Boost serialization archive types to be handled: <archive-type>"" is one of the following arguments: "," ’txt’: text archive type ",
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.32 SmartptrAids Test 95
" ’bin’: binary archive type, "," ’xml’: XML archive type, "," ’all’: all of the above archive types (default). "," "," --dir=<directory> "," -d <directory> "," Set <directory> as the directory where archive files are "" created and loaded from. By default this is the current "" directory. "}
Man page.
Definition at line 79 of file smartptrtest.cpp.
9.32.4.4 XyzPtr ptr1
Examples:
smartptrtest.cpp.
Definition at line 172 of file smartptrtest.cpp.
Referenced by stm::smartptr::operator!=(), stm::smartptr::operator<(), and stm::smartptr::operator==().
9.32.4.5 XyzPtr ptr2 = Xyz (3)
Examples:
smartptrtest.cpp.
Definition at line 187 of file smartptrtest.cpp.
Referenced by stm::smartptr::operator!=(), stm::smartptr::operator<(), and stm::smartptr::operator==().
9.32.4.6 Xyz xyz1 = ∗ptr2
Examples:
smartptrtest.cpp.
Definition at line 188 of file smartptrtest.cpp.
9.32.4.7 Xyz xyz2(7, ptr1)
Examples:
smartptrtest.cpp.
9.32.4.8 const Xyz∗ p = xyz2.ptr.get ()
Examples:
smartptrtest.cpp.
Definition at line 190 of file smartptrtest.cpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.33 SysToMath Aids C++ Library Test 96
9.32.4.9 NodeSet nodes
Examples:
smartptrtest.cpp.
Definition at line 204 of file smartptrtest.cpp.
9.32.4.10 Slot rootSlot
Examples:
smartptrtest.cpp.
Definition at line 281 of file smartptrtest.cpp.
9.32.4.11 Node::Ptr rootNode = nodes.insert (Node (rootSlot))
Examples:
smartptrtest.cpp.
Definition at line 282 of file smartptrtest.cpp.
9.33 SysToMath Aids C++ Library Test
Collaboration diagram for SysToMath Aids C++ Library Test:
SysToMath Aids C++ Library TestSysToMath Aids C++ Library
9.33.1 Detailed Description
Demonstration of the usage and tests of the implementation of the SysToMath Aids C++ Library stmaids.
Files
• file sudoku.cppImplementation of a console program demostrating the usage and testing the implementation of the Sys-ToMath Aids C++ Library stmaids.
Classes
• class SudokuSudoku model.
• class Sudoku::StateSudoku state.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.33 SysToMath Aids C++ Library Test 97
Functions
• int main (int argc, char ∗∗argv)Main function implementing the command sudoku.
Variables
• const char ∗ Copyright = "(C) 2006-2008 Tom Michaelis, SysToMath"• const char ∗ Version = "1.10-r347"• static const char ∗ man [ ]
Man page.
9.33.2 Function Documentation
9.33.2.1 int main (int argc, char ∗∗ argv)
Main function implementing the command sudoku.
Parameters:
← argc Argument count.
← argv Pointer to an array of argc argument strings followed by an additional NULL array element.
Returns:
0, if no error occurred.1, if the command was used erroneously or failed.2, if one of the command line options –help or –versionn has been used.
Definition at line 970 of file sudoku.cpp.
References Copyright, Sudoku::FirstSolution, Sudoku::generate(), Sudoku::State::generate(), man, Su-doku::RandomSolution, Sudoku::read(), Sudoku::silent, Sudoku::solve(), stmCmdLineCreate(), stm-CmdLineDestroy(), stmCmdLineGetArg(), stmCmdLineGetArgCount(), stmCmdLineGetCurrentArgIn-dex(), stmCmdLineGetCurrentOptionArg(), stmCmdLineGetCurrentOptionName(), stmCmdLineGetEr-ror(), stmCmdLineGetFirstOptionId(), stmCmdLineGetNextOptionId(), stmCmdLineGetProg(), StmCmd-LineOptionArgError, StmCmdLineOptionError, stmCmdLineSetErrfp(), stmCmdLineSetError(), Stm-CmdOptSpecOnlyOption, StmCmdOptSpecRequiresArg, StmDebugAidsVerify, StmElements, Stm-False, StmId, stmPrintManual(), stmPrintManualFooter(), stmPrintManualHeader(), stmPrintOption-Help(), stmPrintSynopsis(), StmTrue, Sudoku::State::sudoku, Sudoku::test(), Sudoku::State::u, Su-doku::UniqueSolution, Version, and Sudoku::write().
9.33.3 Variable Documentation
9.33.3.1 const char∗ Copyright = "(C) 2006-2008 Tom Michaelis, SysToMath"
Definition at line 74 of file sudoku.cpp.
9.33.3.2 const char∗ Version = "1.10-r347"
Definition at line 75 of file sudoku.cpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
9.33 SysToMath Aids C++ Library Test 98
9.33.3.3 const char∗ man[ ] [static]
Initial value:
{"NAME "," sudoku - generate and/or solve a sudoku "," ","SYNOPSIS "," sudoku [--silent] "," ([--generate=<dim>] | "," [--gen-only=<dim>] | "," [--input=<file> [--solution=(first|random|unique)]]) "," [--output=<file>] "," sudoku --help [<option-name>...] "," sudoku --version "," ","DESCRIPTION "," The command solves a sudoku which it either generates or reads from "" its input. Unless suppresed by option --gen-only, the sudoku is "" solved according to option --choice, if applicable. The resulting "" sudoku either solved or not is written to the output. "," The input format is ASCII based. Empty lines and line parts after the"" comment character ’#’ are ignored. "," The first relevant file entry shall be a decimal number in the range "" [2, 10] which defines the dimension n of the sudoku. After that n^4 "" decimal numbers in the range [0, n] shall follow. The numbers shall "" be separated by whitespace or comments as stated above. The number 0 "" designates the positions to determine for the solution. "," On success the command returns with exit code 0. If a usage or "" processing error occurred, the exit code is 1. "," ","OPTIONS "," --help "," -h If no argument <option-name> follows, print the command man "" page on standard output, else the description of the options "" <option-name> and exit with exit code 2. The arguments "" <option-name> shall be stated without leading ’-’ or ’--’. "," "," --version "," -V Print version info on standard output and exit with exit code "" 2. "," "," --silent "," -s Suppress all diagnostic messages on stdout and stderr. "," "," --generate=<dim> "," --gen=<dim> "," -g <dim> "," Generate the sudoku to be solved with dimension <dim> in the "" range [2, 10] instead of reading it from the input and solve "" it. This option is mutually exclusive to the options --input "" and --gen-only. "," "," --gen-only <dim> "," -G <dim> "," Generate the sudoku to be solved with dimension <dim> in the "" range [2, 10] instead of reading it from the input without "" solving it. This option is mutually exclusive to the options "" --input and --generate. "," "," --input=<file> "," -i <file> "," Read the sudoku to be solved from <file> and solve it. The "" default input is stdin. This option is mutually exclusive to "" the options --generate and --gen-only. "," ",
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
10 SysToMath C++ Libraries Implementation Directory Documentation 99
" --solution=(first|random|unique) "," -S (first|random|unique) "," Determines the output, if the sudoku read with option --input "" is not uniquely solvable. Unless the option argument is "" ’unique’, according to the option argument the first or a "" randomly chosen solution constitutes the output. If the option"" argument is ’unique’, the non-null output elements are exactly "" those belonging to each possible solution. The default "" behaviour is --solution=first. "," As this option is only allowed in conjunction with option "" --input, it is mutually exclusive to the options --generate and"" --gen-only. "," "," --output=<file> "," -o <file> "," Write the output to <file>. The default output is stdout. If "" this option is the last one, the option specification --output="" or -o can be omitted for convenience. "}
Man page.
Definition at line 79 of file sudoku.cpp.
10 SysToMath C++ Libraries Implementation Directory Documen-tation
10.1 stmtoolaids/stm/toolaids/impl/ Directory Reference
toolaids
impl
stmaids
14
Files
• file toolaidsconfig.hppManagement of library generation and of automatic library choice for the SysToMath Tool Aids C++ librarystmaids.
• file xbinmsg.hppImplementation of the abstract binary message model.
• file xctaids.hppImplementation of ClearCase cleartool aids.
• file xdspmsg.hpp
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
10.2 stmaids/stm/impl/ Directory Reference 100
Implementation of the DSP message model.
• file xlvdspacket.hppImplementation of the LVDS packet model.
• file xmcbspmsg.hppImplementation of the McBSP message model.
• file xmsgtimestamp.hppImplementation of the message timestamp model.
• file xprintkbinmsg.hppImplementation of the PrintkBin message model.
10.2 stmaids/stm/impl/ Directory Reference
stm
impl
Files
• file aidsconfig.hppManagement of library generation and of automatic library choice for the SysToMath Aids C++ librarystmaids.
• file debugxaids.hppImplementation of the debugging support facilities.
• file divxaids.hppImplementation of diverse aids.
• file filesysxaids.hppImplementation of file system aids.
• file genxcrc.hppImplementation of generic CRC remainder polynomial generation.
• file loggerxaids.hppImplementation of formatted logging aids.
• file smartptrxaids.hppImplementation of smart pointer aids.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
10.3 stmtoolaids/stm/ Directory Reference 101
10.3 stmtoolaids/stm/ Directory Reference
stmtoolaids
stmtoolaids
stmaids
14
Directories
• directory toolaids
10.4 stmaids/stm/ Directory Reference
stmaids
stm
impl
6
Directories
• directory impl
Files
• file aids.hppCentral include file for SysToMath Aids C++ library.
• file debugaids.cppImplementation of the debugging support facilities.
• file debugaids.hppDefinition of debugging support macros and functions.
• file divaids.cppImplementation of general utilities.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
10.5 stmaids/ Directory Reference 102
• file divaids.hppDeclarations for diverse aids.
• file filesysaids.cppImplementation of file system related utilities.
• file filesysaids.hppDeclarations for file system aids.
• file gencrc.hppDeclarations of generic CRC remainder polynomial generation.
• file loggeraids.hppDeclarations of formatted logging aids.
• file smartptraids.hppDeclarations of smart pointer aids.
10.5 stmaids/ Directory Reference
stmaids
stm
test
11
Directories
• directory stm• directory test
10.6 stmtoolaids/ Directory Reference
stmtoolaidsstm
stmaids
14
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
10.7 stmaids/test/ Directory Reference 103
Directories
• directory stm
10.7 stmaids/test/ Directory Reference
stmaids
test
stm
11
Files
• file divaidstest.cppImplementation of a console program demostrating the usage and testing the implementation of the Sys-ToMath Aids C++ Library module DivAids.
• file filesystest.cppImplementation of a console program demostrating the usage and testing the implementation of the Sys-ToMath Aids C++ Library module FilesysAids.
• file gencrctest.cppImplementation of a console program demostrating the usage and testing the functionality of the classtemplate stm::crc which provides a generic CRC generator.
• file smartptrtest.cppImplementation of a console program demostrating the usage and testing the implementation of the Sys-ToMath Aids C++ Library module SmartptrAids.
• file sudoku.cppImplementation of a console program demostrating the usage and testing the implementation of the Sys-ToMath Aids C++ Library stmaids.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
10.8 stmtoolaids/stm/toolaids/ Directory Reference 104
10.8 stmtoolaids/stm/toolaids/ Directory Reference
stm
toolaids
impl
7
stmaids
14
Directories
• directory impl
Files
• file binmsg.hppDeclarations for the abstract binary message model.
• file ctaids.cppImplementation of ClearCase cleartool utilities.
• file ctaids.hppDeclarations for ClearCase cleartool aids.
• file dspmsg.cppImplementation of the DSP message model.
• file dspmsg.hppDeclarations for the DSP message model.
• file lvdspacket.hppDeclarations for the LVDS packet model.
• file mcbspmsg.hppDeclarations for the McBSP message model.
• file msgtimestamp.hppDeclarations for the message timestamp model.
• file printkbinmsg.hppDeclarations for the PrintkBin message model.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
11 SysToMath C++ Libraries Implementation Namespace Documentation 105
• file toolaids.hppCentral include file for SysToMath Tool Aids C++ library.
11 SysToMath C++ Libraries Implementation Namespace Docu-mentation
11.1 stm Namespace Reference
11.1.1 Detailed Description
Namespace for the SysToMath C++ Libraries.
Classes
• class byte_iterator_rangeByte iterator range class.
• class integral_rangeClass template representing a range of integral objects of type IntegralT constrained by the minimal andmaximal values minVal and maxVal.
• class integral_setClass template integral_set is a set container representing a set of integral type objects constrained byminimal and maximal values wrapping a set of integral ranges.
• class conditionCondition class.
• class system_conditionSystem condition class.
• class scoped_lockScoped lock class.
• class system_scoped_lockSystem scoped lock class.
• struct fmtflagsBase class of class template stm::hexfmt specifying format flags.
• class hexfmtClass template allowing to format the unsigned number held as hexadecimal string.
• class hexfmt< ElemT ∗, DefaultFlags >
Class template partial specialization allowing to format the pointer held as hexadecimal string.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
11.1 stm Namespace Reference 106
• class fixedfmtClass template allowing to format the floating point number of type FloatT held on an output stream in fixedpoint notation using a specified precision.
• struct spaceUnary predicate functor template determining if a CharT object is a white space as defined by the currentlocale.
• struct nospaceUnary predicate functor template determining if a CharT object is no white space as defined by the currentlocale.
• class pstringClass to represent a std::string with a case unsensitive order relation on Windows systems else with a casesensitive order relation used for file system element naming.
• class numpstringClass to represent a file system name with a case unsensitive order relation on Windows systems else with acase case sensitive order relation collating numerically correct.
• class pathClass template path refining boost::filesystem::path.
• class readablefileClass template representing a file named by its NameT subobject which is guaranteed to be accessible forreading and holding its size at the time of definition.
• class inputrangeClass template representing a range of input files.
• class inputseq• class inputrange_iterator
Input iterator class template reading successive byte ranges from the input range of the ContextT object forwhich it was constructed.
• class filespecClass to specify file system element names.
• class filespeclistList class of filespec objects.
• class filefindContainer class representing existing file system elements defined by a file spec using pattern matchingbased file name expansion.
• class crcClass template crc provides a means to generate cyclic redundancy check (CRC) remainder polynomials oftype RemPolT over buffers of byte-like objects.
• struct has_pow2size• class logger_base
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
11.1 stm Namespace Reference 107
Common base class of all basic_logger class template specializations.
• class basic_loggerClass template to manage formatted logging on an output stream (normally a log file) and optionally on asecond stream (normally a console) and on the system log (see stm::syslog()).
• class loggerClass template to manage formatted logging on a std::string based output stream (normally a log file)and optionally on a second std::string based stream (normally a console, by default std::cout, if templateparameter errorConsole is false (the default), or else std::cerr).
• class wloggerClass template to manage formatted logging on a std::wstring based output stream (normally a log file) andoptionally on a second std::wstring based stream (normally a console, by default std::wcout, if templateparameter errorConsole is false (the default), or else std::wcerr).
Namespaces
• namespace bufferNamespace containing all buffer related utilities.
• namespace rectrlNamespace for regular expression matching issues.
• namespace localImplementation namespace for the SysToMath C++ Libraries.
• namespace smartptrNamespace for all smart pointer aids class templates.
• namespace toolsNamespace for the SysToMath Tool Aids C++ Library modules.
Common unsigned and signed integer types
• typedef boost::uint8_t byte• typedef boost::uint16_t word• typedef boost::uint32_t dword• typedef boost::uint64_t qword• typedef boost::int8_t int8• typedef boost::int16_t int16• typedef boost::int32_t int32• typedef boost::int64_t int64• typedef boost::uint_t< sizeof(void ∗)∗CHAR_BIT >::leas addrword )
Unsigned integer type capable of holding an address.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
11.1 stm Namespace Reference 108
Endianness
• typedef boost::mpl::bool_< __BYTE_ORDER==__LITTLE_ENDIAN > littleendianType being boost::mpl::true_ or boost::mpl::false_ depending on the host endianness.
• typedef boost::mpl::bool_< __BYTE_ORDER==__BIG_ENDIAN > bigendianType being boost::mpl::true_ or boost::mpl::false_ depending on the host endianness.
• bool hostlittleendian ()Returns true, if the host byte order is little-endian.
• bool hostbigendian ()Returns true, if the host byte order is big-endian.
Typedefs
• typedef numpstring numpath• typedef readablefile< numpstring > sizedfile
For cenvenience sizedfile is a synonym for readablefile<numpstring>.
Enumerations
• enum SyslogFlags {
SyslogNoLog = 0x00000000,
SyslogInfo = 0x00000001,
LogInfo = 0x00000001,
SyslogWarning = 0x00000002,
LogWarning = 0x00000002,
SyslogError = 0x00000003,
LogError = 0x00000003,
SyslogLevelMask = 0x00000003,
LogLevelMask = 0x00000003,
SyslogPerror = 0x00010000,
LogPerror = 0x00010000,
SyslogNoPerror = 0x00020000,
LogNoPerror = 0x00020000 }Syslog flags.
Functions
• void initSyslog (bool perror=false, const std::string &prog=std::string())Initialize syslog().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
11.1 stm Namespace Reference 109
• void syslog (const std::string &message, unsigned int flags=SyslogInfo)Output message to the system log according to flags.
• template<class IStreamT, typename IntegralT, IntegralT minVal, IntegralT maxVal>IStreamT & operator>> (IStreamT &is, integral_range< IntegralT, minVal, maxVal > &range)
Extract the integral range formatted as single integral number or as expression "first-last" with integralnumbers first < last enclosed in parentheses from the input stream is and store it in the integral range.
• template<class OStreamT, typename IntegralT, IntegralT minVal, IntegralT maxVal>OStreamT & operator<< (OStreamT &os, const integral_range< IntegralT, minVal, maxVal >&range)
Insert the integral range held by range into the output stream os formatted as single decimal numbers orexpression "first-last" with decimal numbers first < last.
• template<class IStreamT, class IntegralRangeT, class RangeSetT>
IStreamT & operator>> (IStreamT &is, integral_set< IntegralRangeT, RangeSetT > &set)Extract the integral ranges formatted as comma separated sequence of single integral numbers and/or ex-pressions "first-last" with integral numbers first < last enclosed in parentheses from the input stream is andstore them in the integral set.
• template<class OStreamT, class IntegralRangeT, class RangeSetT>
OStreamT & operator<< (OStreamT &os, const integral_set< IntegralRangeT, RangeSetT >&set)
Insert the integral ranges held by the integral set into the output stream os formatted as comma separatedsequence of single decimal numbers and/or expressions "first-last" with decimal numbers first < last.
• template<class OStreamT, typename UnsignedT, dword DefaultFlags>OStreamT & operator<< (OStreamT &os, const hexfmt< UnsignedT, DefaultFlags > &val)
Insert the value held by val into the output stream os as hexadecimal string formatted according to the flagsin effect.
• template<class OStreamT, typename ElemT, dword DefaultFlags>OStreamT & operator<< (OStreamT &os, const hexfmt< ElemT ∗, DefaultFlags > &ptr)
Insert the value held by ptr into the output stream os as hexadecimal string according to the flags in effect.
• template<class OStreamT, typename FloatT>
OStreamT & operator<< (OStreamT &os, const fixedfmt< FloatT > &val)Insert the value held by val into the output stream os in fixed point notation using the precision specified byval.
• template<typename ScalarT>
dword nrOfSetBits (ScalarT value)Function template returning the number of set bits of a ScalarT value.
• template<class StringT>
StringT::size_type clamped_offset (const StringT &str, typename StringT::size_type pos)Function template returning the offset pos of the string str clamped by its length.
• template<class StringT>
StringT::size_type clamped_rest (const StringT &str, typename StringT::size_type pos)Function template returning the length of the string str beginning with offset pos clamped by the string’slength.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
11.1 stm Namespace Reference 110
• template<class StringT>
StringT trim_back (const StringT &str)Function template returning a copy of str.substr without trailing white space characters as defined by thecurrent locale.
• template<class StringT>
StringT trim_back (const StringT &str, typename StringT::size_type pos)Function template returning a copy of str.substr (0, pos) without trailing white space characters as definedby the current locale.
• template<class StringT>
StringT::size_type find_trim_back (const StringT &str)Function template returning trim_back (str).size ().
• template<class StringT>
StringT::size_type find_trim_back (const StringT &str, typename StringT::size_type pos)Function template returning trim_back (str, pos).size ().
• template<class StringT>
StringT::size_type find_token_end (const StringT &str, typename StringT::size_type pos=0)Function template returning the least index npos >= pos such that npos == str.length () or str [npos] iswhite space.
• template<class StringT>
StringT trim_back (const StringT &str, const StringT &sepchars)Function template returning a copy of str without trailing characters from sepchars.
• template<class StringT>
StringT trim_back (const StringT &str, const StringT &sepchars, typename StringT::size_type pos)Function template returning a copy of str.substr (0, pos) without trailing characters from sepchars.
• template<class StringT>
StringT::size_type find_trim_back (const StringT &str, const StringT &sepchars)Function template returning trim_back (str, sepchars).size ().
• template<class StringT>
StringT::size_type find_trim_back (const StringT &str, const StringT &sepchars, typenameStringT::size_type pos)
Function template returning trim_back (str, sepchars, pos).size ().
• template<class StringT>
StringT::size_type find_token_end (const StringT &str, const StringT &sepchars, typenameStringT::size_type pos=0)
Function template returning the least index npos >= pos with npos == str.length () or str [npos] is one ofthe characters of sepchars.
• template<class StringT>
StringT trim_front (const StringT &str, typename StringT::size_type pos=0)Function template returning a copy of str.substr (pos) without leading white space characters as defined bythe current locale.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
11.1 stm Namespace Reference 111
• template<class StringT>
StringT::size_type find_trim_front (const StringT &str, typename StringT::size_type pos=0)Function template returning str.size () - trim_front (str, pos).size ().
• template<class StringT>
StringT trim_front (const StringT &str, const StringT &sepchars, typename StringT::size_typepos=0)
Function template returning a copy of str.substr (pos) without leading characters from sepchars.
• template<class StringT>
StringT::size_type find_trim_front (const StringT &str, const StringT &sepchars, typenameStringT::size_type pos=0)
Function template returning str.size () - trim_front (str, sepchars, pos).size ().
• template<class StringT>
StringT trim (const StringT &str)Function template returning a copy of str without leading and trailing white space characters as defined bythe current locale.
• template<class StringT>
StringT trim (const StringT &str, const StringT &sepchars)Function template returning a copy of str without leading and trailing characters from sepchars.
• int makedir (const boost::filesystem::path &path)Make directory path.
• int getkey ()Read one character from the console and return it as int on success, else return -1 and set the variable errnoaccording to the error.
• bool isWin32Executable (const std::string &path)The function isWin32Executable returns true, if path (which may not exist) designates a WIN32 executablefile (case unsensitively the extension ’.exe’, ’.dll’, ’.msi’ or ’.com’).
• template<class SequenceT>
SequenceT & brace_expand (SequenceT &result, const std::string &str, bool allowCom-maSep=false)
The function template brace_expand appends the maybe brace expanded words of str to the sequence resultand returns result.
• bool designateSame (const pstring &p1, const pstring &p2)Return true, if the pstring object p1 designates the same file system element than that p2 designates.
• bool operator< (const pstring &p1, const pstring &p2)Order relation for pstring objects.
• bool operator== (const pstring &p1, const pstring &p2)Equality relation for pstring objects.
• bool operator< (const numpstring &p1, const numpstring &p2)
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
11.2 stm::buffer Namespace Reference 112
Order relation for numpstring objects.
• bool operator== (const numpstring &p1, const numpstring &p2)Equality relation for numpstring objects.
• template<class NameT>
void swap (readablefile< NameT > &rf1, readablefile< NameT > &rf2)Swaps the readablefile objects rf1 and rf2.
• template<class BufRangeT, class ContextT>
bool operator== (const inputrange_iterator< BufRangeT, ContextT > &x, const inputrange_-iterator< BufRangeT, ContextT > &y)
Equality operator.
• template<class BufRangeT, class ContextT>
bool operator!= (const inputrange_iterator< BufRangeT, ContextT > &x, const inputrange_-iterator< BufRangeT, ContextT > &y)
Inequality operator.
11.2 stm::buffer Namespace Reference
11.2.1 Detailed Description
Namespace containing all buffer related utilities.
Functions
• template<typename T>
T & get (byte ∗ptr)Returns a reference to the T object beginning at byte address ptr.
• template<typename T>
const T & get (const byte ∗ptr)Returns a constant reference to the T object beginning at byte address ptr.
• template<typename T>
T & fetch (T &obj, const byte ∗ptr)Creates obj T as being a copy of the T object beginning at byte address ptr and returns a reference to it.
• template<typename T>
T & swap (T &obj, typename boost::enable_if< boost::is_pod< T >, const byte ∗ >::type ptr)Creates obj T as being a byte swapped copy of the T object beginning at byte address ptr and returns areference to it.
• template<typename T>
T & endianConvertIf (T &obj, typename boost::enable_if< boost::is_pod< T >, const byte ∗>::typeptr, bool convert)
Creates obj T as being an endian converted or unconverted copy of the T object beginning at byte addressptr and returns a reference to it.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
11.2 stm::buffer Namespace Reference 113
• template<typename T>
T & endianConvertIf (T &obj, typename boost::enable_if< boost::is_pod< T >, const byte ∗>::typeptr, boost::mpl::false_)
Creates obj T as being an unconverted copy of the T object beginning at byte address ptr and returns areference to it.
• template<typename T>
T & endianConvertIf (T &obj, typename boost::enable_if< boost::is_pod< T >, const byte ∗>::typeptr, boost::mpl::true_)
Creates obj T as being an endian converted copy of the T object beginning at byte address ptr and returns areference to it.
• template<typename T>
T & networkByteOrderConvert (T &obj, typename boost::enable_if< boost::is_pod< T >, constbyte ∗ >::type ptr)
Creates obj T as being an endian converted or unconverted copy of the T object beginning at byte addressptr and returns a reference to it.
• template<typename T>
T swapped (typename boost::enable_if< boost::is_pod< T >, T >::type value)Returns an object of type T being a byte swapped copy of the T object value.
• template<typename T>
T endianConvertedIf (typename boost::enable_if< boost::is_pod< T >, T >::type value, bool con-vert)
Returns the endian converted or unconverted value of an object of type T.
• template<typename T>
T endianConvertedIf (typename boost::enable_if< boost::is_pod< T >, T >::type value,boost::mpl::false_)
Returns the unconverted value of an object of type T.
• template<typename T>
T endianConvertedIf (typename boost::enable_if< boost::is_pod< T >, T >::type value,boost::mpl::true_)
Returns the endian converted value of an object of type T.
• template<typename T>
T networkByteOrderConverted (typename boost::enable_if< boost::is_pod< T >, T >::typevalue)
Returns the endian converted or unconverted value of an object of type T.
• template<typename T>
size_t pad (typename boost::enable_if< has_pow2size< T >, size_t >::type offset)Returns the least number aligned to T not being less than offset.
• template<typename T>
byte ∗ put (byte ∗ptr, const T &value)Stores a T object at byte address ptr and returns the byte address of the T object following that T object.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
11.3 stm::local Namespace Reference 114
11.3 stm::local Namespace Reference
11.3.1 Detailed Description
Implementation namespace for the SysToMath C++ Libraries.
Classes
• class errmsgImplementation class for macro StmDebugAidsErrmsg.
• class xIntegral_rangestm::integral_range implementation base class template.
• class xIntegral_setstm::integral_set implementation base class template.
• class xconditionstm::condition implementation base class.
• class xsystem_conditionstm::system_condition implementation base class.
• class xscoped_lockstm::scoped_lock implementation base class.
• class xsystem_scoped_lockstm::system_scoped_lock implementation base class.
• class xhexfmtstm::hexfmt implementation base class template.
• class xfixedfmtstm::fixedfmt implementation base class template.
• class xrecursionenvstm::path::recursionenv implementation base class.
• class xdirdatastm::path::dirdata implementation base class template.
• class xreadablefilestm::readablefile implementation base class.
• class xinputrangestm::inputrange implementation base class template.
• class xinputrange_iteratorstm::inputrange_iterator implementation base class template.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
11.4 stm::rectrl Namespace Reference 115
• class xfilespecstm::filespec implementation base class.
• class xfilespecliststm::filespeclist implementation base class.
• class xfilefindstm::filefind implementation base class template.
• class BraceExpandBrace expansion implementation class.
• class xcrcstm::crc implementation base class template.
• class basic_xloggerstm::basic_logger implementation base class template.
Variables
• static bool syslogPerror• static std::string syslogProg
11.4 stm::rectrl Namespace Reference
11.4.1 Detailed Description
Namespace for regular expression matching issues.
Predefined StmReCtrl Objects
The predefined StmReCtrl objects stm::rectrl::identity and stm::rectrl::tolower provide control and errorhandling for regular expressions (see Abstract Data Type StmRe).
• StmReCtrl identity = initialize ()• StmReCtrl tolower = NULL
Control and error handling of non-case-sensitive regular expressions.
Functions
• StmReCtrl initialize ()stm::rectrl initialization.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
11.5 stm::smartptr Namespace Reference 116
11.5 stm::smartptr Namespace Reference
11.5.1 Detailed Description
Namespace for all smart pointer aids class templates.
Classes
• struct policyClass template serving as Policy template parameter for class templates injective_ptr and injective_set.
• struct MakeSurjectiveClass template serving as wrapper of template parameter Policy to ensure the surjective policy property.
• struct MakeMultirangeClass template serving as wrapper of template parameter Policy to ensure the multirange policy property.
• class injective_ptrThe class template injective_ptr is a smart pointer pointing to unique constant objects of element type Tstored using a static repository.
• class injective_setThe class template injective_set is a container of unique constant objects of value type T stored wrapping aspecific range of the static repository of an injective_ptr<T, Compare, Allocator, Policy> object.
• class injectiveThe traits class template injective combines the class template injective_ptr and its associated class templateinjective_set having either the surjective or the not surjective policy property.
• class bijectiveThe traits class template bijective combines the class template injective_ptr and its associated class templateinjective_set having the surjective policy property.
Namespaces
• namespace localImplementation namespace for the SysToMath Aids C++ Library module SmartptrAids.
Policy Flags
The policy flag bits are bitwise orable.
• const stm::dword Surjective = 0x00000001Surjective policy flag.
• const stm::dword Multirange = 0x00000002Multirange policy flag.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
11.6 stm::smartptr::local Namespace Reference 117
Functions
• template<class T, class Compare, class Allocator, class Policy>
bool operator== (const injective_ptr< T, Compare, Allocator, Policy > &ptr1, const injective_ptr<T, Compare, Allocator, Policy > &ptr2)
Returns true, if both ptr1 and ptr2 are empty or ptr1 and ptr2 are not empty and point to elements beingequivalent under the equivalence relation induced by Compare, else false.
• template<class T, class Compare, class Allocator, class Policy>
bool operator!= (const injective_ptr< T, Compare, Allocator, Policy > &ptr1, const injective_ptr<T, Compare, Allocator, Policy > &ptr2)
Returns true, if either ptr1 or ptr2 is not empty and ptr1 or ptr2 is empty or else point to elements beingnon-equivalent under the equivalence relation induced by Compare, else false.
• template<class T, class Compare, class Allocator, class Policy>
bool operator< (const injective_ptr< T, Compare, Allocator, Policy > &ptr1, const injective_ptr<T, Compare, Allocator, Policy > &ptr2)
Returns a bool value such that operator< is a strict weak ordering as decribed in (25.3) and that under theequivalence relation.
• template<class T, class Compare, class Allocator, class Policy>
const T ∗ get_pointer (const injective_ptr< T, Compare, Allocator, Policy > &ptr)Returns a constant pointer to the element pointed to by the injective_ptr object ptr, if ptr is not be empty,else the null pointer.
• template<class OStreamT, class T, class Compare, class Allocator, class Policy>
OStreamT & operator<< (OStreamT &os, const injective_ptr< T, Compare, Allocator, Policy >&ptr)
Inserts a string representation of the address of the element pointed to by ptr into the output stream os.
• template<class T, class Compare, class Allocator, class Policy>
void swap (injective_ptr< T, Compare, Allocator, Policy > &ptr1, injective_ptr< T, Compare, Al-locator, Policy > &ptr2)
Exchanges the contents of the injective_ptr objects ptr1 and ptr2.
11.6 stm::smartptr::local Namespace Reference
11.6.1 Detailed Description
Implementation namespace for the SysToMath Aids C++ Library module SmartptrAids.
Classes
• class mapped_ptrstm::smartptr::injective_ptr implementation base class template.
• struct pcomp• class pointee_type• struct item_type• struct item_descr< T, Compare, true, true >
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
11.7 stm::tools Namespace Reference 118
• struct item_descr< T, Compare, false, true >
• struct increfcount• struct decrefcount• struct comp_value_id• struct comp_id• struct comp_value• class repository_type• class mapped_ptr< T, Compare, Allocator, refcounted, false >
• struct item_descr< T, Compare, true, false >
• struct item_descr< T, Compare, false, false >
• class repository_type< T, Compare, Allocator, refcounted, false >
Typedefs
• typedef long refcount_typeTo be compatible with boost::shared_ptr.
11.7 stm::tools Namespace Reference
11.7.1 Detailed Description
Namespace for the SysToMath Tool Aids C++ Library modules.
Classes
• class BaseMessageContextBase message context type which shall be a direct or indirect public base class of its template parameterContextT.
• class BaseMessageAbstract base class of message types for scanning from its byte_iterator_range base class object.
• class BinMessageContextBinary message context type.
• class BinMessageBinary message scanning from a stm::byte_iterator_range.
• class CtMain ClearCase cleartool aids class.
• class CtOperationClearCase cleartool operation class.
• class CtExceptionsClearCase cleartool exceptions class.
• class DspMessage
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
11.8 stm::tools::local Namespace Reference 119
DSP message contained in a binary message.
• class LvdsPacketLVDS packet contained in a binary message.
• class McBspMessageMcBSP message scanning from a BaseMessage’s byte_iterator_range.
• class MsgTimestampMessage timestamp type.
• class PrintkBinMessagePrintkBin message scanning from a the BaseMessage’s byte_iterator_range.
Namespaces
• namespace localImplementation namespace for the SysToMath Toll Aids C++ Library modules.
11.8 stm::tools::local Namespace Reference
11.8.1 Detailed Description
Implementation namespace for the SysToMath Toll Aids C++ Library modules.
Classes
• class xBaseMessageContextstm::tools::BaseMessageContext implementation base class template.
• class xBaseMessagestm::tools::BaseMessage implementation base class template.
• class xBinMessageGapstm::tools::BinMessageContext::Gap implementation base class.
• class xBinMessageContextstm::tools::BinMessageContext implementation base class template.
• class xBinMessagestm::tools::BinMessage implementation base class template.
• class xArgListstm::tools::Ct::ArgList implementation base class.
• class xCtstm::tools::Ct implementation base class.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12 SysToMath C++ Libraries Implementation Class Documentation 120
• class xCtOperationstm::tools::CtOperation implementation base class.
• class xTraceHeaderstm::tools::DspMessage::TraceHeader implementation base class.
• class xDspMessagestm::tools::DspMessage implementation base class template.
• class xLvdsPacketstm::tools::LvdsPacket implementation base class template.
• class xMcBspMessagestm::tools::McBspMessage implementation base class template.
• class xMsgTimestampstm::tools::MsgTimestamp implementation base class.
• class xPrintkBinMessage
12 SysToMath C++ Libraries Implementation Class Documentation
12.1 stm::tools::BaseMessage< ContextT > Class Template Reference
#include <binmsg.hpp>
Inheritance diagram for stm::tools::BaseMessage< ContextT >:
stm::tools::BaseMessage< ContextT >
stm::tools::McBspMessage< ContextT > stm::tools::PrintkBinMessage< ContextT >
stm::byte_iterator_range stm::tools::local::xBaseMessage< ContextT >
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.1 stm::tools::BaseMessage< ContextT > Class Template Reference 121
Collaboration diagram for stm::tools::BaseMessage< ContextT >:
stm::tools::BaseMessage< ContextT >
stm::byte_iterator_range
stm::tools::local::xBaseMessage< ContextT >
body_
stm::tools::MsgTimestamp
timestamp_
stm::tools::local::xMsgTimestamp
12.1.1 Detailed Description
template<class ContextT> class stm::tools::BaseMessage< ContextT >
Abstract base class of message types for scanning from its byte_iterator_range base class object.
ContextT shall be a specialization of BaseMessageContext or be publicly derived therefrom. If ContextTis a specialization of BinMessageContext (which is publicly derived from a BaseMessageContext special-ization) or is publicly derived therefrom, ContextT is also a BinMessage<ContextT> factory and the typesderived from BaseMessage<ContextT> can be registered as BinMessage<ContextT> types known to thatfactory (see BinMessageContext::registerMessageType()).
Definition at line 182 of file binmsg.hpp.
Public Types
• enum { WordSize = 4 }Scanned input data are organized as 32 bit words.
• enum {
NoFlags = 0x00000000,
ThrowOnError = 0x00000001 }Bitwise orable flag bits.
• enum {
NoError = 0x00000000,
OutOfSync = 0x00000001,
ConsistencyError = 0x00000002 }Status values.
• typedef ContextT context_typeContext type of the messages to be scanned.
• typedef BaseMessage< ContextT > basemessage_typeThis type.
• typedef context_type::Timestamp Timestamp
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.1 stm::tools::BaseMessage< ContextT > Class Template Reference 122
Timestamp type.
Public Member Functions
• virtual ∼BaseMessage ()Virtual destructor to allow polymorphic class hierarchies.
• virtual const std::string & type () const =0Return the message type string.
• dword flags () constReturns the flags of the message.
• dword status () constReturns the status of the message.
• const Timestamp & timestamp () constReturns a reference to the message’s timestamp.
• context_type & context ()Returns the the message’s context.
• const byte_iterator_range & body () constReturns the byte range consisting of the message’s body excluding any padding bytes.
Protected Member Functions
• BaseMessage (const byte ∗first, const byte ∗last, context_type &context, dword flags=NoFlags,dword status=NoError)
Since BaseMessage is an abstract base class, this constructor is used only by derived classes.
• void setStatus (dword val)Sets the status of the message to val.
• void setBody (const byte_iterator_range &body)Sets the the byte range consisting of the message’s body excluding any padding bytes.
• void setUdpTimestamp (word bfn, dword bordTimeSec, word boardTimeMs, dword seqNo)Sets the message’s timestamp according to the UDP timing data supplied.
• void setFpgaTimestamp (word bfn, byte slot, word chip)Sets the message’s timestamp according to the FPGA timing data supplied.
Private Types
• typedef local::xBaseMessage< ContextT > BaseMessageImplImplementation.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.1 stm::tools::BaseMessage< ContextT > Class Template Reference 123
12.1.2 Member Typedef Documentation
12.1.2.1 template<class ContextT> typedef local::xBaseMessage<ContextT>stm::tools::BaseMessage< ContextT >::BaseMessageImpl [private]
Implementation.
Definition at line 187 of file binmsg.hpp.
12.1.2.2 template<class ContextT> typedef ContextT stm::tools::BaseMessage< ContextT>::context_type
Context type of the messages to be scanned.
Reimplemented from stm::tools::local::xBaseMessage< ContextT >.
Reimplemented in stm::tools::McBspMessage< ContextT >, and stm::tools::PrintkBinMessage< Con-textT >.
Definition at line 191 of file binmsg.hpp.
12.1.2.3 template<class ContextT> typedef BaseMessage<ContextT> stm::tools::BaseMessage<ContextT >::basemessage_type
This type.
Reimplemented in stm::tools::McBspMessage< ContextT >, and stm::tools::PrintkBinMessage< Con-textT >.
Definition at line 194 of file binmsg.hpp.
12.1.2.4 template<class ContextT> typedef context_type::Timestamp stm::tools::BaseMessage<ContextT >::Timestamp
Timestamp type.
Reimplemented from stm::tools::local::xBaseMessage< ContextT >.
Definition at line 197 of file binmsg.hpp.
12.1.3 Member Enumeration Documentation
12.1.3.1 template<class ContextT> anonymous enum
Scanned input data are organized as 32 bit words.
Enumerator:
WordSize
Definition at line 200 of file binmsg.hpp.
12.1.3.2 template<class ContextT> anonymous enum
Bitwise orable flag bits.
Enumerator:
NoFlags
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.1 stm::tools::BaseMessage< ContextT > Class Template Reference 124
ThrowOnError
Definition at line 206 of file binmsg.hpp.
12.1.3.3 template<class ContextT> anonymous enum
Status values.
Enumerator:
NoErrorOutOfSyncConsistencyError
Definition at line 213 of file binmsg.hpp.
12.1.4 Constructor & Destructor Documentation
12.1.4.1 template<class ContextT> stm::tools::BaseMessage< ContextT >::∼BaseMessage ()[inline, virtual]
Virtual destructor to allow polymorphic class hierarchies.
Definition at line 476 of file xbinmsg.hpp.
12.1.4.2 template<class ContextT> stm::tools::BaseMessage< ContextT >::BaseMessage (constbyte ∗ first, const byte ∗ last, context_type & context, dword flags = NoFlags, dword status =NoError) [inline, protected]
Since BaseMessage is an abstract base class, this constructor is used only by derived classes.
Definition at line 463 of file xbinmsg.hpp.
12.1.5 Member Function Documentation
12.1.5.1 template<class ContextT> virtual const std::string& stm::tools::BaseMessage< ContextT>::type () const [pure virtual]
Return the message type string.
Implemented in stm::tools::McBspMessage< ContextT >, and stm::tools::PrintkBinMessage< ContextT>.
12.1.5.2 template<class ContextT> dword stm::tools::BaseMessage< ContextT >::flags () const[inline]
Returns the flags of the message.
Definition at line 481 of file xbinmsg.hpp.
References stm::tools::local::xBaseMessage< ContextT >::flags_.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.1 stm::tools::BaseMessage< ContextT > Class Template Reference 125
12.1.5.3 template<class ContextT> dword stm::tools::BaseMessage< ContextT >::status () const[inline]
Returns the status of the message.
Definition at line 488 of file xbinmsg.hpp.
References stm::tools::local::xBaseMessage< ContextT >::status_.
12.1.5.4 template<class ContextT> const BaseMessage< ContextT >::Timestamp &stm::tools::BaseMessage< ContextT >::timestamp () const [inline]
Returns a reference to the message’s timestamp.
Definition at line 505 of file xbinmsg.hpp.
References stm::tools::local::xBaseMessage< ContextT >::timestamp_.
Referenced by stm::tools::BaseMessage< ContextT >::setFpgaTimestamp(), andstm::tools::BaseMessage< ContextT >::setUdpTimestamp().
12.1.5.5 template<class ContextT> BaseMessage< ContextT >::context_type &stm::tools::BaseMessage< ContextT >::context () [inline]
Returns the the message’s context.
Definition at line 514 of file xbinmsg.hpp.
12.1.5.6 template<class ContextT> const byte_iterator_range & stm::tools::BaseMessage< Con-textT >::body () const [inline]
Returns the byte range consisting of the message’s body excluding any padding bytes.
Definition at line 521 of file xbinmsg.hpp.
References stm::tools::local::xBaseMessage< ContextT >::body_.
12.1.5.7 template<class ContextT> void stm::tools::BaseMessage< ContextT >::setStatus (dwordval) [inline, protected]
Sets the status of the message to val.
Definition at line 495 of file xbinmsg.hpp.
References stm::tools::local::xBaseMessage< ContextT >::status_.
12.1.5.8 template<class ContextT> void stm::tools::BaseMessage< ContextT >::setBody (constbyte_iterator_range & body) [inline, protected]
Sets the the byte range consisting of the message’s body excluding any padding bytes.
Definition at line 528 of file xbinmsg.hpp.
References stm::tools::local::xBaseMessage< ContextT >::body_.
12.1.5.9 template<class ContextT> void stm::tools::BaseMessage< ContextT>::setUdpTimestamp (word bfn, dword bordTimeSec, word boardTimeMs, dword seqNo)[inline, protected]
Sets the message’s timestamp according to the UDP timing data supplied.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.2 stm::tools::BaseMessageContext< DataT, InputRangeT, ContextT > Class TemplateReference 126
As this member is intended to be called from a constructor of a derived class, logic_errror is thrown, if themessage’s timestamp already was valid.
Definition at line 537 of file xbinmsg.hpp.
References stm::tools::local::xBaseMessage< ContextT >::setTimestamp(), andstm::tools::BaseMessage< ContextT >::timestamp().
12.1.5.10 template<class ContextT> void stm::tools::BaseMessage< ContextT>::setFpgaTimestamp (word bfn, byte slot, word chip) [inline, protected]
Sets the message’s timestamp according to the FPGA timing data supplied.
As this member is intended to be called from a constructor of a derived class, logic_errror is thrown, if themessage’s timestamp already was valid.
Definition at line 555 of file xbinmsg.hpp.
References stm::tools::local::xBaseMessage< ContextT >::setTimestamp(), andstm::tools::BaseMessage< ContextT >::timestamp().
The documentation for this class was generated from the following files:
• binmsg.hpp• xbinmsg.hpp
12.2 stm::tools::BaseMessageContext< DataT, InputRangeT, ContextT > ClassTemplate Reference
#include <binmsg.hpp>
Inheritance diagram for stm::tools::BaseMessageContext< DataT, InputRangeT, ContextT >:
stm::tools::BaseMessageContext< DataT, InputRangeT, ContextT >
stm::tools::BinMessageContext< DataT, InputRangeT, ContextT >
stm::tools::local::xBaseMessageContext< DataT, InputRangeT, ContextT >
Collaboration diagram for stm::tools::BaseMessageContext< DataT, InputRangeT, ContextT >:
stm::tools::BaseMessageContext< DataT, InputRangeT, ContextT >
stm::tools::local::xBaseMessageContext< DataT, InputRangeT, ContextT >
stm::tools::MsgTimestamp
timestamp_
stm::tools::local::xMsgTimestamp
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.2 stm::tools::BaseMessageContext< DataT, InputRangeT, ContextT > Class TemplateReference 127
12.2.1 Detailed Description
template<class DataT, class InputRangeT, class ContextT> class stm::tools::BaseMessageContext<DataT, InputRangeT, ContextT >
Base message context type which shall be a direct or indirect public base class of its template parameterContextT.
ContextT shall have a constructor taking a DataT reference as its first and an InputRangeT reference as itssecond and last parameter, where InputRangeT shall be a specialization of stm::inputrange or be publiclyderived therefrom.
Definition at line 110 of file binmsg.hpp.
Public Types
• typedef DataT data_typeType modelling the specialities of the kind of messages to be scanned.
• typedef InputRangeT inputrange_typeType representing a range of input files containing the messages to be scanned.
• typedef ContextT context_typeContext type of the messages to be scanned.
• typedef MsgTimestamp TimestampTimestamp type.
Public Member Functions
• BaseMessageContext (data_type &data, inputrange_type &input)Constructs a BaseMessageContext object storing the data and input of the messages to be scanned.
• const std::string & type () constReturn the message context’s type string.
• void setType (const std::string &type)Set the message context’s type string.
• const Timestamp & timestamp () constReturns the message context’s timestamp reference.
• void setTimestamp (const Timestamp ×tamp)Set the message context’s timestamp.
• data_type & data ()Returns the the message context’s data reference.
• inputrange_type & input ()Returns the the message context’s input range reference.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.2 stm::tools::BaseMessageContext< DataT, InputRangeT, ContextT > Class TemplateReference 128
Private Types
• typedef local::xBaseMessageContext< DataT, InputRangeT, ContextT > BaseMessageCon-textImpl
Implementation.
12.2.2 Member Typedef Documentation
12.2.2.1 template<class DataT, class InputRangeT, class ContextT> typedeflocal::xBaseMessageContext< DataT, InputRangeT, ContextT > stm::tools::BaseMessageContext<DataT, InputRangeT, ContextT >::BaseMessageContextImpl [private]
Implementation.
Definition at line 119 of file binmsg.hpp.
12.2.2.2 template<class DataT, class InputRangeT, class ContextT> typedef DataTstm::tools::BaseMessageContext< DataT, InputRangeT, ContextT >::data_type
Type modelling the specialities of the kind of messages to be scanned.
Reimplemented from stm::tools::local::xBaseMessageContext< DataT, InputRangeT, ContextT >.
Reimplemented in stm::tools::BinMessageContext< DataT, InputRangeT, ContextT >.
Definition at line 123 of file binmsg.hpp.
12.2.2.3 template<class DataT, class InputRangeT, class ContextT> typedef InputRangeTstm::tools::BaseMessageContext< DataT, InputRangeT, ContextT >::inputrange_type
Type representing a range of input files containing the messages to be scanned.
Reimplemented from stm::tools::local::xBaseMessageContext< DataT, InputRangeT, ContextT >.
Reimplemented in stm::tools::BinMessageContext< DataT, InputRangeT, ContextT >.
Definition at line 127 of file binmsg.hpp.
12.2.2.4 template<class DataT, class InputRangeT, class ContextT> typedef ContextTstm::tools::BaseMessageContext< DataT, InputRangeT, ContextT >::context_type
Context type of the messages to be scanned.
Reimplemented from stm::tools::local::xBaseMessageContext< DataT, InputRangeT, ContextT >.
Reimplemented in stm::tools::BinMessageContext< DataT, InputRangeT, ContextT >.
Definition at line 130 of file binmsg.hpp.
12.2.2.5 template<class DataT, class InputRangeT, class ContextT> typedef MsgTimestampstm::tools::BaseMessageContext< DataT, InputRangeT, ContextT >::Timestamp
Timestamp type.
Reimplemented from stm::tools::local::xBaseMessageContext< DataT, InputRangeT, ContextT >.
Definition at line 133 of file binmsg.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.2 stm::tools::BaseMessageContext< DataT, InputRangeT, ContextT > Class TemplateReference 129
12.2.3 Constructor & Destructor Documentation
12.2.3.1 template<class DataT, class InputRangeT, class ContextT>stm::tools::BaseMessageContext< DataT, InputRangeT, ContextT >::BaseMessageContext(data_type & data, inputrange_type & input) [inline]
Constructs a BaseMessageContext object storing the data and input of the messages to be scanned.
Definition at line 577 of file xbinmsg.hpp.
12.2.4 Member Function Documentation
12.2.4.1 template<class DataT, class InputRangeT, class ContextT> const std::string &stm::tools::BaseMessageContext< DataT, InputRangeT, ContextT >::type () const [inline]
Return the message context’s type string.
This is a neutral string before any message has been read or the type string of the last successfully readmessage.
Definition at line 587 of file xbinmsg.hpp.
References stm::tools::local::xBaseMessageContext< DataT, InputRangeT, ContextT >::type_.
12.2.4.2 template<class DataT, class InputRangeT, class ContextT> voidstm::tools::BaseMessageContext< DataT, InputRangeT, ContextT >::setType (const std::string &type) [inline]
Set the message context’s type string.
Definition at line 596 of file xbinmsg.hpp.
References stm::tools::local::xBaseMessageContext< DataT, InputRangeT, ContextT >::type_.
12.2.4.3 template<class DataT, class InputRangeT, class ContextT> const BaseMessageContext<DataT, InputRangeT, ContextT >::Timestamp & stm::tools::BaseMessageContext< DataT, Inpu-tRangeT, ContextT >::timestamp () const [inline]
Returns the message context’s timestamp reference.
This is an invalid timestamp before any message has been read or the timestamp of the last sucessfully readmessage.
Definition at line 608 of file xbinmsg.hpp.
References stm::tools::local::xBaseMessageContext< DataT, InputRangeT, ContextT >::timestamp_.
12.2.4.4 template<class DataT, class InputRangeT, class ContextT> voidstm::tools::BaseMessageContext< DataT, InputRangeT, ContextT >::setTimestamp (constTimestamp & timestamp) [inline]
Set the message context’s timestamp.
Definition at line 617 of file xbinmsg.hpp.
References stm::tools::local::xBaseMessageContext< DataT, InputRangeT, ContextT >::timestamp_.
12.2.4.5 template<class DataT, class InputRangeT, class ContextT> BaseMessageContext< DataT,InputRangeT, ContextT >::data_type & stm::tools::BaseMessageContext< DataT, InputRangeT,
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.3 stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy > Class TemplateReference 130
ContextT >::data () [inline]
Returns the the message context’s data reference.
Definition at line 629 of file xbinmsg.hpp.
References stm::tools::local::xBaseMessageContext< DataT, InputRangeT, ContextT >::data_.
12.2.4.6 template<class DataT, class InputRangeT, class ContextT> BaseMessageContext< DataT,InputRangeT, ContextT >::inputrange_type & stm::tools::BaseMessageContext< DataT, Inpu-tRangeT, ContextT >::input () [inline]
Returns the the message context’s input range reference.
Definition at line 638 of file xbinmsg.hpp.
References stm::tools::local::xBaseMessageContext< DataT, InputRangeT, ContextT >::input_.
The documentation for this class was generated from the following files:
• binmsg.hpp• xbinmsg.hpp
12.3 stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy > ClassTemplate Reference
#include <loggeraids.hpp>
Inheritance diagram for stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >:
stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >
stm::basic_logger< std::string, stdIndent, lineLength, lockingPolicy >< std::string, stdIndent, lineLength, lockingPolicy >
stm::basic_logger< std::wstring, stdIndent, lineLength, lockingPolicy >< std::wstring, stdIndent, lineLength, lockingPolicy >
stm::logger_base
stm::local::basic_xlogger< StringT, lockingPolicy >
stm::logger< stdIndent, lineLength, errorConsole, lockingPolicy >
stm::wlogger< stdIndent, lineLength, errorConsole, lockingPolicy >
Collaboration diagram for stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >:
stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >
stm::logger_base stm::local::basic_xlogger< StringT, lockingPolicy >
stm::local::basic_xlogger< StringT, lockingPolicy >::Stream
output
stm::local::basic_xlogger< StringT, lockingPolicy >::Fmt
fmt
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.3 stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy > Class TemplateReference 131
12.3.1 Detailed Description
template<class StringT, word stdIndent = 4, word lineLength = 79, word lockingPolicy = logger_-base::NoLocking> class stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >
Class template to manage formatted logging on an output stream (normally a log file) and optionally on asecond stream (normally a console) and on the system log (see stm::syslog()).
The template parameter StringT shall be a std::basic_string (23.3) specialization. Since basic_logger ispublicly derived from a StringT based std::basic_ostringstream (27.7.3), data insertion into basic_loggerobjects is easily possible. On construction the base class std::basic_ostingstream object is default con-structed and then initialized to use uppercase letters for hexadecimal numbers and to use right adjustedfixed point notation for floating point numbers.
If formatted printig to a stream is done, the default value for indentation is given by the template parameterstdIndent and the default line length is given by the template parameter lineLength.
According to the template parameter lockingPolicy either no locking is possible (logger_base::NoLocking)or an unnamed mutex (see Abstract Data Type StmMutex) for logger_base::ProcessLocking or anamed mutex (see Abstract Data Type StmNamedMutex) for logger_base::SystemLocking is used bystm::basic_logger::locker to perform locking across all threads of the calling process or across all threadsof the system, respectively. The mutex name for system-wide locking has to be supplied to the constructorof stm::basic_logger.
Definition at line 165 of file loggeraids.hpp.
Public Types
• enum {
StdIndent = stdIndent,
LineLength = lineLength,
LockingPolicy = lockingPolicy }• enum FmtFlags {
NoFlag = impl::NoFlag,
Indent = impl::Indent,
NoPara = impl::NoPara,
KeepWs = impl::KeepWs,
AutoInd = impl::AutoInd,
ColonInd = impl::ColonInd,
ColonTable = impl::ColonTable,
RiJust = impl::RiJust,
RawPath = impl::RawPath,
Single = impl::Single }Format information flags.
• typedef basic_logger< StringT, stdIndent, lineLength, lockingPolicy > logger_typeThis basic_logger type.
• typedef StringT string_typeString type.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.3 stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy > Class TemplateReference 132
• typedef std::basic_ostream< typename string_type::value_type, typename string_type::traits_type >ostream_type
Output stream type.
• typedef impl::char_type char_typeCharacter type.
Public Member Functions
• basic_logger (const std::string &mutexName=std::string())Default constructor for a basic_logger object not to print.
• basic_logger (const logger_type &other)Copy constructor.
• basic_logger (ostream_type &stream, const std::string &mutexName=std::string())Construct a basic_logger object to print on stream.
• basic_logger (ostream_type &stream, ostream_type &console, const std::string &mutex-Name=std::string())
Construct a basic_logger object to print on stream and on console.
• ∼basic_logger ()Destroy a basic_logger object.
• bool hasStream () constReturn true, if this basic_logger object has a stream, else false.
• void setStream (ostream_type &stream)Configure this basic_logger object to print on stream.
• void unsetStream ()Configure this basic_logger object to print on no stream.
• bool hasConsole () constReturn true, if this basic_logger object has a console, else false.
• void setConsole (ostream_type &console)Configure this basic_logger object to print on console.
• void unsetConsole ()Configure this basic_logger object to print on no console.
• int adjustChild ()Adjust this basic_logger object after a call to fork().
• int operator() (Fmt streamFmt=Fmt(), Fmt consoleFmt=Fmt())Print the contents of the string stream base of this basic_logger to the streams configured and then clear it.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.4 stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::Fmt Struct Reference133
• int underline (int n, char_type ch=char_type(’=’), dword nl=1)Print character ch (default ’=’) n times to the streams configured, followed by nl times (default 1) thenewline character.
• int paragraph (dword nl=1)Print on each configured stream as much newlines that at least nl empty lines are present after the lastrecently printed non empty line.
Static Public Member Functions
• static string_type mkPath (const string_type &str)Return a copy of str, if str does not contain white space, else str quoted by ’"’ characters.
Private Types
• typedef local::basic_xlogger< StringT, lockingPolicy > implImplementation.
Classes
• struct FmtFormat information for output streams.
• struct lockerScoped locking for output streams.
12.3.2 Member Typedef Documentation
12.3.2.1 template<class StringT, word stdIndent = 4, word lineLength = 79, word lockingPol-icy = logger_base::NoLocking> typedef local::basic_xlogger<StringT, lockingPolicy> stm::basic_-logger< StringT, stdIndent, lineLength, lockingPolicy >::impl [private]
Implementation.
Definition at line 176 of file loggeraids.hpp.
The documentation for this class was generated from the following files:
• loggeraids.hpp• loggerxaids.hpp
12.4 stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::FmtStruct Reference
#include <loggeraids.hpp>
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.5 stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::locker Struct Reference134
Inheritance diagram for stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::Fmt:
stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::Fmt
stm::local::basic_xlogger< StringT, lockingPolicy >::Fmt
Collaboration diagram for stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::Fmt:
stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::Fmt
stm::local::basic_xlogger< StringT, lockingPolicy >::Fmt
12.4.1 Detailed Description
template<class StringT, word stdIndent = 4, word lineLength = 79, word lockingPolicy = logger_-base::NoLocking> struct stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::Fmt
Format information for output streams.
Definition at line 240 of file loggeraids.hpp.
Public Member Functions
• Fmt ()Default constructor building an object with no format information.
• Fmt (word flags, word indent=StdIndent, word length=LineLength)Constructs an object with format information flags, indent and length.
12.4.2 Constructor & Destructor Documentation
12.4.2.1 template<class StringT, word stdIndent, word lineLength, word lockingPolicy>stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::Fmt::Fmt () [inline]
Default constructor building an object with no format information.
Definition at line 1070 of file loggerxaids.hpp.
The documentation for this struct was generated from the following files:
• loggeraids.hpp• loggerxaids.hpp
12.5 stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::lockerStruct Reference
#include <loggeraids.hpp>
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.5 stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::locker Struct Reference135
Inheritance diagram for stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::locker:
stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::locker
stm::local::basic_xlogger< StringT, lockingPolicy >::locker
Collaboration diagram for stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::locker:
stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::locker
stm::local::basic_xlogger< StringT, lockingPolicy >::locker
12.5.1 Detailed Description
template<class StringT, word stdIndent = 4, word lineLength = 79, word lockingPolicy =logger_base::NoLocking> struct stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy>::locker
Scoped locking for output streams.
For locking policy logger_base::NoLocking an object instantiation causes a std::logic_error exception tobe thrown. For locking policies logger_base::ProcessLocking and logger_base::sytemLocking locker isderived from stm::scoped_lock and stm::system_scoped_lock, respectively.
Definition at line 262 of file loggeraids.hpp.
Public Types
• typedef basic_logger< StringT, stdIndent, lineLength, lockingPolicy > logger_typeThe type of the object to be locked.
Public Member Functions
• locker (const logger_type &logger)Construct a scoped lock for logger.
• ∼locker ()Destructor.
12.5.2 Member Typedef Documentation
12.5.2.1 template<class StringT, word stdIndent = 4, word lineLength = 79, word lockingPolicy= logger_base::NoLocking> typedef basic_logger< StringT, stdIndent, lineLength, lockingPolicy >stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::locker::logger_type
The type of the object to be locked.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.6 stm::local::basic_xlogger< StringT, lockingPolicy > Class Template Reference 136
Definition at line 271 of file loggeraids.hpp.
The documentation for this struct was generated from the following files:
• loggeraids.hpp• loggerxaids.hpp
12.6 stm::local::basic_xlogger< StringT, lockingPolicy > Class Template Refer-ence
#include <loggerxaids.hpp>
Inheritance diagram for stm::local::basic_xlogger< StringT, lockingPolicy >:
stm::local::basic_xlogger< StringT, lockingPolicy > stm::basic_logger< StringT, lockingPolicy >
stm::local::basic_xlogger< std::wstring, lockingPolicy >
< std::wstring, lockingPolicy >
stm::local::basic_xlogger< std::string, lockingPolicy >< std::string, lockingPolicy >
stm::basic_logger< std::string, stdIndent, lineLength, lockingPolicy >< std::string, stdIndent, lineLength, lockingPolicy >
stm::basic_logger< std::wstring, stdIndent, lineLength, lockingPolicy >
< std::wstring, stdIndent, lineLength, lockingPolicy >
stm::logger< stdIndent, lineLength, errorConsole, lockingPolicy >
stm::wlogger< stdIndent, lineLength, errorConsole, lockingPolicy >
Collaboration diagram for stm::local::basic_xlogger< StringT, lockingPolicy >:
stm::local::basic_xlogger< StringT, lockingPolicy >
stm::local::basic_xlogger< StringT, lockingPolicy >::Stream
output
stm::local::basic_xlogger< StringT, lockingPolicy >::Fmt
fmt
12.6.1 Detailed Description
template<class StringT, word lockingPolicy> class stm::local::basic_xlogger< StringT, lockingPol-icy >
stm::basic_logger implementation base class template.
Definition at line 143 of file loggerxaids.hpp.
Protected Types
• enum { Streams = 2 }• enum {
NoFlag = 0x0000,
Indent = 0x0100,
NoPara = 0x0200,
KeepWs = 0x0400,
AutoInd = 0x0800,
ColonInd = 0x1000,
ColonTable = ColonInd | KeepWs,
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.6 stm::local::basic_xlogger< StringT, lockingPolicy > Class Template Reference 137
RiJust = 0x2000,
RawPath = 0x4000,
Single = 0x8000 }• typedef StringT string_type• typedef std::basic_ostream< typename string_type::value_type, typename string_type::traits_type >
ostream_type• typedef string_type::value_type char_type• typedef boost::mpl::int_< lockingPolicy > locking
Evaluates to boost::mpl::int_<0> for no locking, to boost::mpl::int_<1> not system-wide and toboost::mpl::int_<2> for system-wide lockable specializations.
• typedef boost::mpl::if_c< lockingPolicy==logger_base::NoLocking, no_lock, typenameboost::mpl::if_c< lockingPolicy==logger_base::ProcessLocking, stm::scoped_lock, stm::system_-scoped_lock >::type >::type locker_base
Protected Member Functions
• basic_xlogger (boost::mpl::int_< logger_base::NoLocking >, const std::string &, ostream_type∗pStream=NULL, ostream_type ∗pConsole=NULL)
Construct a basic_xlogger object to print on the configured streams.
• basic_xlogger (boost::mpl::int_< logger_base::ProcessLocking >, const std::string &, ostream_type∗pStream=NULL, ostream_type ∗pConsole=NULL)
Construct a basic_xlogger object to print on the configured streams.
• basic_xlogger (boost::mpl::int_< logger_base::SystemLocking >, const std::string &mutexName,ostream_type ∗pStream=NULL, ostream_type ∗pConsole=NULL)
Construct a basic_xlogger object to print on the configured streams.
• void destroySync (boost::mpl::int_< logger_base::NoLocking >)Dummy operation.
• void destroySync (boost::mpl::int_< logger_base::ProcessLocking >)Destroy the mutex object of a basic_xlogger object.
• void destroySync (boost::mpl::int_< logger_base::SystemLocking >)Destroy the mutex of a basic_xlogger object.
• int adjustSync (boost::mpl::int_< logger_base::NoLocking >)Dummy operation.
• int adjustSync (boost::mpl::int_< logger_base::ProcessLocking >)Dummy operation.
• int adjustSync (boost::mpl::int_< logger_base::SystemLocking >)Dummy operation on systems without fork system call, else adjust the named mutex of a basic_xloggerobject after a call to fork().
• int printch (char_type ch, dword n, bool para=false)Print ch n times to the streams configured.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.6 stm::local::basic_xlogger< StringT, lockingPolicy > Class Template Reference 138
• bool tprint (const string_type &sep, const string_type &token, bool lastToken)Print token preceded by sep accordingly formatted.
• void clearNls ()
Protected Attributes
• Stream output [Streams]Array of streams to output to, if its elements are not NULL.
• boost::mpl::if_c< lockingPolicy==logger_base::NoLocking, boost::mpl::void_, typenameboost::mpl::if_c< lockingPolicy==logger_base::ProcessLocking, StmMutex, StmNamedMu-tex >::type >::type sync_
Sync type object according to the locking policy.
Static Protected Attributes
• static const char_type psep_ [ ]Path separator characters ’/’ and ’\’.
• static const size_t PsepLen = sizeof (psep_) / sizeof (char_type)Number of path separator characters.
Classes
• struct Fmt• class locker• class no_lock
Dummy type for no locking.
• struct Stream
12.6.2 Member Typedef Documentation
12.6.2.1 template<class StringT, word lockingPolicy> typedef StringT stm::local::basic_xlogger<StringT, lockingPolicy >::string_type [protected]
Reimplemented in stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >, stm::basic_-logger< std::string, stdIndent, lineLength, lockingPolicy >, and stm::basic_logger< std::wstring, stdIn-dent, lineLength, lockingPolicy >.
Definition at line 146 of file loggerxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.6 stm::local::basic_xlogger< StringT, lockingPolicy > Class Template Reference 139
12.6.2.2 template<class StringT, word lockingPolicy> typedef std::basic_ostream< typenamestring_type::value_type, typename string_type::traits_type > stm::local::basic_xlogger< StringT,lockingPolicy >::ostream_type [protected]
Reimplemented in stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >, stm::basic_-logger< std::string, stdIndent, lineLength, lockingPolicy >, and stm::basic_logger< std::wstring, stdIn-dent, lineLength, lockingPolicy >.
Definition at line 152 of file loggerxaids.hpp.
12.6.2.3 template<class StringT, word lockingPolicy> typedef string_type::value_typestm::local::basic_xlogger< StringT, lockingPolicy >::char_type [protected]
Reimplemented in stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >, stm::basic_-logger< std::string, stdIndent, lineLength, lockingPolicy >, and stm::basic_logger< std::wstring, stdIn-dent, lineLength, lockingPolicy >.
Definition at line 154 of file loggerxaids.hpp.
12.6.2.4 template<class StringT, word lockingPolicy> typedef boost::mpl::int_<lockingPolicy>stm::local::basic_xlogger< StringT, lockingPolicy >::locking [protected]
Evaluates to boost::mpl::int_<0> for no locking, to boost::mpl::int_<1> not system-wide and toboost::mpl::int_<2> for system-wide lockable specializations.
Definition at line 226 of file loggerxaids.hpp.
12.6.2.5 template<class StringT, word lockingPolicy> typedef boost::mpl::if_c< locking-Policy == logger_base::NoLocking, no_lock, typename boost::mpl::if_c < lockingPolicy ==logger_base::ProcessLocking, stm::scoped_lock, stm::system_scoped_lock >::type >::typestm::local::basic_xlogger< StringT, lockingPolicy >::locker_base [protected]
Definition at line 248 of file loggerxaids.hpp.
12.6.3 Member Enumeration Documentation
12.6.3.1 template<class StringT, word lockingPolicy> anonymous enum [protected]
Enumerator:
Streams
Definition at line 156 of file loggerxaids.hpp.
12.6.3.2 template<class StringT, word lockingPolicy> anonymous enum [protected]
Enumerator:
NoFlagIndentNoParaKeepWsAutoInd
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.6 stm::local::basic_xlogger< StringT, lockingPolicy > Class Template Reference 140
ColonIndColonTableRiJustRawPathSingle
Definition at line 161 of file loggerxaids.hpp.
12.6.4 Constructor & Destructor Documentation
12.6.4.1 template<class StringT, word lockingPolicy> stm::local::basic_xlogger< StringT, lock-ingPolicy >::basic_xlogger (boost::mpl::int_< logger_base::NoLocking >, const std::string &,ostream_type ∗ pStream = NULL, ostream_type ∗ pConsole = NULL) [inline, protected]
Construct a basic_xlogger object to print on the configured streams.
Only instantiated for non-lockable specializations.
Definition at line 267 of file loggerxaids.hpp.
12.6.4.2 template<class StringT, word lockingPolicy> stm::local::basic_xlogger< StringT, lock-ingPolicy >::basic_xlogger (boost::mpl::int_< logger_base::ProcessLocking >, const std::string &,ostream_type ∗ pStream = NULL, ostream_type ∗ pConsole = NULL) [inline, protected]
Construct a basic_xlogger object to print on the configured streams.
Only instantiated for non-system-wide lockable specializations.
Definition at line 284 of file loggerxaids.hpp.
12.6.4.3 template<class StringT, word lockingPolicy> stm::local::basic_xlogger< StringT, lock-ingPolicy >::basic_xlogger (boost::mpl::int_< logger_base::SystemLocking >, const std::string &mutexName, ostream_type ∗ pStream = NULL, ostream_type ∗ pConsole = NULL) [inline,protected]
Construct a basic_xlogger object to print on the configured streams.
Only instantiated for system-wide lockable specializations.
Definition at line 302 of file loggerxaids.hpp.
12.6.5 Member Function Documentation
12.6.5.1 template<class StringT, word lockingPolicy> void stm::local::basic_xlogger< StringT,lockingPolicy >::destroySync (boost::mpl::int_< logger_base::NoLocking >) [inline,protected]
Dummy operation.
Only instantiated for non-lockable specializations.
Definition at line 329 of file loggerxaids.hpp.
Referenced by stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::∼basic_logger().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.6 stm::local::basic_xlogger< StringT, lockingPolicy > Class Template Reference 141
12.6.5.2 template<class StringT, word lockingPolicy> void stm::local::basic_xlogger< StringT,lockingPolicy >::destroySync (boost::mpl::int_< logger_base::ProcessLocking >) [inline,protected]
Destroy the mutex object of a basic_xlogger object.
Only instantiated for non-system-wide lockable specializations.
Definition at line 337 of file loggerxaids.hpp.
12.6.5.3 template<class StringT, word lockingPolicy> void stm::local::basic_xlogger< StringT,lockingPolicy >::destroySync (boost::mpl::int_< logger_base::SystemLocking >) [inline,protected]
Destroy the mutex of a basic_xlogger object.
Only instantiated for system-wide lockable specializations.
Definition at line 347 of file loggerxaids.hpp.
12.6.5.4 template<class StringT, word lockingPolicy> int stm::local::basic_xlogger< StringT,lockingPolicy >::adjustSync (boost::mpl::int_< logger_base::NoLocking >) [inline,protected]
Dummy operation.
Only instantiated for non-lockable specializations.
Definition at line 357 of file loggerxaids.hpp.
Referenced by stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::adjustChild().
12.6.5.5 template<class StringT, word lockingPolicy> int stm::local::basic_xlogger< StringT,lockingPolicy >::adjustSync (boost::mpl::int_< logger_base::ProcessLocking >) [inline,protected]
Dummy operation.
Only instantiated for non-system-wide lockable specializations.
Definition at line 365 of file loggerxaids.hpp.
12.6.5.6 template<class StringT, word lockingPolicy> int stm::local::basic_xlogger< StringT,lockingPolicy >::adjustSync (boost::mpl::int_< logger_base::SystemLocking >) [inline,protected]
Dummy operation on systems without fork system call, else adjust the named mutex of a basic_xloggerobject after a call to fork().
Only instantiated for system-wide lockable specializations.
Definition at line 374 of file loggerxaids.hpp.
12.6.5.7 template<class StringT, word lockingPolicy> int stm::local::basic_xlogger< StringT,lockingPolicy >::printch (char_type ch, dword n, bool para = false) [inline, protected]
Print ch n times to the streams configured.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.6 stm::local::basic_xlogger< StringT, lockingPolicy > Class Template Reference 142
The operation is ended on the first error occurred in which case a negative value is returned, or else thenumber of characters written to the last stream configured. If no stream is configured, 0 is returned.
Definition at line 384 of file loggerxaids.hpp.
Referenced by stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::operator()(), andstm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::underline().
12.6.5.8 template<class StringT, word lockingPolicy> bool stm::local::basic_xlogger< StringT,lockingPolicy >::tprint (const string_type & sep, const string_type & token, bool lastToken)[inline, protected]
Print token preceded by sep accordingly formatted.
Definition at line 408 of file loggerxaids.hpp.
Referenced by stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::operator()().
12.6.5.9 template<class StringT, word lockingPolicy> void stm::local::basic_xlogger< StringT,lockingPolicy >::clearNls () [inline, protected]
Definition at line 586 of file loggerxaids.hpp.
Referenced by stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::operator()(), andstm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::underline().
12.6.6 Member Data Documentation
12.6.6.1 template<class StringT, word lockingPolicy> Stream stm::local::basic_xlogger< StringT,lockingPolicy >::output[Streams] [protected]
Array of streams to output to, if its elements are not NULL.
Definition at line 597 of file loggerxaids.hpp.
Referenced by stm::local::basic_xlogger< std::string, lockingPolicy >::basic_xlogger(),stm::local::basic_xlogger< std::string, lockingPolicy >::clearNls(), stm::basic_logger< StringT,stdIndent, lineLength, lockingPolicy >::hasConsole(), stm::basic_logger< StringT, stdIndent, line-Length, lockingPolicy >::operator()(), stm::basic_logger< StringT, stdIndent, lineLength, locking-Policy >::paragraph(), stm::local::basic_xlogger< std::string, lockingPolicy >::printch(), stm::basic_-logger< StringT, stdIndent, lineLength, lockingPolicy >::setConsole(), stm::local::basic_xlogger<std::string, lockingPolicy >::tprint(), stm::basic_logger< StringT, stdIndent, lineLength, locking-Policy >::unsetConsole(), and stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy>::unsetStream().
12.6.6.2 template<class StringT, word lockingPolicy> boost::mpl::if_c< lockingPolicy == logger_-base::NoLocking, boost::mpl::void_, typename boost::mpl::if_c < lockingPolicy == logger_-base::ProcessLocking, StmMutex, StmNamedMutex >::type >::type stm::local::basic_xlogger<StringT, lockingPolicy >::sync_ [mutable, protected]
Sync type object according to the locking policy.
Definition at line 610 of file loggerxaids.hpp.
Referenced by stm::local::basic_xlogger< std::string, lockingPolicy >::adjustSync(), andstm::local::basic_xlogger< std::string, lockingPolicy >::destroySync().
The documentation for this class was generated from the following file:
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.7 stm::local::basic_xlogger< StringT, lockingPolicy >::Fmt Struct Reference 143
• loggerxaids.hpp
12.7 stm::local::basic_xlogger< StringT, lockingPolicy >::Fmt Struct Reference
#include <loggerxaids.hpp>
Inheritance diagram for stm::local::basic_xlogger< StringT, lockingPolicy >::Fmt:
stm::local::basic_xlogger< StringT, lockingPolicy >::Fmt
stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::Fmt
12.7.1 Detailed Description
template<class StringT, word lockingPolicy> struct stm::local::basic_xlogger< StringT, lockingPol-icy >::Fmt
Definition at line 175 of file loggerxaids.hpp.
Public Member Functions
• Fmt (word flags=NoFlag, word indent=0, word length=0)• bool operator== (const Fmt &other) const
Public Attributes
• dword indent_: 16• dword minIndent_: 16• dword length_: 16• dword flags_: 16
12.7.2 Constructor & Destructor Documentation
12.7.2.1 template<class StringT, word lockingPolicy> stm::local::basic_xlogger< StringT, lock-ingPolicy >::Fmt::Fmt (word flags = NoFlag, word indent = 0, word length = 0) [inline]
Reimplemented in stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::Fmt.
Definition at line 177 of file loggerxaids.hpp.
References stm::local::basic_xlogger< StringT, lockingPolicy >::Fmt::flags_, stm::local::basic_xlogger<StringT, lockingPolicy >::Indent, stm::LogLevelMask, and stm::local::basic_xlogger< StringT, locking-Policy >::Single.
12.7.3 Member Function Documentation
12.7.3.1 template<class StringT, word lockingPolicy> bool stm::local::basic_xlogger< StringT,lockingPolicy >::Fmt::operator== (const Fmt & other) const [inline]
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.8 stm::local::basic_xlogger< StringT, lockingPolicy >::locker Class Reference 144
Definition at line 189 of file loggerxaids.hpp.
References stm::local::basic_xlogger< StringT, lockingPolicy >::Fmt::flags_, stm::local::basic_-xlogger< StringT, lockingPolicy >::Fmt::indent_, stm::local::basic_xlogger< StringT, lockingPolicy>::Fmt::length_, and stm::local::basic_xlogger< StringT, lockingPolicy >::Fmt::minIndent_.
12.7.4 Member Data Documentation
12.7.4.1 template<class StringT, word lockingPolicy> dword stm::local::basic_xlogger< StringT,lockingPolicy >::Fmt::indent_
Definition at line 198 of file loggerxaids.hpp.
Referenced by stm::local::basic_xlogger< StringT, lockingPolicy >::Fmt::operator==(), andstm::local::basic_xlogger< std::string, lockingPolicy >::tprint().
12.7.4.2 template<class StringT, word lockingPolicy> dword stm::local::basic_xlogger< StringT,lockingPolicy >::Fmt::minIndent_
Definition at line 199 of file loggerxaids.hpp.
Referenced by stm::local::basic_xlogger< StringT, lockingPolicy >::Fmt::operator==(), andstm::local::basic_xlogger< std::string, lockingPolicy >::tprint().
12.7.4.3 template<class StringT, word lockingPolicy> dword stm::local::basic_xlogger< StringT,lockingPolicy >::Fmt::length_
Definition at line 200 of file loggerxaids.hpp.
Referenced by stm::local::basic_xlogger< StringT, lockingPolicy >::Fmt::operator==(), andstm::local::basic_xlogger< std::string, lockingPolicy >::tprint().
12.7.4.4 template<class StringT, word lockingPolicy> dword stm::local::basic_xlogger< StringT,lockingPolicy >::Fmt::flags_
Definition at line 201 of file loggerxaids.hpp.
Referenced by stm::local::basic_xlogger< StringT, lockingPolicy >::Fmt::Fmt(), stm::basic_logger<StringT, stdIndent, lineLength, lockingPolicy >::operator()(), stm::local::basic_xlogger< StringT, lock-ingPolicy >::Fmt::operator==(), and stm::local::basic_xlogger< std::string, lockingPolicy >::tprint().
The documentation for this struct was generated from the following file:
• loggerxaids.hpp
12.8 stm::local::basic_xlogger< StringT, lockingPolicy >::locker Class Reference
#include <loggerxaids.hpp>
Inheritance diagram for stm::local::basic_xlogger< StringT, lockingPolicy >::locker:
stm::local::basic_xlogger< StringT, lockingPolicy >::locker
stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::locker
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.9 stm::local::basic_xlogger< StringT, lockingPolicy >::no_lock Class Reference 145
12.8.1 Detailed Description
template<class StringT, word lockingPolicy> class stm::local::basic_xlogger< StringT, lockingPol-icy >::locker
Definition at line 250 of file loggerxaids.hpp.
Protected Member Functions
• locker (const basic_xlogger< StringT, lockingPolicy > &logger)• ∼locker ()
12.8.2 Constructor & Destructor Documentation
12.8.2.1 template<class StringT, word lockingPolicy> stm::local::basic_xlogger< StringT, lock-ingPolicy >::locker::locker (const basic_xlogger< StringT, lockingPolicy > & logger) [inline,protected]
Definition at line 254 of file loggerxaids.hpp.
12.8.2.2 template<class StringT, word lockingPolicy> stm::local::basic_xlogger< StringT, lock-ingPolicy >::locker::∼locker () [inline, protected]
Reimplemented in stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::locker.
Definition at line 260 of file loggerxaids.hpp.
The documentation for this class was generated from the following file:
• loggerxaids.hpp
12.9 stm::local::basic_xlogger< StringT, lockingPolicy >::no_lock Class Refer-ence
#include <loggerxaids.hpp>
12.9.1 Detailed Description
template<class StringT, word lockingPolicy> class stm::local::basic_xlogger< StringT, lockingPol-icy >::no_lock
Dummy type for no locking.
Definition at line 229 of file loggerxaids.hpp.
Public Member Functions
• no_lock (boost::mpl::void_)
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.10 stm::local::basic_xlogger< StringT, lockingPolicy >::Stream Struct Reference 146
12.9.2 Constructor & Destructor Documentation
12.9.2.1 template<class StringT, word lockingPolicy> stm::local::basic_xlogger< StringT, lock-ingPolicy >::no_lock::no_lock (boost::mpl::void_) [inline]
Definition at line 232 of file loggerxaids.hpp.
The documentation for this class was generated from the following file:
• loggerxaids.hpp
12.10 stm::local::basic_xlogger< StringT, lockingPolicy >::Stream Struct Refer-ence
#include <loggerxaids.hpp>
Collaboration diagram for stm::local::basic_xlogger< StringT, lockingPolicy >::Stream:
stm::local::basic_xlogger< StringT, lockingPolicy >::Stream
stm::local::basic_xlogger< StringT, lockingPolicy >::Fmt
fmt
12.10.1 Detailed Description
template<class StringT, word lockingPolicy> struct stm::local::basic_xlogger< StringT, lockingPol-icy >::Stream
Definition at line 204 of file loggerxaids.hpp.
Public Types
• enum {
ColonInactive = 0,
ColonScan = 1,
ColonFound = 2,
ColonReady = 3 }
Public Attributes
• ostream_type ∗ pStream• Fmt fmt• dword nls
Number of trailing newlines printed recently.
• dword index• dword ret• dword colonState• bool wrapped
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.10 stm::local::basic_xlogger< StringT, lockingPolicy >::Stream Struct Reference 147
12.10.2 Member Enumeration Documentation
12.10.2.1 template<class StringT, word lockingPolicy> anonymous enum
Enumerator:
ColonInactiveColonScanColonFoundColonReady
Definition at line 206 of file loggerxaids.hpp.
12.10.3 Member Data Documentation
12.10.3.1 template<class StringT, word lockingPolicy> ostream_type∗ stm::local::basic_xlogger<StringT, lockingPolicy >::Stream::pStream
Definition at line 214 of file loggerxaids.hpp.
Referenced by stm::local::basic_xlogger< std::string, lockingPolicy >::basic_xlogger(), stm::basic_-logger< StringT, stdIndent, lineLength, lockingPolicy >::hasConsole(), stm::basic_logger< StringT,stdIndent, lineLength, lockingPolicy >::operator()(), stm::basic_logger< StringT, stdIndent, line-Length, lockingPolicy >::setConsole(), stm::basic_logger< StringT, stdIndent, lineLength, lock-ingPolicy >::unsetConsole(), and stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy>::unsetStream().
12.10.3.2 template<class StringT, word lockingPolicy> Fmt stm::local::basic_xlogger< StringT,lockingPolicy >::Stream::fmt
Definition at line 215 of file loggerxaids.hpp.
Referenced by stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::operator()(), andstm::local::basic_xlogger< std::string, lockingPolicy >::tprint().
12.10.3.3 template<class StringT, word lockingPolicy> dword stm::local::basic_xlogger< StringT,lockingPolicy >::Stream::nls
Number of trailing newlines printed recently.
Definition at line 216 of file loggerxaids.hpp.
Referenced by stm::local::basic_xlogger< std::string, lockingPolicy >::basic_xlogger(),stm::local::basic_xlogger< std::string, lockingPolicy >::clearNls(), stm::basic_logger< StringT,stdIndent, lineLength, lockingPolicy >::paragraph(), stm::local::basic_xlogger< std::string, locking-Policy >::printch(), stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::setConsole(),stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::unsetConsole(), and stm::basic_-logger< StringT, stdIndent, lineLength, lockingPolicy >::unsetStream().
12.10.3.4 template<class StringT, word lockingPolicy> dword stm::local::basic_xlogger< StringT,lockingPolicy >::Stream::index
Definition at line 217 of file loggerxaids.hpp.
Referenced by stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::operator()(), andstm::local::basic_xlogger< std::string, lockingPolicy >::tprint().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.11 stm::smartptr::bijective< T, Compare, Allocator, Policy > Class Template Reference 148
12.10.3.5 template<class StringT, word lockingPolicy> dword stm::local::basic_xlogger< StringT,lockingPolicy >::Stream::ret
Definition at line 218 of file loggerxaids.hpp.
Referenced by stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::operator()(), andstm::local::basic_xlogger< std::string, lockingPolicy >::tprint().
12.10.3.6 template<class StringT, word lockingPolicy> dword stm::local::basic_xlogger< StringT,lockingPolicy >::Stream::colonState
Definition at line 219 of file loggerxaids.hpp.
Referenced by stm::local::basic_xlogger< std::string, lockingPolicy >::basic_xlogger(), stm::basic_-logger< StringT, stdIndent, lineLength, lockingPolicy >::operator()(), stm::basic_logger< StringT, stdIn-dent, lineLength, lockingPolicy >::setConsole(), stm::local::basic_xlogger< std::string, lockingPolicy>::tprint(), stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::unsetConsole(), andstm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::unsetStream().
12.10.3.7 template<class StringT, word lockingPolicy> bool stm::local::basic_xlogger< StringT,lockingPolicy >::Stream::wrapped
Definition at line 220 of file loggerxaids.hpp.
Referenced by stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::operator()(), andstm::local::basic_xlogger< std::string, lockingPolicy >::tprint().
The documentation for this struct was generated from the following file:
• loggerxaids.hpp
12.11 stm::smartptr::bijective< T, Compare, Allocator, Policy > Class TemplateReference
#include <smartptraids.hpp>
12.11.1 Detailed Description
template<class T, class Compare = std::less<T>, class Allocator = std::allocator<T>, class Policy= stm::smartptr::policy<stm::smartptr::Surjective>> class stm::smartptr::bijective< T, Compare,Allocator, Policy >
The traits class template bijective combines the class template injective_ptr and its associated class templateinjective_set having the surjective policy property.
Definition at line 721 of file smartptraids.hpp.
Public Types
• typedef injective_ptr< T, Compare, Allocator, MakeSurjective< Policy > > ptrinjective_ptr type conforming to Policy but with the surjective policy enabled independent of Policy.
• typedef injective_set< T, Compare, Allocator, MakeMultirange< MakeSurjective< Policy > > >set
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.12 stm::tools::BinMessage< ContextT > Class Template Reference 149
injective_set type conforming to Policy but with the surjective policy enabled independent of Policy.
• typedef boost::mpl::true_ surjectiveSurjective policy type being boost::mpl::true_ independent of Policy.
12.11.2 Member Typedef Documentation
12.11.2.1 template<class T, class Compare = std::less<T>, class Allocator = std::allocator<T>,class Policy = stm::smartptr::policy<stm::smartptr::Surjective>> typedef injective_ptr<T, Com-pare, Allocator, MakeSurjective<Policy> > stm::smartptr::bijective< T, Compare, Allocator, Pol-icy >::ptr
injective_ptr type conforming to Policy but with the surjective policy enabled independent of Policy.
Definition at line 726 of file smartptraids.hpp.
12.11.2.2 template<class T, class Compare = std::less<T>, class Allocator = std::allocator<T>,class Policy = stm::smartptr::policy<stm::smartptr::Surjective>> typedef injective_set<T, Com-pare, Allocator, MakeMultirange<MakeSurjective<Policy> > > stm::smartptr::bijective< T,Compare, Allocator, Policy >::set
injective_set type conforming to Policy but with the surjective policy enabled independent of Policy.
Definition at line 730 of file smartptraids.hpp.
12.11.2.3 template<class T, class Compare = std::less<T>, class Allocator = std::allocator<T>,class Policy = stm::smartptr::policy<stm::smartptr::Surjective>> typedef boost::mpl::true_-stm::smartptr::bijective< T, Compare, Allocator, Policy >::surjective
Surjective policy type being boost::mpl::true_ independent of Policy.
Definition at line 733 of file smartptraids.hpp.
The documentation for this class was generated from the following file:
• smartptraids.hpp
12.12 stm::tools::BinMessage< ContextT > Class Template Reference
#include <binmsg.hpp>
Inheritance diagram for stm::tools::BinMessage< ContextT >:
stm::tools::BinMessage< ContextT >
stm::byte_iterator_range stm::tools::local::xBinMessage< ContextT >
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.12 stm::tools::BinMessage< ContextT > Class Template Reference 150
Collaboration diagram for stm::tools::BinMessage< ContextT >:
stm::tools::BinMessage< ContextT >
stm::byte_iterator_range
stm::tools::BaseMessage< ContextT >
stm::tools::local::xBaseMessage< ContextT >
body_
stm::tools::local::xBinMessage< ContextT >
message_
stm::tools::MsgTimestamp
timestamp_
stm::tools::local::xMsgTimestamp
12.12.1 Detailed Description
template<class ContextT> class stm::tools::BinMessage< ContextT >
Binary message scanning from a stm::byte_iterator_range.
ContextT shall be a specialization of BinMessageContext or be publicly derived therefrom. ThereforeContextT is a BinMessage<ContextT> factory and those types derived from BaseMessage<ContextT>registered as BinMessage<ContextT> types are known to that factory (see BinMessageCon-text::registerMessageType()).
Definition at line 404 of file binmsg.hpp.
Public Types
• enum {
NoFlags = 0x00000000,
ThrowOnError = basemessage_type::ThrowOnError }Bitwise orable flag bits.
• enum {
NoError = 0x00000000,
OutOfSync = basemessage_type::OutOfSync,
ConsistencyError = basemessage_type::ConsistencyError }Status values.
• typedef ContextT context_typeContext type of the messages to be scanned.
• typedef BaseMessage< ContextT > basemessage_typeCommon base type of all message types registered for the factory.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.12 stm::tools::BinMessage< ContextT > Class Template Reference 151
• typedef basemessage_type::Timestamp TimestampTimestamp type.
Public Member Functions
• BinMessage (const byte ∗first, const byte ∗last, context_type &context, dword flags=NoFlags) throw(std::exception)
Construct a BinMessage object from the range [first, last) read from context.
• virtual ∼BinMessage ()Virtual destructor to allow polymorphic class hierarchies.
• const std::string & type () constReturn the message type string.
• dword flags () constReturns the flags of the message.
• dword status () constReturns the status of the message.
• const Timestamp & timestamp () constReturns a reference to the message’s Timestamp.
• const byte_iterator_range & body () constReturns the byte range consisting of the message’s body excluding any padding bytes.
• context_type & context ()Returns the the message’s context.
Private Types
• typedef local::xBinMessage< ContextT > BinMessageImplImplementation.
12.12.2 Member Typedef Documentation
12.12.2.1 template<class ContextT> typedef local::xBinMessage<ContextT>stm::tools::BinMessage< ContextT >::BinMessageImpl [private]
Implementation.
Definition at line 409 of file binmsg.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.12 stm::tools::BinMessage< ContextT > Class Template Reference 152
12.12.2.2 template<class ContextT> typedef ContextT stm::tools::BinMessage< ContextT>::context_type
Context type of the messages to be scanned.
Reimplemented from stm::tools::local::xBinMessage< ContextT >.
Definition at line 413 of file binmsg.hpp.
12.12.2.3 template<class ContextT> typedef BaseMessage<ContextT> stm::tools::BinMessage<ContextT >::basemessage_type
Common base type of all message types registered for the factory.
Reimplemented from stm::tools::local::xBinMessage< ContextT >.
Definition at line 416 of file binmsg.hpp.
12.12.2.4 template<class ContextT> typedef basemessage_type::Timestampstm::tools::BinMessage< ContextT >::Timestamp
Timestamp type.
Definition at line 419 of file binmsg.hpp.
12.12.3 Member Enumeration Documentation
12.12.3.1 template<class ContextT> anonymous enum
Bitwise orable flag bits.
Enumerator:
NoFlagsThrowOnError
Definition at line 422 of file binmsg.hpp.
12.12.3.2 template<class ContextT> anonymous enum
Status values.
Enumerator:
NoErrorOutOfSyncConsistencyError
Definition at line 429 of file binmsg.hpp.
12.12.4 Constructor & Destructor Documentation
12.12.4.1 template<class ContextT> stm::tools::BinMessage< ContextT >::BinMessage (constbyte ∗ first, const byte ∗ last, context_type & context, dword flags = NoFlags) throw (std::exception)[inline]
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.12 stm::tools::BinMessage< ContextT > Class Template Reference 153
Construct a BinMessage object from the range [first, last) read from context.
If a binary message consisting of one of the binary message types registered for the binary message factoryof BinMessageContext begins with first and fits completely into the supplied range [first, last), the con-structor succeeds. Then the method status() returns BinMessage::NoError, the method begin() returns first,the method end() returns a byte pointer to the byte after the possibly padded end of the message and themethod body() returns the byte range consisting of the message’s body excluding any padding bytes.
Else if the flags bit BinMessage::ThrowOnError is not set, status () returns BinMessage::OutOfSync orBinMessage::ConsistencyError, begin() returns first, end() returns a byte pointer to the next plausible be-gin of a message and body() returns the offended byte range which may be empty. If the flags bit BinMes-sage::ThrowOnError is set, the construcor throws std::runtime_error in these cases.
On other errors the constructor throws std::logic_error, if one of the arguments supplied is wrong, orstd::range_error, if a binary message potentially begins with first, but does not fit completely into therange [first, last).
Definition at line 722 of file xbinmsg.hpp.
12.12.4.2 template<class ContextT> stm::tools::BinMessage< ContextT >::∼BinMessage ()[inline, virtual]
Virtual destructor to allow polymorphic class hierarchies.
Definition at line 744 of file xbinmsg.hpp.
References stm::tools::local::xBinMessage< ContextT >::message_.
12.12.5 Member Function Documentation
12.12.5.1 template<class ContextT> const std::string & stm::tools::BinMessage< ContextT>::type () const [inline]
Return the message type string.
Definition at line 751 of file xbinmsg.hpp.
References stm::tools::local::xBinMessage< ContextT >::context_, and stm::tools::local::xBinMessage<ContextT >::message_.
12.12.5.2 template<class ContextT> dword stm::tools::BinMessage< ContextT >::flags () const[inline]
Returns the flags of the message.
Definition at line 761 of file xbinmsg.hpp.
References stm::tools::local::xBinMessage< ContextT >::flags_.
12.12.5.3 template<class ContextT> dword stm::tools::BinMessage< ContextT >::status () const[inline]
Returns the status of the message.
Definition at line 768 of file xbinmsg.hpp.
References stm::tools::local::xBinMessage< ContextT >::message_, and stm::tools::BaseMessage< Con-textT >::OutOfSync.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.13 stm::tools::BinMessageContext< DataT, InputRangeT, ContextT > Class TemplateReference 154
12.12.5.4 template<class ContextT> const BinMessage< ContextT >::Timestamp &stm::tools::BinMessage< ContextT >::timestamp () const [inline]
Returns a reference to the message’s Timestamp.
Definition at line 780 of file xbinmsg.hpp.
References stm::tools::local::xBinMessage< ContextT >::message_.
12.12.5.5 template<class ContextT> const byte_iterator_range & stm::tools::BinMessage< Con-textT >::body () const [inline]
Returns the byte range consisting of the message’s body excluding any padding bytes.
Definition at line 800 of file xbinmsg.hpp.
References stm::tools::local::xBinMessage< ContextT >::message_.
Referenced by stm::tools::LvdsPacket< ContextT >::LvdsPacket().
12.12.5.6 template<class ContextT> BinMessage< ContextT >::context_type &stm::tools::BinMessage< ContextT >::context () [inline]
Returns the the message’s context.
Definition at line 793 of file xbinmsg.hpp.
References stm::tools::local::xBinMessage< ContextT >::context_.
The documentation for this class was generated from the following files:
• binmsg.hpp• xbinmsg.hpp
12.13 stm::tools::BinMessageContext< DataT, InputRangeT, ContextT > ClassTemplate Reference
#include <binmsg.hpp>
Inheritance diagram for stm::tools::BinMessageContext< DataT, InputRangeT, ContextT >:
stm::tools::BinMessageContext< DataT, InputRangeT, ContextT >
stm::tools::BaseMessageContext< DataT, InputRangeT, ContextT >stm::tools::local::xBaseMessageContext< DataT, InputRangeT, ContextT >
stm::tools::local::xBinMessageContext< ContextT >
Collaboration diagram for stm::tools::BinMessageContext< DataT, InputRangeT, ContextT >:
stm::tools::BinMessageContext< DataT, InputRangeT, ContextT >
stm::tools::BaseMessageContext< DataT, InputRangeT, ContextT >stm::tools::local::xBaseMessageContext< DataT, InputRangeT, ContextT >stm::tools::MsgTimestamptimestamp_
stm::tools::local::xMsgTimestamp
stm::tools::local::xBinMessageContext< ContextT >stm::tools::local::xBinMessageGapgap_
12.13.1 Detailed Description
template<class DataT, class InputRangeT, class ContextT> class stm::tools::BinMessageContext<DataT, InputRangeT, ContextT >
Binary message context type.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.13 stm::tools::BinMessageContext< DataT, InputRangeT, ContextT > Class TemplateReference 155
BinMessageContext<DataT, InputRangeT> is a BinMessage<ContextT> factory for which class tem-plates Message can be registered as binary message types known to that factory where Message<class>shall be publicly derived from BaseMessage<ContextT>. InputRangeT shall be a specialization ofstm::inputrange or be publicly derived therefrom.
Definition at line 332 of file binmsg.hpp.
Public Types
• typedef DataT data_typeType modelling the specialities of the kind of messages to be scanned.
• typedef InputRangeT inputrange_typeType representing a range of input files containing the messages to be scanned.
• typedef ContextT context_typeContext type of the messages to be scanned.
• typedef BaseMessage< ContextT > basemessage_typeCommon base type of all message types registered for the factory.
Public Member Functions
• BinMessageContext (data_type &data, inputrange_type &input)Constructs a BinMessageContext object for data and input.
• const Gap & gap () constReturns a reference to the gap consisting of those bytes recently read while out of sync.
• template<template< class > class Message>bool registerMessageType ()
Registers the binary message type MessageT to be known to the factory of this BinMessageContext.
Private Types
• typedef local::xBinMessageContext< ContextT > BinMessageContextImplImplementation.
Friends
• class local::xBinMessage< ContextT >
Implementation.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.13 stm::tools::BinMessageContext< DataT, InputRangeT, ContextT > Class TemplateReference 156
Classes
• class GapCharacterization of the gap, i.e.
12.13.2 Member Typedef Documentation
12.13.2.1 template<class DataT, class InputRangeT, class ContextT> typedeflocal::xBinMessageContext<ContextT> stm::tools::BinMessageContext< DataT, InputRangeT,ContextT >::BinMessageContextImpl [private]
Implementation.
Definition at line 337 of file binmsg.hpp.
12.13.2.2 template<class DataT, class InputRangeT, class ContextT> typedef DataTstm::tools::BinMessageContext< DataT, InputRangeT, ContextT >::data_type
Type modelling the specialities of the kind of messages to be scanned.
Reimplemented from stm::tools::BaseMessageContext< DataT, InputRangeT, ContextT >.
Definition at line 344 of file binmsg.hpp.
12.13.2.3 template<class DataT, class InputRangeT, class ContextT> typedef InputRangeTstm::tools::BinMessageContext< DataT, InputRangeT, ContextT >::inputrange_type
Type representing a range of input files containing the messages to be scanned.
It shall shall be a specialization of stm::inputrange or be publicly derived therefrom.
Reimplemented from stm::tools::BaseMessageContext< DataT, InputRangeT, ContextT >.
Definition at line 350 of file binmsg.hpp.
12.13.2.4 template<class DataT, class InputRangeT, class ContextT> typedef ContextTstm::tools::BinMessageContext< DataT, InputRangeT, ContextT >::context_type
Context type of the messages to be scanned.
Reimplemented from stm::tools::BaseMessageContext< DataT, InputRangeT, ContextT >.
Definition at line 353 of file binmsg.hpp.
12.13.2.5 template<class DataT, class InputRangeT, class ContextT> typedefBaseMessage<ContextT> stm::tools::BinMessageContext< DataT, InputRangeT, ContextT>::basemessage_type
Common base type of all message types registered for the factory.
Reimplemented from stm::tools::local::xBinMessageContext< ContextT >.
Definition at line 356 of file binmsg.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.14 stm::tools::BinMessageContext< DataT, InputRangeT, ContextT >::Gap Class Reference157
12.13.3 Constructor & Destructor Documentation
12.13.3.1 template<class DataT, class InputRangeT, class ContextT>stm::tools::BinMessageContext< DataT, InputRangeT, ContextT >::BinMessageContext (data_-type & data, inputrange_type & input) [inline]
Constructs a BinMessageContext object for data and input.
Definition at line 651 of file xbinmsg.hpp.
12.13.4 Member Function Documentation
12.13.4.1 template<class DataT, class InputRangeT, class ContextT> const BinMessageContext<DataT, InputRangeT, ContextT >::Gap & stm::tools::BinMessageContext< DataT, InputRangeT,ContextT >::gap () const [inline]
Returns a reference to the gap consisting of those bytes recently read while out of sync.
Definition at line 662 of file xbinmsg.hpp.
References stm::tools::local::xBinMessageContext< ContextT >::gap_.
12.13.4.2 template<class DataT, class InputRangeT, class ContextT> template<template<class > class Message> bool stm::tools::BinMessageContext< DataT, InputRangeT, ContextT>::registerMessageType () [inline]
Registers the binary message type MessageT to be known to the factory of this BinMessageContext.
Message<class> shall be publicly derived from basemessage_type.
Definition at line 674 of file xbinmsg.hpp.
References stm::tools::local::xBinMessageContext< ContextT >::creation_.
12.13.5 Friends And Related Function Documentation
12.13.5.1 template<class DataT, class InputRangeT, class ContextT> friend classlocal::xBinMessage< ContextT > [friend]
Implementation.
Definition at line 340 of file binmsg.hpp.
The documentation for this class was generated from the following files:
• binmsg.hpp• xbinmsg.hpp
12.14 stm::tools::BinMessageContext< DataT, InputRangeT, ContextT >::GapClass Reference
#include <binmsg.hpp>
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.14 stm::tools::BinMessageContext< DataT, InputRangeT, ContextT >::Gap Class Reference158
Inheritance diagram for stm::tools::BinMessageContext< DataT, InputRangeT, ContextT >::Gap:
stm::tools::BinMessageContext< DataT, InputRangeT, ContextT >::Gap
stm::tools::local::xBinMessageGap
Collaboration diagram for stm::tools::BinMessageContext< DataT, InputRangeT, ContextT >::Gap:
stm::tools::BinMessageContext< DataT, InputRangeT, ContextT >::Gap
stm::tools::local::xBinMessageGap
12.14.1 Detailed Description
template<class DataT, class InputRangeT, class ContextT> class stm::tools::BinMessageContext<DataT, InputRangeT, ContextT >::Gap
Characterization of the gap, i.e.
the bytes recently read while out of sync.
Definition at line 361 of file binmsg.hpp.
Public Member Functions
• Gap ()Construct a gap of length 0.
• operator bool () constReturns true, if there was a gap of positive length, else false.
• long long offset () constOffset within the concatenation of all input files of the gap begin.
• long long length () constByte length of the gap.
Friends
• class BinMessageContext< DataT, InputRangeT, ContextT >
12.14.2 Constructor & Destructor Documentation
12.14.2.1 template<class DataT, class InputRangeT, class ContextT>stm::tools::BinMessageContext< DataT, InputRangeT, ContextT >::Gap::Gap () [inline]
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.15 stm::local::BraceExpand Class Reference 159
Construct a gap of length 0.
Definition at line 690 of file xbinmsg.hpp.
12.14.3 Member Function Documentation
12.14.3.1 template<class DataT, class InputRangeT, class ContextT>stm::tools::BinMessageContext< DataT, InputRangeT, ContextT >::Gap::operator bool ()const [inline]
Returns true, if there was a gap of positive length, else false.
Definition at line 710 of file xbinmsg.hpp.
References stm::tools::local::xBinMessageGap::length_.
12.14.3.2 template<class DataT, class InputRangeT, class ContextT> long longstm::tools::BinMessageContext< DataT, InputRangeT, ContextT >::Gap::offset () const[inline]
Offset within the concatenation of all input files of the gap begin.
Definition at line 696 of file xbinmsg.hpp.
References stm::tools::local::xBinMessageGap::offset_.
12.14.3.3 template<class DataT, class InputRangeT, class ContextT> long longstm::tools::BinMessageContext< DataT, InputRangeT, ContextT >::Gap::length () const[inline]
Byte length of the gap.
Definition at line 703 of file xbinmsg.hpp.
References stm::tools::local::xBinMessageGap::length_.
12.14.4 Friends And Related Function Documentation
12.14.4.1 template<class DataT, class InputRangeT, class ContextT> friend classBinMessageContext< DataT, InputRangeT, ContextT > [friend]
Definition at line 363 of file binmsg.hpp.
The documentation for this class was generated from the following files:
• binmsg.hpp• xbinmsg.hpp
12.15 stm::local::BraceExpand Class Reference
#include <filesysxaids.hpp>
12.15.1 Detailed Description
Brace expansion implementation class.
Definition at line 885 of file filesysxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.16 stm::local::BraceExpand::Data Struct Reference 160
Static Public Member Functions
• static StmRe re ()
Static Private Member Functions
• static int toExpand (StmMtcFctCmd cmd, StmReMtc reMtc)
Static Private Attributes
• static StmRe re_
Classes
• struct Data
12.15.2 Member Function Documentation
12.15.2.1 static StmRe stm::local::BraceExpand::re () [inline, static]
Definition at line 932 of file filesysxaids.hpp.
References stm::rectrl::identity, stm::rectrl::initialize(), and stmReCreate().
Referenced by stm::brace_expand().
12.15.2.2 int stm::local::BraceExpand::toExpand (StmMtcFctCmd cmd, StmReMtc reMtc)[static, private]
Definition at line 513 of file filesysaids.cpp.
References StmMtcFctCmd::action, StmMtcFctCmd::deinit, stm::local::BraceExpand::Data::head,StmMtcFctCmd::init, StmMtcFctCmd::rollback, StmDebugAidsVerify, stmQreMtcNthSim-pleReMtc(), stmQreMtcSimpleReMtcCount(), stmReMtcData(), stmReMtcNthQreMtc(), stmReMtc-NthQreMtcLen(), stmReMtcNthQreMtcStr(), stmReMtcSetData(), stmReMtcSuperQreMtc(), andstm::local::BraceExpand::Data::tail.
12.15.3 Member Data Documentation
12.15.3.1 StmRe stm::local::BraceExpand::re_ [static, private]
Definition at line 963 of file filesysxaids.hpp.
The documentation for this class was generated from the following files:
• filesysxaids.hpp• filesysaids.cpp
12.16 stm::local::BraceExpand::Data Struct Reference
#include <filesysxaids.hpp>
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.16 stm::local::BraceExpand::Data Struct Reference 161
Collaboration diagram for stm::local::BraceExpand::Data:
stm::local::BraceExpand::Data
stm::local::BraceExpand::Data::Tail
tail
12.16.1 Detailed Description
Definition at line 888 of file filesysxaids.hpp.
Public Member Functions
• Data ()• ∼Data ()• void operator() (boost::function< void(const std::string &)> add, const std::string &pre-
fix=std::string(), const std::string &postfix=std::string()) const
Public Attributes
• std::string head• Tail ∗ tail
Classes
• struct Tail
12.16.2 Constructor & Destructor Documentation
12.16.2.1 stm::local::BraceExpand::Data::Data () [inline]
Definition at line 892 of file filesysxaids.hpp.
12.16.2.2 stm::local::BraceExpand::Data::∼Data () [inline]
Definition at line 893 of file filesysxaids.hpp.
12.16.3 Member Function Documentation
12.16.3.1 void stm::local::BraceExpand::Data::operator() (boost::function< void(const std::string&)> add, const std::string & prefix = std::string (), const std::string & postfix =std::string ()) const [inline]
Definition at line 895 of file filesysxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.17 stm::local::BraceExpand::Data::Tail Struct Reference 162
12.16.4 Member Data Documentation
12.16.4.1 std::string stm::local::BraceExpand::Data::head
Definition at line 911 of file filesysxaids.hpp.
Referenced by stm::local::BraceExpand::toExpand().
12.16.4.2 Tail∗ stm::local::BraceExpand::Data::tail
Definition at line 912 of file filesysxaids.hpp.
Referenced by stm::local::BraceExpand::toExpand().
The documentation for this struct was generated from the following file:
• filesysxaids.hpp
12.17 stm::local::BraceExpand::Data::Tail Struct Reference
#include <filesysxaids.hpp>
12.17.1 Detailed Description
Definition at line 915 of file filesysxaids.hpp.
Public Member Functions
• Tail (const std::string &tail)• ∼Tail ()
Public Attributes
• std::list< Data ∗ > infix• std::string postfix
12.17.2 Constructor & Destructor Documentation
12.17.2.1 stm::local::BraceExpand::Data::Tail::Tail (const std::string & tail) [inline]
Definition at line 917 of file filesysxaids.hpp.
12.17.2.2 stm::local::BraceExpand::Data::Tail::∼Tail () [inline]
Definition at line 919 of file filesysxaids.hpp.
12.17.3 Member Data Documentation
12.17.3.1 std::list<Data ∗> stm::local::BraceExpand::Data::Tail::infix
Definition at line 928 of file filesysxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.18 stm::byte_iterator_range Class Reference 163
12.17.3.2 std::string stm::local::BraceExpand::Data::Tail::postfix
Definition at line 929 of file filesysxaids.hpp.
The documentation for this struct was generated from the following file:
• filesysxaids.hpp
12.18 stm::byte_iterator_range Class Reference
#include <divaids.hpp>
Inheritance diagram for stm::byte_iterator_range:
stm::byte_iterator_range
stm::tools::BaseMessage< ContextT > stm::tools::BinMessage< ContextT >
stm::tools::McBspMessage< ContextT > stm::tools::PrintkBinMessage< ContextT >
12.18.1 Detailed Description
Byte iterator range class.
Definition at line 342 of file divaids.hpp.
Public Member Functions
• byte_iterator_range ()Default constructor yielding the singular byte_iterator_range object.
• byte_iterator_range (const byte ∗first, const byte ∗last)Constructs a byte_iterator_range object representing the range [first, last).
• template<class ForwardRange>byte_iterator_range (ForwardRange &that)
Constructs a byte_iterator_range object from that.
• template<class ForwardRange>byte_iterator_range (const ForwardRange &that)
Constructs a byte_iterator_range object from that.
• template<typename T>
const T & safe_get (const byte ∗ptr) const throw (std::logic_error, std::range_error)Returns a constant reference to the T object beginning at byte address ptr.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.19 stm::smartptr::local::comp_id< T, Compare > Struct Template Reference 164
12.18.2 Constructor & Destructor Documentation
12.18.2.1 stm::byte_iterator_range::byte_iterator_range () [inline]
Default constructor yielding the singular byte_iterator_range object.
Definition at line 1589 of file divxaids.hpp.
12.18.2.2 stm::byte_iterator_range::byte_iterator_range (const byte ∗ first, const byte ∗ last)[inline]
Constructs a byte_iterator_range object representing the range [first, last).
Definition at line 1594 of file divxaids.hpp.
12.18.2.3 template<class ForwardRange> stm::byte_iterator_range::byte_iterator_range (For-wardRange & that) [inline]
Constructs a byte_iterator_range object from that.
Definition at line 1600 of file divxaids.hpp.
12.18.2.4 template<class ForwardRange> stm::byte_iterator_range::byte_iterator_range (constForwardRange & that) [inline]
Constructs a byte_iterator_range object from that.
Definition at line 1606 of file divxaids.hpp.
12.18.3 Member Function Documentation
12.18.3.1 template<typename T> const T & stm::byte_iterator_range::safe_get (const byte ∗ ptr)const throw (std::logic_error, std::range_error) [inline]
Returns a constant reference to the T object beginning at byte address ptr.
Throws std::logic_error, if ptr does not belong to the byte range [begin(), end()) and std::range_error, if theT object beginning at ptr does not fit into the range [ptr, end()).
Definition at line 1613 of file divxaids.hpp.
The documentation for this class was generated from the following files:
• divaids.hpp• divxaids.hpp
12.19 stm::smartptr::local::comp_id< T, Compare > Struct Template Reference
#include <smartptrxaids.hpp>
12.19.1 Detailed Description
template<class T, class Compare> struct stm::smartptr::local::comp_id< T, Compare >
Definition at line 534 of file smartptrxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.20 stm::smartptr::local::comp_value< T, Compare > Struct Template Reference 165
Public Member Functions
• bool operator() (stm::dword id, const item_type< T, Compare > &item) const• bool operator() (const item_type< T, Compare > &item, stm::dword id) const
12.19.2 Member Function Documentation
12.19.2.1 template<class T, class Compare> bool stm::smartptr::local::comp_id< T, Compare>::operator() (stm::dword id, const item_type< T, Compare > & item) const [inline]
Definition at line 538 of file smartptrxaids.hpp.
References stm::smartptr::local::item_type< T, Compare >::id.
12.19.2.2 template<class T, class Compare> bool stm::smartptr::local::comp_id< T, Compare>::operator() (const item_type< T, Compare > & item, stm::dword id) const [inline]
Definition at line 548 of file smartptrxaids.hpp.
References stm::smartptr::local::item_type< T, Compare >::id.
The documentation for this struct was generated from the following file:
• smartptrxaids.hpp
12.20 stm::smartptr::local::comp_value< T, Compare > Struct Template Refer-ence
#include <smartptrxaids.hpp>
12.20.1 Detailed Description
template<class T, class Compare> struct stm::smartptr::local::comp_value< T, Compare >
Definition at line 563 of file smartptrxaids.hpp.
Public Member Functions
• bool operator() (const T &value, const T ∗ptr) const• bool operator() (const T ∗ptr, const T &value) const
12.20.2 Member Function Documentation
12.20.2.1 template<class T, class Compare> bool stm::smartptr::local::comp_value< T, Compare>::operator() (const T & value, const T ∗ ptr) const [inline]
Definition at line 566 of file smartptrxaids.hpp.
12.20.2.2 template<class T, class Compare> bool stm::smartptr::local::comp_value< T, Compare>::operator() (const T ∗ ptr, const T & value) const [inline]
Definition at line 572 of file smartptrxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.21 stm::smartptr::local::comp_value_id< T, Compare > Struct Template Reference 166
The documentation for this struct was generated from the following file:
• smartptrxaids.hpp
12.21 stm::smartptr::local::comp_value_id< T, Compare > Struct Template Ref-erence
#include <smartptrxaids.hpp>
12.21.1 Detailed Description
template<class T, class Compare> struct stm::smartptr::local::comp_value_id< T, Compare >
Definition at line 499 of file smartptrxaids.hpp.
Public Member Functions
• bool operator() (const std::pair< const T, stm::dword > &value_id_pair, const item_type< T, Com-pare > &item) const
• bool operator() (const item_type< T, Compare > &item, const std::pair< const T, stm::dword >&value_id_pair) const
12.21.2 Member Function Documentation
12.21.2.1 template<class T, class Compare> bool stm::smartptr::local::comp_value_id< T, Com-pare >::operator() (const std::pair< const T, stm::dword > & value_id_pair, const item_type< T,Compare > & item) const [inline]
Definition at line 503 of file smartptrxaids.hpp.
References stm::smartptr::local::item_type< T, Compare >::id, and stm::smartptr::local::item_type< T,Compare >::ptr.
12.21.2.2 template<class T, class Compare> bool stm::smartptr::local::comp_value_id< T, Com-pare >::operator() (const item_type< T, Compare > & item, const std::pair< const T, stm::dword> & value_id_pair) const [inline]
Definition at line 516 of file smartptrxaids.hpp.
References stm::smartptr::local::item_type< T, Compare >::id, and stm::smartptr::local::item_type< T,Compare >::ptr.
The documentation for this struct was generated from the following file:
• smartptrxaids.hpp
12.22 stm::condition Class Reference
#include <divaids.hpp>
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.22 stm::condition Class Reference 167
Inheritance diagram for stm::condition:
stm::condition
stm::local::xcondition
Collaboration diagram for stm::condition:
stm::condition
stm::local::xcondition
12.22.1 Detailed Description
Condition class.
Definition at line 1023 of file divaids.hpp.
Public Member Functions
• condition ()Throws:
std::logic_error on error.
• ∼condition ()• void signal ()
Throws:
std::logic_error on error.
• void broadcast ()Throws:
std::logic_error on error.
• void wait (scoped_lock &lock)Throws:
std::logic_error on error.
• bool timed_wait (scoped_lock &lock, int64 absTimeMs)Throws:
std::logic_error on error.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.22 stm::condition Class Reference 168
12.22.2 Constructor & Destructor Documentation
12.22.2.1 stm::condition::condition () [inline, explicit]
Throws:
std::logic_error on error.
Definition at line 2819 of file divxaids.hpp.
References stm::local::xcondition::cond_.
12.22.2.2 stm::condition::∼condition () [inline]
Definition at line 2836 of file divxaids.hpp.
References stm::local::xcondition::cond_, and stmConditionDestroy().
12.22.3 Member Function Documentation
12.22.3.1 void stm::condition::signal () [inline]
Throws:
std::logic_error on error.
Definition at line 2842 of file divxaids.hpp.
References stm::local::xcondition::cond_, and stmConditionSignal().
12.22.3.2 void stm::condition::broadcast () [inline]
Throws:
std::logic_error on error.
Definition at line 2859 of file divxaids.hpp.
References stm::local::xcondition::cond_, and stmConditionBroadcast().
12.22.3.3 void stm::condition::wait (scoped_lock & lock) [inline]
Throws:
std::logic_error on error.
Definition at line 2876 of file divxaids.hpp.
References stm::local::xcondition::wait_().
12.22.3.4 bool stm::condition::timed_wait (scoped_lock & lock, int64 absTimeMs) [inline]
Throws:
std::logic_error on error.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.23 stm::crc< RemPolT > Class Template Reference 169
Definition at line 2883 of file divxaids.hpp.
References stm::local::xcondition::wait_().
The documentation for this class was generated from the following files:
• divaids.hpp• divxaids.hpp
12.23 stm::crc< RemPolT > Class Template Reference
#include <gencrc.hpp>
Inheritance diagram for stm::crc< RemPolT >:
stm::crc< RemPolT >
stm::local::xcrc< RemPolT >
Collaboration diagram for stm::crc< RemPolT >:
stm::crc< RemPolT >
stm::local::xcrc< RemPolT >
12.23.1 Detailed Description
template<typename RemPolT> class stm::crc< RemPolT >
Class template crc provides a means to generate cyclic redundancy check (CRC) remainder polynomials oftype RemPolT over buffers of byte-like objects.
The CRC algorithm works by computing the remainder of a modulo-2 polynominal division. The bufferto check is treated as the (binary) coefficents of a long polynominal for the dividend, with the higher orderbits of the buffer fed first as the polynominal’s highest coefficents. A particular CRC algorithm has anotherpolynominal, the so called generator polynomial, associated with it to be used as the divisor. The quotientis ignored. The remainder of the division is considered as checksum. However, the division uses modulo-2rules (no carries) for the coefficents.
RemPolT shall be an unsigned integer type as e.g. unsigned short, unsigned int, unsigned long, un-signed long long or maybe even unsigned char. The implementation uses a RemPolT table of dimen-sion 2∗∗sizeof(char) = 256. Because of the size and initialization time needed for this lookup table, it isproposed to generate one const crc<RemPolT> object for each generator polynomial needed as globallyas possible and reusing it everywhere CRC check remainder polynomials are needed. Also pointers orreferences to such const crc<RemPolT> objects may freely be passed around.
Examples:
gencrctest.cpp.
Definition at line 130 of file gencrc.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.23 stm::crc< RemPolT > Class Template Reference 170
Public Types
• typedef RemPolT rempol_typeThe type rempol_type represents CRC remainder polynomials.
Public Member Functions
• crc (rempol_type generatorPolynomial, rempol_type initialRemainderPolynomial=0, bool reflectIn-put=false)
Constructs a crc object usable to generate CRC remainder polynomials using the generator polynomialgeneratorPolynomial.
• template<typename InputIterator>rempol_type operator() (InputIterator first, InputIterator last, bool reflectRemainder=false, rempol_-type finalXorPolynomial=0) const
Return the CRC remainder polynomial over the value type buffer consisting of the half open interval [∗first,∗last) of value type objects.
• template<typename InputIterator>rempol_type operator() (rempol_type initialRemainderPolynomial, InputIterator first, InputIteratorlast, bool reflectRemainder=false, rempol_type finalXorPolynomial=0) const
Return the CRC remainder polynomial over the value type buffer consisting of the half open interval [∗first,∗last) of value type objects.
• template<typename InputIterator>rempol_type operator() (InputIterator first, size_t size, bool reflectRemainder=false, rempol_typefinalXorPolynomial=0) const
Return the CRC remainder polynomial over the value type buffer consisting of size value type objects be-ginning at ∗first.
• template<typename InputIterator>rempol_type operator() (rempol_type initialRemainderPolynomial, InputIterator first, size_t size,bool reflectRemainder=false, rempol_type finalXorPolynomial=0) const
Return the CRC remainder polynomial over the value type buffer consisting of size value type objects be-ginning at ∗first.
• bool inputReflection () constReturn true, if this object performs input reflection, else false.
• rempol_type generatorPolynomial () constReturn this object’s generator polynomial without the implicit leading coefficient.
• rempol_type defaultInitialRemainderPolynomial () constReturn this object’s default initial remainer polynomial.
Private Types
• typedef local::xcrc< RemPolT > implImplementation.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.23 stm::crc< RemPolT > Class Template Reference 171
12.23.2 Member Typedef Documentation
12.23.2.1 template<typename RemPolT> typedef local::xcrc<RemPolT> stm::crc< RemPolT>::impl [private]
Implementation.
Definition at line 133 of file gencrc.hpp.
12.23.2.2 template<typename RemPolT> typedef RemPolT stm::crc< RemPolT >::rempol_type
The type rempol_type represents CRC remainder polynomials.
CRC remainder polynomials are the sum ci∗x∗∗i (0 <= i <= deg) of monomials of the indeterminate xwith binary coefficients ci computed modulo-2 and the polynomial degree deg.
If s is the number of binary digits of rempol_type (this is 8 ∗ sizeof (rempol_type)), then the maximalpossible polynomial degree is deg = s - 1. Such a polynomial is represented in a rempol_type object byrepresenting the binary coefficient of its order i monomial as bit i of the rempol_type object.
Thus for example, for s = 16 rempol_type may be chosen as unsigned short and the CRC remainder poly-nomial
x**15 + x**12 + x**5 + x**0
is expressed as 0x9021.
Reimplemented from stm::local::xcrc< RemPolT >.
Definition at line 153 of file gencrc.hpp.
12.23.3 Constructor & Destructor Documentation
12.23.3.1 template<typename RemPolT> stm::crc< RemPolT >::crc (rempol_type generatorPoly-nomial, rempol_type initialRemainderPolynomial = 0, bool reflectInput = false) [inline,explicit]
Constructs a crc object usable to generate CRC remainder polynomials using the generator polynomialgeneratorPolynomial.
The generator polynomial is always assumed to be of degree s = 8 ∗ sizeof (rempol_type) and thus thecorresponding binary coefficient at the imaginary binary digit s is always assumed to be 1 and is notrepresented explicitly.
So for example, for s = 16 the generator polynomial of degree 16
x**16 + x**12 + x**5 + x**0
is expressed as unsigned short 0x1021.
By means of the optional parameter initialRemainderPolynomial a remainder polynomial serving as initialvalue for the check algorithm may be supplied. If this parameter is missing, 0 is assumed.
Normally the the input bits are fed a byte at a time, with the highest bits of a byte treated as the higher bitsof the dividend polynominal. Some CRC algorithms require to reflect the bits (about the byte’s center, sothe first and last bits are switched, etc.) before feeding.
With the optional parameter reflectInput set to true this behaviour may be chosen. If this parameter ismissing, false is assumed.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.23 stm::crc< RemPolT > Class Template Reference 172
Definition at line 236 of file genxcrc.hpp.
12.23.4 Member Function Documentation
12.23.4.1 template<typename RemPolT> template<typename InputIterator> crc< RemPolT>::rempol_type stm::crc< RemPolT >::operator() (InputIterator first, InputIterator last, bool re-flectRemainder = false, rempol_type finalXorPolynomial = 0) const [inline]
Return the CRC remainder polynomial over the value type buffer consisting of the half open interval [∗first,∗last) of value type objects.
The template parameter InputIterator shall conform to the inpuit iterator requirements (24.1.1). It may bea constant iterator and shall have a byte-like value type value_type with sizeof (value_type) == 1 and beconvertible to rempol_type. Thus e.g. for value_type char, signed char or unsigned char may be used andas InputIterator e.g. pointers or const pointers to one of these value types may be chosen.
As initial remainder polynomial defaultInitialRemainderPolynomial() specified by the constructor is used.If reflectRemainder is true (default: false), the computed remainder polynomial is reflected.
Just before return the result is xored with finalXorPolynomial, which is 0 by default.
Definition at line 253 of file genxcrc.hpp.
12.23.4.2 template<typename RemPolT> template<typename InputIterator> crc< RemPolT>::rempol_type stm::crc< RemPolT >::operator() (rempol_type initialRemainderPolynomial, In-putIterator first, InputIterator last, bool reflectRemainder = false, rempol_type finalXorPolyno-mial = 0) const [inline]
Return the CRC remainder polynomial over the value type buffer consisting of the half open interval [∗first,∗last) of value type objects.
The template parameter InputIterator shall conform to the inpuit iterator requirements (24.1.1). It may bea constant iterator and shall have a byte-like value type value_type with sizeof (value_type) == 1 and beconvertible to rempol_type. Thus e.g. for value_type char, signed char or unsigned char may be used andas InputIterator e.g. pointers or const pointers to one of these value types may be chosen.
As initial remainder polynomial the argument initialRemainderPolynomial is used.
If reflectRemainder is true (default: false), the computed remainder polynomial is reflected.
Just before return the result is xored with finalXorPolynomial, which is 0 by default.
Definition at line 268 of file genxcrc.hpp.
12.23.4.3 template<typename RemPolT> template<typename InputIterator> crc< RemPolT>::rempol_type stm::crc< RemPolT >::operator() (InputIterator first, size_t size, bool reflec-tRemainder = false, rempol_type finalXorPolynomial = 0) const [inline]
Return the CRC remainder polynomial over the value type buffer consisting of size value type objectsbeginning at ∗first.
The template parameter InputIterator shall conform to the inpuit iterator requirements (24.1.1). It may bea constant iterator and shall have a byte-like value type value_type with sizeof (value_type) == 1 and beconvertible to rempol_type. Thus e.g. for value_type char, signed char or unsigned char may be used andas InputIterator e.g. pointers or const pointers to one of these value types may be chosen.
As initial remainder polynomial defaultInitialRemainderPolynomial() specified by the constructor is used.
If reflectRemainder is true (default: false), the computed remainder polynomial is reflected.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.23 stm::crc< RemPolT > Class Template Reference 173
Just before return the result is xored with finalXorPolynomial, which is 0 by default.
Definition at line 290 of file genxcrc.hpp.
12.23.4.4 template<typename RemPolT> template<typename InputIterator> crc< RemPolT>::rempol_type stm::crc< RemPolT >::operator() (rempol_type initialRemainderPolynomial, In-putIterator first, size_t size, bool reflectRemainder = false, rempol_type finalXorPolynomial = 0)const [inline]
Return the CRC remainder polynomial over the value type buffer consisting of size value type objectsbeginning at ∗first.
The template parameter InputIterator shall conform to the inpuit iterator requirements (24.1.1). It may bea constant iterator and shall have a byte-like value type value_type with sizeof (value_type) == 1 and beconvertible to rempol_type. Thus e.g. for value_type char, signed char or unsigned char may be used andas InputIterator e.g. pointers or const pointers to one of these value types may be chosen.
As initial remainder polynomial the argument initialRemainderPolynomial is used.
If reflectRemainder is true (default: false), the computed remainder polynomial is reflected.
Just before return the result is xored with finalXorPolynomial, which is 0 by default.
Definition at line 305 of file genxcrc.hpp.
12.23.4.5 template<typename RemPolT> bool stm::crc< RemPolT >::inputReflection () const[inline]
Return true, if this object performs input reflection, else false.
Definition at line 326 of file genxcrc.hpp.
References stm::local::xcrc< RemPolT >::reflect_.
12.23.4.6 template<typename RemPolT> crc< RemPolT >::rempol_type stm::crc< RemPolT>::generatorPolynomial () const [inline]
Return this object’s generator polynomial without the implicit leading coefficient.
Definition at line 334 of file genxcrc.hpp.
References stm::local::xcrc< RemPolT >::generatorPolynomial_.
12.23.4.7 template<typename RemPolT> crc< RemPolT >::rempol_type stm::crc< RemPolT>::defaultInitialRemainderPolynomial () const [inline]
Return this object’s default initial remainer polynomial.
Definition at line 342 of file genxcrc.hpp.
References stm::local::xcrc< RemPolT >::defaultInitialRemainderPolynomial_.
The documentation for this class was generated from the following files:
• gencrc.hpp• genxcrc.hpp
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.24 stm::tools::Ct Class Reference 174
12.24 stm::tools::Ct Class Reference
#include <ctaids.hpp>
Inheritance diagram for stm::tools::Ct:
stm::tools::Ct
stm::tools::local::xCt
Collaboration diagram for stm::tools::Ct:
stm::tools::Ctstm::tools::local::xCtstm::logger< stdIndent, lineLength, errorConsole, lockingPolicy >logger_
stm::basic_logger< std::string, stdIndent, lineLength, lockingPolicy >
stm::logger_base
stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >
std::basic_ostringstream< std::string ::value_type, std::string ::traits_type, std::string ::allocator_type >
stm::local::basic_xlogger< std::string, lockingPolicy >
stm::local::basic_xlogger< StringT, lockingPolicy >::Stream output
stm::local::basic_xlogger< StringT, lockingPolicy >output
stm::local::basic_xlogger< StringT, lockingPolicy >::Fmtfmt
< std::string, lockingPolicy >
< std::string, stdIndent, lineLength, lockingPolicy >
12.24.1 Detailed Description
Main ClearCase cleartool aids class.
Definition at line 109 of file ctaids.hpp.
Public Types
• typedef logger LoggerType managing formatted logging to the console and/or into a protocol file.
Public Member Functions
• Ct (Logger &logger)Construct a Ct object prepared for logging with logger.
• Logger & logger () constReturn the logging object of this Ct.
• void setMode (int mode)Set the action mode of this Ct.
• int getMode () constReturn the action mode of this Ct.
• void setCiCommentOption (const std::string &ciCommentOption)Set the check in comment option of this Ct.
• const std::string & getCiCommentOption () constReturn the check in comment option of this Ct.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.24 stm::tools::Ct Class Reference 175
• void execCommand (const std::string &command) constThe method execCommand executes the console command.
Static Public Member Functions
• static bool isVobElement (const boost::filesystem::path &path)The static method isVobElement returns true, if path is a ClearCase VOB element, else false.
• static bool isCheckedOut (const boost::filesystem::path &path)The static method isCheckedOut returns true, if path is checked out, else false.
• static std::string getCurrentBranch (const std::string &path)Returns the current branch of the the ClearCase VOB element path.
• static std::string getCurrentMasterReplica (const std::string &branch)Returns the current ClearCase master replica of branch.
Classes
• class ArgListClass to hold multiple arguments for a command.
• struct ModeCt action modes.
12.24.2 Member Typedef Documentation
12.24.2.1 typedef logger stm::tools::Ct::Logger
Type managing formatted logging to the console and/or into a protocol file.
Reimplemented from stm::tools::local::xCt.
Definition at line 114 of file ctaids.hpp.
12.24.3 Constructor & Destructor Documentation
12.24.3.1 stm::tools::Ct::Ct (Logger & logger) [inline]
Construct a Ct object prepared for logging with logger.
Definition at line 303 of file xctaids.hpp.
12.24.4 Member Function Documentation
12.24.4.1 Ct::Logger & stm::tools::Ct::logger () const [inline]
Return the logging object of this Ct.
Definition at line 308 of file xctaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.24 stm::tools::Ct Class Reference 176
References stm::tools::local::xCt::logger_.
12.24.4.2 void stm::tools::Ct::setMode (int mode) [inline]
Set the action mode of this Ct.
Definition at line 314 of file xctaids.hpp.
References stm::tools::local::xCt::mode_.
12.24.4.3 int stm::tools::Ct::getMode () const [inline]
Return the action mode of this Ct.
Definition at line 321 of file xctaids.hpp.
References stm::tools::local::xCt::mode_.
Referenced by stm::tools::CtOperation::obtainReplicaMastership().
12.24.4.4 void stm::tools::Ct::setCiCommentOption (const std::string & ciCommentOption)[inline]
Set the check in comment option of this Ct.
Definition at line 327 of file xctaids.hpp.
References stm::tools::local::xCt::ciCommentOption_.
12.24.4.5 const std::string & stm::tools::Ct::getCiCommentOption () const [inline]
Return the check in comment option of this Ct.
Definition at line 334 of file xctaids.hpp.
References stm::tools::local::xCt::ciCommentOption_.
Referenced by stm::tools::CtOperation::checkOut().
12.24.4.6 void stm::tools::Ct::execCommand (const std::string & command) const
The method execCommand executes the console command.
If this Ct object is configured for action Verbose, additional diagnostics are logged according to this Ctobject’s logger. If this Ct object is configured for action Simulate, command is not executed but protocolledaccording to this Ct object’s logger instead. On error a std::runtime_error exception is thrown.
Definition at line 106 of file ctaids.cpp.
References stm::basic_logger< std::string, stdIndent, lineLength, lockingPolicy >::Indent,stm::tools::local::xCt::logger_, stm::tools::local::xCt::mode_, stm::basic_logger< std::string, stdIn-dent, lineLength, lockingPolicy >::NoPara, and stm::tools::Ct::Mode::Simulate.
Referenced by stm::tools::CtOperation::checkOut(), stm::tools::Ct::ArgList::exec(),stm::tools::CtOperation::label(), stm::tools::CtOperation::obtainReplicaMastership(), andstm::tools::CtOperation::prepareLabels().
12.24.4.7 bool stm::tools::Ct::isVobElement (const boost::filesystem::path & path) [static]
The static method isVobElement returns true, if path is a ClearCase VOB element, else false.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.25 stm::tools::Ct::ArgList Class Reference 177
Throws on error.
Definition at line 133 of file ctaids.cpp.
References PATHLEN.
Referenced by getCurrentBranch(), stm::tools::CtOperation::getCurrentReplica(), isCheckedOut(),stm::tools::CtOperation::isLabel(), and stm::tools::CtOperation::prepareLabels().
12.24.4.8 bool stm::tools::Ct::isCheckedOut (const boost::filesystem::path & path) [static]
The static method isCheckedOut returns true, if path is checked out, else false.
Throws on error.
Definition at line 178 of file ctaids.cpp.
References isVobElement(), and PATHLEN.
12.24.4.9 std::string stm::tools::Ct::getCurrentBranch (const std::string & path) [static]
Returns the current branch of the the ClearCase VOB element path.
Definition at line 223 of file ctaids.cpp.
References isVobElement(), stm::basic_logger< std::string, stdIndent, lineLength, lockingPolicy>::mkPath(), PATHLEN, and stm::trim().
Referenced by stm::tools::CtOperation::obtainReplicaMastership().
12.24.4.10 std::string stm::tools::Ct::getCurrentMasterReplica (const std::string & branch)[static]
Returns the current ClearCase master replica of branch.
Definition at line 279 of file ctaids.cpp.
References stm::basic_logger< std::string, stdIndent, lineLength, lockingPolicy >::mkPath(), andPATHLEN.
Referenced by stm::tools::CtOperation::obtainReplicaMastership().
The documentation for this class was generated from the following files:
• ctaids.hpp• xctaids.hpp• ctaids.cpp
12.25 stm::tools::Ct::ArgList Class Reference
#include <ctaids.hpp>
Inheritance diagram for stm::tools::Ct::ArgList:
stm::tools::Ct::ArgList
stm::tools::local::xArgList
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.25 stm::tools::Ct::ArgList Class Reference 178
Collaboration diagram for stm::tools::Ct::ArgList:
stm::tools::Ct::ArgListstm::tools::local::xArgListstm::tools::Ctct_
stm::tools::local::xCtstm::logger< stdIndent, lineLength, errorConsole, lockingPolicy >logger_
stm::basic_logger< std::string, stdIndent, lineLength, lockingPolicy >
stm::logger_base
stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >
std::basic_ostringstream< std::string ::value_type, std::string ::traits_type, std::string ::allocator_type >
stm::local::basic_xlogger< std::string, lockingPolicy >
stm::local::basic_xlogger< StringT, lockingPolicy >::Stream output
stm::local::basic_xlogger< StringT, lockingPolicy >output
stm::local::basic_xlogger< StringT, lockingPolicy >::Fmtfmt
< std::string, lockingPolicy >
< std::string, stdIndent, lineLength, lockingPolicy >
12.25.1 Detailed Description
Class to hold multiple arguments for a command.
Definition at line 128 of file ctaids.hpp.
Public Member Functions
• ArgList (const Ct &ct)Construct an empty ArgList object.
• ArgList & operator+= (const std::string &arg)Add arg to this ArgList object and return it.
• void exec (const std::string &command) constExecute command for all elements of this ArgList object.
• bool active () constReturn true, if this ArgList object contains at least one element.
12.25.2 Constructor & Destructor Documentation
12.25.2.1 stm::tools::Ct::ArgList::ArgList (const Ct & ct) [inline]
Construct an empty ArgList object.
Definition at line 262 of file xctaids.hpp.
12.25.3 Member Function Documentation
12.25.3.1 Ct::ArgList & stm::tools::Ct::ArgList::operator+= (const std::string & arg) [inline]
Add arg to this ArgList object and return it.
Definition at line 267 of file xctaids.hpp.
References stm::tools::local::xArgList::limit_, and stm::trim().
12.25.3.2 void stm::tools::Ct::ArgList::exec (const std::string & command) const [inline]
Execute command for all elements of this ArgList object.
command is assumed to work with multiple arguments but is called in a way that guarantees that the com-mand line length limit of the shell is not exceeded. For this to work, it is assumed, that executing commandseveral times with any successive partition of the arguments contained in this ArgList is semantically thesame as executing command once with all arguments of this ArgList.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.26 stm::tools::Ct::Mode Struct Reference 179
Definition at line 283 of file xctaids.hpp.
References stm::tools::local::xArgList::ct_, and stm::tools::Ct::execCommand().
Referenced by stm::tools::CtOperation::label().
12.25.3.3 bool stm::tools::Ct::ArgList::active () const [inline]
Return true, if this ArgList object contains at least one element.
Definition at line 293 of file xctaids.hpp.
The documentation for this class was generated from the following files:
• ctaids.hpp• xctaids.hpp
12.26 stm::tools::Ct::Mode Struct Reference
#include <ctaids.hpp>
12.26.1 Detailed Description
Ct action modes.
Definition at line 117 of file ctaids.hpp.
Public Types
• enum {
Normal,
Verbose,
Simulate }
12.26.2 Member Enumeration Documentation
12.26.2.1 anonymous enum
Enumerator:
NormalVerboseSimulate
Definition at line 119 of file ctaids.hpp.
The documentation for this struct was generated from the following file:
• ctaids.hpp
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.27 stm::tools::CtExceptions Class Reference 180
12.27 stm::tools::CtExceptions Class Reference
#include <ctaids.hpp>
Inheritance diagram for stm::tools::CtExceptions:
stm::tools::CtExceptions
stm::filespeclist
stm::local::xfilespeclist
Collaboration diagram for stm::tools::CtExceptions:
stm::tools::CtExceptions
stm::filespeclist
stm::local::xfilespeclist
12.27.1 Detailed Description
ClearCase cleartool exceptions class.
A CtExceptions object is a stm::filespeclist designating those file system elements which have to be handledspecially.
Definition at line 265 of file ctaids.hpp.
Bitwise orable flags
No flag.
• static const word NoFlags = 0x0000• static const word PlainFile = 0x0001
Directory content flag.
• static const word Directory = 0x0002Plain file content flag.
• static const word Content = PlainFile | DirectoryBit mask for possible content flags.
• static const word Include = 0x0004Include action flag.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.27 stm::tools::CtExceptions Class Reference 181
• static const word Exclude = 0x0008Exclude action flag.
• static const word Actions = Include | ExcludeBit mask for possible action flags.
Public Types
• typedef filespeclist::const_iterator const_iteratorConstant iterator inherited from stm::filespeclist.
Public Member Functions
• void add (const std::string &spec, word flags=NoFlags)If spec begins with a path separator, it is appended to the exception list without this path separator.
• bool excludes (const std::string &path, bool directory=false) constReturns true, if this CtExceptions object excludes the plain file (if directory is false, the default) or thedirectory designated by the relative path path, else false.
• void clear ()Clears the exception list.
12.27.2 Member Typedef Documentation
12.27.2.1 typedef filespeclist::const_iterator stm::tools::CtExceptions::const_iterator
Constant iterator inherited from stm::filespeclist.
Reimplemented from stm::filespeclist.
Definition at line 269 of file ctaids.hpp.
12.27.3 Member Function Documentation
12.27.3.1 void stm::tools::CtExceptions::add (const std::string & spec, word flags = NoFlags)
If spec begins with a path separator, it is appended to the exception list without this path separator.
Else it is modified to match an arbitrary amount of directories in its front and this relative path is thenappended to the exception list.
Definition at line 558 of file ctaids.cpp.
References stm::pstring::allowedSeparators, stm::filespeclist::append(),stm::filespec::beginsWithRootName(), stm::filespec::normalize(), StmDebugAidsVerify, andstm::filespec::UseMultipleDirOperator.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.27 stm::tools::CtExceptions Class Reference 182
12.27.3.2 bool stm::tools::CtExceptions::excludes (const std::string & path, bool directory =false) const [inline]
Returns true, if this CtExceptions object excludes the plain file (if directory is false, the default) or thedirectory designated by the relative path path, else false.
Definition at line 447 of file xctaids.hpp.
12.27.3.3 void stm::tools::CtExceptions::clear () [inline]
Clears the exception list.
Reimplemented from stm::filespeclist.
Definition at line 461 of file xctaids.hpp.
References stm::filespeclist::clear().
12.27.4 Member Data Documentation
12.27.4.1 const word stm::tools::CtExceptions::NoFlags = 0x0000 [static]
Reimplemented from stm::filespeclist.
Definition at line 278 of file ctaids.hpp.
12.27.4.2 const word stm::tools::CtExceptions::PlainFile = 0x0001 [static]
Directory content flag.
Definition at line 281 of file ctaids.hpp.
12.27.4.3 const word stm::tools::CtExceptions::Directory = 0x0002 [static]
Plain file content flag.
Definition at line 284 of file ctaids.hpp.
12.27.4.4 const word stm::tools::CtExceptions::Content = PlainFile | Directory [static]
Bit mask for possible content flags.
Definition at line 287 of file ctaids.hpp.
12.27.4.5 const word stm::tools::CtExceptions::Include = 0x0004 [static]
Include action flag.
Definition at line 290 of file ctaids.hpp.
12.27.4.6 const word stm::tools::CtExceptions::Exclude = 0x0008 [static]
Exclude action flag.
Definition at line 293 of file ctaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.28 stm::tools::CtOperation Class Reference 183
12.27.4.7 const word stm::tools::CtExceptions::Actions = Include | Exclude [static]
Bit mask for possible action flags.
Definition at line 296 of file ctaids.hpp.
The documentation for this class was generated from the following files:
• ctaids.hpp• xctaids.hpp• ctaids.cpp
12.28 stm::tools::CtOperation Class Reference
#include <ctaids.hpp>
Inheritance diagram for stm::tools::CtOperation:
stm::tools::CtOperation
stm::tools::local::xCtOperation
Collaboration diagram for stm::tools::CtOperation:
stm::tools::CtOperationstm::tools::local::xCtOperation
stm::tools::Ct ct_stm::tools::local::xCtstm::logger< stdIndent, lineLength, errorConsole, lockingPolicy >logger_
stm::basic_logger< std::string, stdIndent, lineLength, lockingPolicy >
stm::logger_base
stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >
std::basic_ostringstream< std::string ::value_type, std::string ::traits_type, std::string ::allocator_type >
stm::local::basic_xlogger< std::string, lockingPolicy >
stm::local::basic_xlogger< StringT, lockingPolicy >::Stream output
stm::local::basic_xlogger< StringT, lockingPolicy >output
stm::local::basic_xlogger< StringT, lockingPolicy >::Fmtfmt
< std::string, lockingPolicy >
< std::string, stdIndent, lineLength, lockingPolicy >
stm::tools::local::xCtOperation::LabelListlabelList_
12.28.1 Detailed Description
ClearCase cleartool operation class.
Definition at line 197 of file ctaids.hpp.
Public Member Functions
• CtOperation (Ct &ct, unsigned int getMastershipTimeoutSec=DefaultGetMastershipTimeoutSec)Constructs a CtOperation object for ct with get mastership timeout.
• const Ct & ct () constReturns a constant reference to the Ct object of this CtOperation.
• Ct & ct ()• void setVobRoot (const std::string &vobRoot)
Sets the ClearCase VOB root of this CtOperation to vobRoot.
• const std::string & getVobRoot () constReturns the ClearCase VOB root of this CtOperation.
• const std::string & getCurrentReplica () const
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.28 stm::tools::CtOperation Class Reference 184
Returns the current replica of the ClearCase VOB root of this CtOperation.
• int getMastershipTimeout () const• void setMastershipTimeout (unsigned int timeout)• bool obtainReplicaMastership (const std::string &path) const
Returns true, if the replica mastership for the ClearCase VOB element path could be obtained within get-MastershipTimeout() seconds, else false.
• void checkOut (const std::string &path) constThe method checks out the ClearCase VOB element path.
• size_t addLabels (const std::string &labelListSpec, bool replaceable=false)• void prepareLabels ()• size_t labelCount () const• void label (const std::string &element) const• void label (const Ct::ArgList &elements) const• bool isLabel (const std::string &label) const
The method isLabel returns true, if label is defined as a ClearCase label, else false.
Static Public Attributes
• static const unsigned int DefaultGetMastershipTimeoutSec = 5Default timeout in seconds to obtain the masterschip of a directory.
12.28.2 Constructor & Destructor Documentation
12.28.2.1 stm::tools::CtOperation::CtOperation (Ct & ct, unsigned int getMastershipTimeoutSec =DefaultGetMastershipTimeoutSec) [inline]
Constructs a CtOperation object for ct with get mastership timeout.
Definition at line 344 of file xctaids.hpp.
12.28.3 Member Function Documentation
12.28.3.1 const Ct & stm::tools::CtOperation::ct () const [inline]
Returns a constant reference to the Ct object of this CtOperation.
Definition at line 349 of file xctaids.hpp.
References stm::tools::local::xCtOperation::ct_.
12.28.3.2 Ct & stm::tools::CtOperation::ct () [inline]
Definition at line 355 of file xctaids.hpp.
References stm::tools::local::xCtOperation::ct_.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.28 stm::tools::CtOperation Class Reference 185
12.28.3.3 void stm::tools::CtOperation::setVobRoot (const std::string & vobRoot) [inline]
Sets the ClearCase VOB root of this CtOperation to vobRoot.
Definition at line 361 of file xctaids.hpp.
References stm::tools::local::xCtOperation::vobRoot_.
12.28.3.4 const std::string & stm::tools::CtOperation::getVobRoot () const [inline]
Returns the ClearCase VOB root of this CtOperation.
Definition at line 368 of file xctaids.hpp.
References stm::tools::local::xCtOperation::vobRoot_.
12.28.3.5 const std::string & stm::tools::CtOperation::getCurrentReplica () const
Returns the current replica of the ClearCase VOB root of this CtOperation.
Definition at line 321 of file ctaids.cpp.
References stm::tools::local::xCtOperation::currentReplica_, stm::tools::Ct::isVobElement(),stm::basic_logger< std::string, stdIndent, lineLength, lockingPolicy >::mkPath(), PATHLEN, andstm::tools::local::xCtOperation::vobRoot_.
Referenced by obtainReplicaMastership().
12.28.3.6 int stm::tools::CtOperation::getMastershipTimeout () const [inline]
Definition at line 374 of file xctaids.hpp.
References stm::tools::local::xCtOperation::mastershipTimeout_.
12.28.3.7 void stm::tools::CtOperation::setMastershipTimeout (unsigned int timeout) [inline]
Definition at line 380 of file xctaids.hpp.
References stm::tools::local::xCtOperation::mastershipTimeout_.
12.28.3.8 bool stm::tools::CtOperation::obtainReplicaMastership (const std::string & path) const
Returns true, if the replica mastership for the ClearCase VOB element path could be obtained withingetMastershipTimeout() seconds, else false.
Definition at line 416 of file ctaids.cpp.
References stm::tools::local::xCtOperation::ct_, stm::tools::Ct::execCommand(),stm::tools::Ct::getCurrentBranch(), stm::tools::Ct::getCurrentMasterReplica(), getCurren-tReplica(), stm::tools::Ct::getMode(), stm::tools::local::xCtOperation::mastershipTimeout_, andstm::tools::Ct::Mode::Simulate.
Referenced by checkOut().
12.28.3.9 void stm::tools::CtOperation::checkOut (const std::string & path) const
The method checks out the ClearCase VOB element path.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.28 stm::tools::CtOperation Class Reference 186
If path is a directory, first the replica masterschip is tried to obtain. On error a std::runtime_error exceptionis thrown.
Definition at line 450 of file ctaids.cpp.
References stm::tools::local::xCtOperation::ct_, stm::tools::Ct::execCommand(),stm::tools::Ct::getCiCommentOption(), stm::basic_logger< std::string, stdIndent, lineLength, lock-ingPolicy >::mkPath(), and obtainReplicaMastership().
12.28.3.10 size_t stm::tools::CtOperation::addLabels (const std::string & labelListSpec, bool re-placeable = false) [inline]
Definition at line 388 of file xctaids.hpp.
References stm::brace_expand(), and stm::tools::local::xCtOperation::labelList_.
12.28.3.11 void stm::tools::CtOperation::prepareLabels ()
Definition at line 468 of file ctaids.cpp.
References stm::tools::local::xCtOperation::ct_, stm::tools::Ct::execCommand(), is-Label(), stm::tools::Ct::isVobElement(), stm::tools::local::xCtOperation::labelList_-, stm::tools::local::xCtOperation::labelsPrepared_, stm::basic_logger< std::string, stdIndent, lineLength,lockingPolicy >::mkPath(), stm::tools::local::xCtOperation::LabelList::prepare(), StmElements, andstm::tools::local::xCtOperation::vobRoot_.
12.28.3.12 size_t stm::tools::CtOperation::labelCount () const [inline]
Definition at line 399 of file xctaids.hpp.
References stm::tools::local::xCtOperation::labelList_, and StmElements.
12.28.3.13 void stm::tools::CtOperation::label (const std::string & element) const [inline]
Definition at line 410 of file xctaids.hpp.
References stm::tools::local::xCtOperation::ct_, stm::tools::Ct::execCommand(),stm::tools::local::xCtOperation::LabelList::getCommand(), stm::tools::local::xCtOperation::labelList_,and StmElements.
12.28.3.14 void stm::tools::CtOperation::label (const Ct::ArgList & elements) const [inline]
Definition at line 426 of file xctaids.hpp.
References stm::tools::Ct::ArgList::exec(), stm::tools::local::xCtOperation::LabelList::getCommand(),stm::tools::local::xCtOperation::labelList_, and StmElements.
12.28.3.15 bool stm::tools::CtOperation::isLabel (const std::string & label) const
The method isLabel returns true, if label is defined as a ClearCase label, else false.
Throws on error.
Definition at line 503 of file ctaids.cpp.
References stm::tools::Ct::isVobElement(), PATHLEN, stm::trim(), andstm::tools::local::xCtOperation::vobRoot_.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.29 stm::smartptr::local::decrefcount< T, Compare, refcounted, multirange > Struct TemplateReference 187
Referenced by prepareLabels().
12.28.4 Member Data Documentation
12.28.4.1 const unsigned int stm::tools::CtOperation::DefaultGetMastershipTimeoutSec = 5[static]
Default timeout in seconds to obtain the masterschip of a directory.
Definition at line 201 of file ctaids.hpp.
The documentation for this class was generated from the following files:
• ctaids.hpp• xctaids.hpp• ctaids.cpp
12.29 stm::smartptr::local::decrefcount< T, Compare, refcounted, multirange >Struct Template Reference
#include <smartptrxaids.hpp>
12.29.1 Detailed Description
template<class T, class Compare, bool refcounted, bool multirange> structstm::smartptr::local::decrefcount< T, Compare, refcounted, multirange >
Definition at line 483 of file smartptrxaids.hpp.
Public Member Functions
• void operator() (item_descr< T, Compare, refcounted, multirange > &descr)
12.29.2 Member Function Documentation
12.29.2.1 template<class T, class Compare, bool refcounted, bool multirange> voidstm::smartptr::local::decrefcount< T, Compare, refcounted, multirange >::operator() (item_-descr< T, Compare, refcounted, multirange > & descr) [inline]
Definition at line 486 of file smartptrxaids.hpp.
The documentation for this struct was generated from the following file:
• smartptrxaids.hpp
12.30 stm::tools::DspMessage< ContextT > Class Template Reference
#include <dspmsg.hpp>
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.30 stm::tools::DspMessage< ContextT > Class Template Reference 188
Inheritance diagram for stm::tools::DspMessage< ContextT >:
stm::tools::DspMessage< ContextT >
stm::tools::local::xDspMessage< ContextT >
Collaboration diagram for stm::tools::DspMessage< ContextT >:
stm::tools::DspMessage< ContextT >stm::tools::local::xDspMessage< ContextT >stm::tools::BinMessage< ContextT >parent_
stm::byte_iterator_range
body_
stm::tools::BaseMessage< ContextT >
stm::tools::local::xBaseMessage< ContextT >
body_
stm::tools::local::xBinMessage< ContextT >message_
stm::tools::MsgTimestamptimestamp_
stm::tools::local::xMsgTimestamp
stm::tools::local::xTraceHeader
traceHeader_
12.30.1 Detailed Description
template<class ContextT> class stm::tools::DspMessage< ContextT >
DSP message contained in a binary message.
Definition at line 106 of file dspmsg.hpp.
Public Types
• enum { NoError = 0x00000000 }Error status.
• typedef ContextT context_typeContext type of the messages to be scanned.
• typedef BinMessage< ContextT > parent_typeType of the binary message wrapping this DspMessage.
Public Member Functions
• DspMessage (const parent_type &parent)Construct a DspMessage object contained in the binary message parent.
• virtual ∼DspMessage ()Virtual destructor to allow polymorphic class hierarchies.
• dword status () constReturns the status of the DSP message.
• bool hasTraceHeader () constReturns true, if the message has a trace header.
• const TraceHeader & traceHeader () const
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.30 stm::tools::DspMessage< ContextT > Class Template Reference 189
Returns a reference to the message’s trace header.
• const byte_iterator_range & body () constReturns the byte range consisting of the message’s body.
• const parent_type & parent ()Returns the message’s parent.
Private Types
• typedef local::xDspMessage< ContextT > DspMessageImplImplementation.
Classes
• class TraceHeaderType representing a trace header.
12.30.2 Member Typedef Documentation
12.30.2.1 template<class ContextT> typedef local::xDspMessage<ContextT>stm::tools::DspMessage< ContextT >::DspMessageImpl [private]
Implementation.
Definition at line 110 of file dspmsg.hpp.
12.30.2.2 template<class ContextT> typedef ContextT stm::tools::DspMessage< ContextT>::context_type
Context type of the messages to be scanned.
Reimplemented from stm::tools::local::xDspMessage< ContextT >.
Definition at line 114 of file dspmsg.hpp.
12.30.2.3 template<class ContextT> typedef BinMessage<ContextT> stm::tools::DspMessage<ContextT >::parent_type
Type of the binary message wrapping this DspMessage.
Reimplemented from stm::tools::local::xDspMessage< ContextT >.
Definition at line 117 of file dspmsg.hpp.
12.30.3 Member Enumeration Documentation
12.30.3.1 template<class ContextT> anonymous enum
Error status.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.30 stm::tools::DspMessage< ContextT > Class Template Reference 190
Enumerator:
NoError
Definition at line 120 of file dspmsg.hpp.
12.30.4 Constructor & Destructor Documentation
12.30.4.1 template<class ContextT> stm::tools::DspMessage< ContextT >::DspMessage (constparent_type & parent) [inline]
Construct a DspMessage object contained in the binary message parent.
Definition at line 225 of file xdspmsg.hpp.
References stm::tools::DspMessage< ContextT >::body(), stm::tools::local::xDspMessage< ContextT>::body_, stm::tools::DspMessage< ContextT >::NoError, stm::tools::local::xDspMessage< ContextT>::parent_, stm::tools::local::xDspMessage< ContextT >::status_, and stm::tools::DspMessage< Con-textT >::traceHeader().
12.30.4.2 template<class ContextT> stm::tools::DspMessage< ContextT >::∼DspMessage ()[inline, virtual]
Virtual destructor to allow polymorphic class hierarchies.
Definition at line 239 of file xdspmsg.hpp.
12.30.5 Member Function Documentation
12.30.5.1 template<class ContextT> dword stm::tools::DspMessage< ContextT >::status () const[inline]
Returns the status of the DSP message.
Definition at line 243 of file xdspmsg.hpp.
References stm::tools::local::xDspMessage< ContextT >::status_.
12.30.5.2 template<class ContextT> bool stm::tools::DspMessage< ContextT >::hasTraceHeader() const [inline]
Returns true, if the message has a trace header.
If traceHeader ().size () > 0, a trace header belongs to the message, else not.
Definition at line 250 of file xdspmsg.hpp.
References stm::tools::DspMessage< ContextT >::TraceHeader::size(), and stm::tools::DspMessage<ContextT >::traceHeader().
12.30.5.3 template<class ContextT> const DspMessage< ContextT >::TraceHeader &stm::tools::DspMessage< ContextT >::traceHeader () const [inline]
Returns a reference to the message’s trace header.
If traceHeader ().size () > 0, a trace header belongs to the message, else not.
Definition at line 257 of file xdspmsg.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.31 stm::tools::DspMessage< ContextT >::TraceHeader Class Reference 191
References stm::tools::local::xDspMessage< ContextT >::traceHeader_.
Referenced by stm::tools::DspMessage< ContextT >::DspMessage(), and stm::tools::DspMessage< Con-textT >::hasTraceHeader().
12.30.5.4 template<class ContextT> const byte_iterator_range & stm::tools::DspMessage< Con-textT >::body () const [inline]
Returns the byte range consisting of the message’s body.
Definition at line 268 of file xdspmsg.hpp.
References stm::tools::local::xDspMessage< ContextT >::body_.
Referenced by stm::tools::DspMessage< ContextT >::DspMessage().
12.30.5.5 template<class ContextT> const DspMessage< ContextT >::parent_type &stm::tools::DspMessage< ContextT >::parent () [inline]
Returns the message’s parent.
Definition at line 275 of file xdspmsg.hpp.
References stm::tools::local::xDspMessage< ContextT >::parent_.
The documentation for this class was generated from the following files:
• dspmsg.hpp• xdspmsg.hpp
12.31 stm::tools::DspMessage< ContextT >::TraceHeader Class Reference
#include <dspmsg.hpp>
Inheritance diagram for stm::tools::DspMessage< ContextT >::TraceHeader:
stm::tools::DspMessage< ContextT >::TraceHeader
stm::tools::local::xTraceHeader
Collaboration diagram for stm::tools::DspMessage< ContextT >::TraceHeader:
stm::tools::DspMessage< ContextT >::TraceHeader
stm::tools::local::xTraceHeader
12.31.1 Detailed Description
template<class ContextT> class stm::tools::DspMessage< ContextT >::TraceHeader
Type representing a trace header.
Definition at line 126 of file dspmsg.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.31 stm::tools::DspMessage< ContextT >::TraceHeader Class Reference 192
Public Member Functions
• TraceHeader (const byte_iterator_range &range)Construct a TraceHeader from range.
• word size () constReturn the size of this TraceHeader.
• word bfn () constReturn the BFN of this TraceHeader.
• word frameChips () constReturn the frame chips of this TraceHeader.
• word userFrameNo () constReturn the user frame number of this TraceHeader.
• word userSlotNo () constReturn the user slot number of this TraceHeader.
• word opCode () constReturn the Opcode of this TraceHeader.
• word payloadLength () constReturn the payload length of this TraceHeader.
Friends
• class DspMessage< ContextT >
12.31.2 Constructor & Destructor Documentation
12.31.2.1 template<class ContextT> stm::tools::DspMessage< ContextT>::TraceHeader::TraceHeader (const byte_iterator_range & range) [inline]
Construct a TraceHeader from range.
Definition at line 286 of file xdspmsg.hpp.
12.31.3 Member Function Documentation
12.31.3.1 template<class ContextT> word stm::tools::DspMessage< ContextT>::TraceHeader::size () const [inline]
Return the size of this TraceHeader.
A value of 0 means no valid trace header.
Definition at line 292 of file xdspmsg.hpp.
References stm::tools::local::xTraceHeader::size_.
Referenced by stm::tools::DspMessage< ContextT >::hasTraceHeader().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.31 stm::tools::DspMessage< ContextT >::TraceHeader Class Reference 193
12.31.3.2 template<class ContextT> word stm::tools::DspMessage< ContextT>::TraceHeader::bfn () const [inline]
Return the BFN of this TraceHeader.
Definition at line 296 of file xdspmsg.hpp.
References stm::tools::local::xTraceHeader::bfn_.
12.31.3.3 template<class ContextT> word stm::tools::DspMessage< ContextT>::TraceHeader::frameChips () const [inline]
Return the frame chips of this TraceHeader.
Definition at line 300 of file xdspmsg.hpp.
References stm::tools::local::xTraceHeader::frameChips_.
12.31.3.4 template<class ContextT> word stm::tools::DspMessage< ContextT>::TraceHeader::userFrameNo () const [inline]
Return the user frame number of this TraceHeader.
Definition at line 304 of file xdspmsg.hpp.
References stm::tools::local::xTraceHeader::userFrameNo_.
12.31.3.5 template<class ContextT> word stm::tools::DspMessage< ContextT>::TraceHeader::userSlotNo () const [inline]
Return the user slot number of this TraceHeader.
Definition at line 308 of file xdspmsg.hpp.
References stm::tools::local::xTraceHeader::userSlotNo_.
12.31.3.6 template<class ContextT> word stm::tools::DspMessage< ContextT>::TraceHeader::opCode () const [inline]
Return the Opcode of this TraceHeader.
Definition at line 312 of file xdspmsg.hpp.
References stm::tools::local::xTraceHeader::opCode_.
12.31.3.7 template<class ContextT> word stm::tools::DspMessage< ContextT>::TraceHeader::payloadLength () const [inline]
Return the payload length of this TraceHeader.
Definition at line 316 of file xdspmsg.hpp.
References stm::tools::local::xTraceHeader::payloadLength_.
12.31.4 Friends And Related Function Documentation
12.31.4.1 template<class ContextT> friend class DspMessage< ContextT > [friend]
Definition at line 128 of file dspmsg.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.32 stm::local::errmsg Class Reference 194
The documentation for this class was generated from the following files:
• dspmsg.hpp• xdspmsg.hpp
12.32 stm::local::errmsg Class Reference
#include <debugxaids.hpp>
12.32.1 Detailed Description
Implementation class for macro StmDebugAidsErrmsg.
Definition at line 193 of file debugxaids.hpp.
Public Member Functions
• errmsg (const std::string &file, int line)• template<class Operand>
errmsg & operator<< (const Operand &op)• operator std::string () const
Static Public Attributes
• static bool active = false
12.32.2 Constructor & Destructor Documentation
12.32.2.1 stm::local::errmsg::errmsg (const std::string & file, int line) [inline]
Definition at line 196 of file debugxaids.hpp.
12.32.3 Member Function Documentation
12.32.3.1 template<class Operand> errmsg& stm::local::errmsg::operator<< (const Operand &op) [inline]
Definition at line 209 of file debugxaids.hpp.
12.32.3.2 stm::local::errmsg::operator std::string () const [inline]
Definition at line 215 of file debugxaids.hpp.
12.32.4 Member Data Documentation
12.32.4.1 bool stm::local::errmsg::active = false [static]
Definition at line 217 of file debugxaids.hpp.
The documentation for this class was generated from the following files:
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.33 stm::filefind< PathContainerT > Class Template Reference 195
• debugxaids.hpp• debugaids.cpp
12.33 stm::filefind< PathContainerT > Class Template Reference
#include <filesysaids.hpp>
Inheritance diagram for stm::filefind< PathContainerT >:
stm::filefind< PathContainerT >
stm::local::xfilefind< PathContainerT >
Collaboration diagram for stm::filefind< PathContainerT >:
stm::filefind< PathContainerT >
stm::local::xfilefind< PathContainerT >
12.33.1 Detailed Description
template<class PathContainerT = std::set<numpstring>> class stm::filefind< PathContainerT >
Container class representing existing file system elements defined by a file spec using pattern matchingbased file name expansion.
The file system elements in the conatiner are represented by their paths. As the implementation of filefinduses regular expressions (see Abstract Data Type StmRe), for its error control the macro StmRectrlTrycan be used.
Examples:
filesystest.cpp.
Definition at line 1271 of file filesysaids.hpp.
With filespec flags bitwise orable flags
• static const dword NoFlags = 0• static const dword NoDirectories = impl::NoDirectories• static const dword NoPlainFiles = impl::NoPlainFiles• static const dword StoreRelative = impl::StoreRelative
Public Types
• typedef PathContainerT pathcontainer_typeContainer type.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.33 stm::filefind< PathContainerT > Class Template Reference 196
• typedef pathcontainer_type::value_type path_typeContainer element type.
Public Member Functions
• filefind (dword flags=NoFlags, const std::string &stem=std::string())Construct an empty container with default flags.
• filefind (const std::string &spec, dword flags=NoFlags, const std::string &stem=std::string())Constructs a container with flags as default flags and the absolute stem containing the existing file systemelements as if insert (spec) was executed after constructing the container with filefind (flags, stem).
• int insert (const std::string &spec)Inserts existing file system elements into this container as if the method insert (spec, flags) with the contain-ers’s default flags was executed and returns the number of actually inserted items.
• int insert (const std::string &spec, dword flags)Inserts all existing file system elements defined by spec according to flags into the container.
• dword getFlags () constReturns the default flags of this filefind container.
• path_type getStem () constReturns the absolute stem of this filefind container, if defined, else path_type ().
Private Types
• typedef local::xfilefind< PathContainerT > implImplementation.
12.33.2 Member Typedef Documentation
12.33.2.1 template<class PathContainerT = std::set<numpstring>> typedeflocal::xfilefind<PathContainerT> stm::filefind< PathContainerT >::impl [private]
Implementation.
Reimplemented from stm::local::xfilefind< PathContainerT >.
Definition at line 1276 of file filesysaids.hpp.
12.33.2.2 template<class PathContainerT = std::set<numpstring>> typedef PathContainerTstm::filefind< PathContainerT >::pathcontainer_type
Container type.
Sequence containers as well as associative containers may be used.
Reimplemented from stm::local::xfilefind< PathContainerT >.
Definition at line 1289 of file filesysaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.33 stm::filefind< PathContainerT > Class Template Reference 197
12.33.2.3 template<class PathContainerT = std::set<numpstring>> typedef pathcontainer_-type::value_type stm::filefind< PathContainerT >::path_type
Container element type.
It shall be default constructable and copyable. Moreover, it shall have a constructor with a single conststd::string & argument. A path_type object constructed with this constructor shall represent the file systemobject’s name.
Reimplemented from stm::local::xfilefind< PathContainerT >.
Definition at line 1295 of file filesysaids.hpp.
12.33.3 Constructor & Destructor Documentation
12.33.3.1 template<class PathContainerT> stm::filefind< PathContainerT >::filefind (dwordflags = NoFlags, const std::string & stem = std::string ()) [inline]
Construct an empty container with default flags.
A non-empty stem argument defines the absolute stem relative to which the file finding operations of thisfilefind container are performed. It is an error, if a non-empty stem represents no absolute path.
Definition at line 2307 of file filesysxaids.hpp.
12.33.3.2 template<class PathContainerT> stm::filefind< PathContainerT >::filefind (conststd::string & spec, dword flags = NoFlags, const std::string & stem = std::string ())[inline, explicit]
Constructs a container with flags as default flags and the absolute stem containing the existing file systemelements as if insert (spec) was executed after constructing the container with filefind (flags, stem).
Definition at line 2318 of file filesysxaids.hpp.
12.33.4 Member Function Documentation
12.33.4.1 template<class PathContainerT> int stm::filefind< PathContainerT >::insert (conststd::string & spec) [inline]
Inserts existing file system elements into this container as if the method insert (spec, flags) with the con-tainers’s default flags was executed and returns the number of actually inserted items.
Definition at line 2332 of file filesysxaids.hpp.
References stm::local::xfilespeclist::flags_.
12.33.4.2 template<class PathContainerT> int stm::filefind< PathContainerT >::insert (conststd::string & spec, dword flags) [inline]
Inserts all existing file system elements defined by spec according to flags into the container.
Spec may contain white space. If the flag StoreRelative is reset, the file system elements stored are madeabsolute using the function boost::filesystem::initial_path(), if necessary. Else spec shall not begin with aroot name and the file system elements stored are relative as follows. If an absolute stem is defined, theyare searched and stored relative to this absolute stem. If no absolute stem is defined, they are searched andstored relative to boost::filesystem::initial_path(). Even if the flag StoreRelative is reset and an absolutestem is defined, spec must not begin with a root name. In this case the file system elements are searchedrelative to this absolute stem, but stored as absolute paths.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.33 stm::filefind< PathContainerT > Class Template Reference 198
If the flag NoDirectories is set, directories are not inserted into the container, if the flag NoPlainFiles is set,plain files are not inserted into the container.
If the flag filespec::UseExtRegularExpr is set or if spec contains one of the unescaped extended regularexpression operators ’(’ or ’|’, spec is interpreted as extended regular expression as defined in the OpenSystem Group Base Specification Issue 6, IEEE Std 1003.1-2004 (XBD: 9.4).
Otherwise if the flag filespeclist::SingleSpec is set, or if the flag filespeclist::NoBraceExpansion is set, orif spec contains no unescaped ’{’, spec is interpreted as filename expansion pattern as defined in IEEEStd 1003.1-2004 (XCU: 2.13.3). Else spec is brace expanded as in the bash shell, each of the resultingwords is interpreted as filename expansion pattern and is handled separately. As mandated by IEEE std1003.1-2004 the filename expansion pattern based operations occur for each path separator separated partof spec independently. To circumvent this, if the flag filespec::UseMultipleDirOperator is set and the flagfilespec::NoPathSeparators is not set, the operator ’∗∗’ as such a spec part matches a sequence of zero ormore pairs each consisting of a file system element name component designating a directory and a pathseparator.
The bracket expressions used in the regular expressions and in the filename expansion patterns conform toIEEE Std 1003.1-2004 (XBD: 9.3.5) with the exception that equivalence classes [=x=] of collating elementsare not supported. If filename expansion patterns are used and the flag filespec::NoCharClass is set, alsocollating symbols [.x.] and character classes [:x:] are not allowed inside bracket expressions. If the flagfilespec::NoBracketExpr is set, bracket expressions are not allowed at all in filename expansion patterns.
The method returns the number of items actually inserted.
Definition at line 2342 of file filesysxaids.hpp.
References stm::filespec::beginsWithRootName(), stm::brace_expand(),stm::filespec::containsUnescapedBrace(), stm::filespec::containsUnescapedEreOperator(),stm::filespec::MakeAbsolute, stm::filespeclist::NoBraceExpansion, stm::filespeclist::SingleSpec,stm::trim(), and stm::filespec::UseExtRegularExpr.
12.33.4.3 template<class PathContainerT> dword stm::filefind< PathContainerT >::getFlags ()const [inline]
Returns the default flags of this filefind container.
Definition at line 2418 of file filesysxaids.hpp.
References stm::local::xfilefind< PathContainerT >::flags_.
12.33.4.4 template<class PathContainerT> filefind< PathContainerT >::path_type stm::filefind<PathContainerT >::getStem () const [inline]
Returns the absolute stem of this filefind container, if defined, else path_type ().
Definition at line 2427 of file filesysxaids.hpp.
References stm::local::xfilefind< PathContainerT >::stem_.
12.33.5 Member Data Documentation
12.33.5.1 template<class PathContainerT = std::set<numpstring>> const dword stm::filefind<PathContainerT >::NoFlags = 0 [static]
Definition at line 1281 of file filesysaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.34 stm::filespec Class Reference 199
12.33.5.2 template<class PathContainerT = std::set<numpstring>> const dword stm::filefind<PathContainerT >::NoDirectories = impl::NoDirectories [static]
Reimplemented from stm::local::xfilefind< PathContainerT >.
Definition at line 1282 of file filesysaids.hpp.
12.33.5.3 template<class PathContainerT = std::set<numpstring>> const dword stm::filefind<PathContainerT >::NoPlainFiles = impl::NoPlainFiles [static]
Reimplemented from stm::local::xfilefind< PathContainerT >.
Definition at line 1283 of file filesysaids.hpp.
12.33.5.4 template<class PathContainerT = std::set<numpstring>> const dword stm::filefind<PathContainerT >::StoreRelative = impl::StoreRelative [static]
Reimplemented from stm::local::xfilefind< PathContainerT >.
Definition at line 1284 of file filesysaids.hpp.
The documentation for this class was generated from the following files:
• filesysaids.hpp• filesysxaids.hpp
12.34 stm::filespec Class Reference
#include <filesysaids.hpp>
Inheritance diagram for stm::filespec:
stm::filespec
stm::local::xfilespec
Collaboration diagram for stm::filespec:
stm::filespec
stm::local::xfilespec
12.34.1 Detailed Description
Class to specify file system element names.
An object of class filespec represents a set of file system element names defined by a file system spec. Asthe implementation of filespec uses regular expressions (see Abstract Data Type StmRe), for its errorcontrol the macro StmRectrlTry can be used.
Definition at line 955 of file filesysaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.34 stm::filespec Class Reference 200
Bitwise orable flags
As all these flag values use only the most significant word of the flags dword, the least significant word ofthe flags dword may be used for user supplied status.
This status, for instance, is evaluated in the method filespeclist::matches().
• static const dword NoFlags = 0• static const dword NoPathSeparators = impl::NoPathSeparators• static const dword NoRootName = impl::NoRootName• static const dword MakeAbsolute = impl::MakeAbsolute• static const dword NoCharClass = impl::NoCharClass• static const dword NoBracketExpr = impl::NoBracketExpr• static const dword UseExtRegularExpr = impl::UseExtRegularExpr• static const dword UseMultipleDirOperator = impl::UseMultipleDirOperator
Public Member Functions
• filespec (const std::string &spec=std::string(), dword flags=NoFlags)Constructs a filespec object specifying the file system element names defined by spec according to flags.
• bool matches (const std::string &entry) constThe method matches returns true, if entry matches one of the file system element names defined by thisfilespec object, else false.
• const char ∗ reStr () constThe method returns the regular expression defining this filespec.
• const std::string & getSpec () constThe method returns the file spec string defining this filespec.
• dword getFlags () constThe method returns the flags of this filespec object.
• word getState () constThe method returns the state of this filespec object.
• bool operator== (const filespec &other) constThe method returns true, if this filespec is the same as the other, else false.
• bool operator< (const filespec &other) constThe method returns true, if this filespec is less than the the other, else false.
Static Public Member Functions
• static std::string::size_type findFirstOfUnescaped (const std::string &spec, const std::string &chars,std::string::size_type pos=0)
The static method findFirstOfUnescaped returns the lowest position >= pos within spec of an unescapedoccurance of one of the characters specified by chars, else std::string::npos.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.34 stm::filespec Class Reference 201
• static std::string::size_type findFirstOfUnescaped (const std::string &spec, char ch, std::string::size_-type pos=0)
The static method findFirstOfUnescaped returns the lowest position >= pos within spec of an unescapedoccurance of the character ch, else std::string::npos.
• static std::string::size_type findLastOfUnescaped (const std::string &spec, const std::string &chars,std::string::size_type pos=std::string::npos)
The static method findLastOfUnescaped returns the highest position <= pos within spec of an unescapedoccurance of one of the characters specified by chars, else std::string::npos.
• static std::string::size_type findLastOfUnescaped (const std::string &spec, char ch, std::string::size_-type pos=std::string::npos)
The static method findLastOfUnescaped returns the highest position <= pos within spec of an unescapedoccurance of the character ch, else std::string::npos.
• static std::pair< std::string::size_type, std::string::size_type > findUnescapedParentheses (conststd::string &spec, const char ∗par, std::string::size_type pos=std::string::npos)
The static method findUnescapedParentheses returns a pair of positions within str such that its first memberis the lowest position >= pos of an unescaped occurance of par [0] and its second member is the lowestposition > the first position of an unescaped occurance of par [1] forming a balanced pair of parentheses.
• static bool containsUnescapedPatternMatchingOperator (const std::string &spec, dwordflags=NoFlags)
The static method containsUnescapedPatternMatchingOperator returns true, if spec contains an unescapedpattern matching operator according to flags, else false.
• static std::string normalize (const std::string &spec, dword flags=NoFlags)The static method normalize determines the lowest occurance of an unescaped pattern matching opera-tor in spec according to flags and normalizes the part before the next lower path separator by means ofboost::filesystemm::path::normalize().
• static bool containsUnescapedEreOperator (const std::string &spec)The static method containsUnescapedEreOperator returns true, if spec contains an unescaped extendedregular expression operator ’(’ or ’|’, else false.
• static bool containsUnescapedBrace (const std::string &spec)The static method containsUnescapedBrace returns true, if spec contains an unescaped ’{’, else false.
• static bool isAbsolute (const std::string &spec)The static method isAbsolute returns true, if spec specifies an absolute path, else false.
• static bool beginsWithRootName (const std::string &spec)The static method beginsWithRootName returns true, if spec specifies a path beginning with a root name,else false.
• static bool beginsWithRootDirectory (const std::string &spec)The static method beginsWithRootDirectory returns true, if spec specifies a path beginning with a rootdirectory, else false.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.34 stm::filespec Class Reference 202
12.34.2 Constructor & Destructor Documentation
12.34.2.1 stm::filespec::filespec (const std::string & spec = std::string (), dword flags =NoFlags)
Constructs a filespec object specifying the file system element names defined by spec according to flags.
The most significant word of flags consists of orable bits explained below. The least significant word offlags is a multi-purpose field which can be used to store a filespec object’s state. If spec contains whitespace, it defines file system element names with that white space.
If the flag NoRootName is set, spec must not contain a root name. If the flag NoPathSeparators is set,spec must not contain path separators. In this case the flag MakeAbsolute is irrelevant. Else if the flagMakeAbsolute is set and spec is not yet absolute, the file system element names defined are made absoluteusing the function boost::filesystem::initial_path().
If the flag UseExtRegularExpr is set or if spec contains one of the unescaped extended regular expressionoperators ’(’ or ’|’, spec is interpreted as extended regular expression as defined in the Open System GroupBase Specification Issue 6, IEEE Std 1003.1-2004 (XBD: 9.4). Else spec is interpreted as filename expan-sion pattern as defined in IEEE Std 1003.1-2004 (XCU: 2.13.3). As mandated by IEEE std 1003.1-2004the filename expansion pattern based operations occur for each path separator separated part of spec inde-pendently. To circumvent this, if the flag UseMultipleDirOperator is set and the flag NoPathSeparators isnot set, the operator ’∗∗’ as such a spec part matches a sequence of zero or more pairs each consisting of afile system element name component designating a directory and a path separator.
The bracket expressions used in the regular expressions and in the filename expansion patterns conformto IEEE Std 1003.1-2004 (XBD: 9.3.5) with the exception that equivalence classes [=x=] of collatingelements are not supported. If filename expansion patterns are used and the flag NoCharClass is set, alsocollating symbols [.x.] and character classes [:x:] are not allowed inside bracket expressions. If the flagNoBracketExpr is set, bracket expressions are not allowed at all in filename expansion patterns.
On Windows systems as escape character for extended regular expressions and filename expansion patterns’%’ is used instead of the usual ’\’ and as path separators ’/’ or ’\’ are allowed. The method throws onerror.
Definition at line 212 of file filesysaids.cpp.
References beginsWithRootName(), containsUnescapedEreOperator(), stm::local::xfilespec::ereFileSpec,stm::local::xfilespec::Env::flags, stm::local::xfilespec::fspec, stm::local::xfilespec::fullFileSpec,stm::local::xfilespec::id, stm::local::xfilespec::Env::LastPart, MakeAbsolute, NoBracketExpr,stm::local::xfilespec::noBracketExprFileSpec, NoCharClass, stm::local::xfilespec::noCharClassFileSpec,NoPathSeparators, NoRootName, stm::local::xfilespec::partition(), stm::local::xfilespec::Env::PathSep,PsepRe, stm::local::xfilespec::re, stm::local::xfilespec::reCtrl, stmReCreate(), stmReMatch(), andUseExtRegularExpr.
12.34.3 Member Function Documentation
12.34.3.1 bool stm::filespec::matches (const std::string & entry) const [inline]
The method matches returns true, if entry matches one of the file system element names defined by thisfilespec object, else false.
Definition at line 2144 of file filesysxaids.hpp.
References stm::local::xfilespec::re, stmReMatch(), and StmTrue.
Referenced by stm::local::xfilefind< PathContainerT >::handlePath().
12.34.3.2 const char ∗ stm::filespec::reStr () const [inline]
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.34 stm::filespec Class Reference 203
The method returns the regular expression defining this filespec.
Definition at line 2150 of file filesysxaids.hpp.
References stm::local::xfilespec::re, and stmReGetReStr().
12.34.3.3 const std::string & stm::filespec::getSpec () const [inline]
The method returns the file spec string defining this filespec.
Definition at line 2156 of file filesysxaids.hpp.
References stm::local::xfilespec::fspec.
12.34.3.4 dword stm::filespec::getFlags () const [inline]
The method returns the flags of this filespec object.
The least significant word of the flags dword is serving as multi-purpose state parameter.
Definition at line 2162 of file filesysxaids.hpp.
12.34.3.5 word stm::filespec::getState () const [inline]
The method returns the state of this filespec object.
This is the least significant word of the flags dword of this filespec object.
Definition at line 2168 of file filesysxaids.hpp.
12.34.3.6 bool stm::filespec::operator== (const filespec & other) const [inline]
The method returns true, if this filespec is the same as the other, else false.
Definition at line 2174 of file filesysxaids.hpp.
References stm::local::xfilespec::flags, and stm::local::xfilespec::fspec.
12.34.3.7 bool stm::filespec::operator< (const filespec & other) const [inline]
The method returns true, if this filespec is less than the the other, else false.
The comparison is done first comparing the spec strings and second the flags.
Definition at line 2180 of file filesysxaids.hpp.
References stm::local::xfilespec::flags, and stm::local::xfilespec::fspec.
12.34.3.8 std::string::size_type stm::filespec::findFirstOfUnescaped (const std::string & spec,const std::string & chars, std::string::size_type pos = 0) [static]
The static method findFirstOfUnescaped returns the lowest position >= pos within spec of an unescapedoccurance of one of the characters specified by chars, else std::string::npos.
On Windows systems as escape character ’%’ is used instead of the usual ’\’.
Definition at line 374 of file filesysaids.cpp.
References Esc.
Referenced by stm::brace_expand(), containsUnescapedBrace(), containsUnescapedEreOperator(), con-tainsUnescapedPatternMatchingOperator(), findUnescapedParentheses(), and normalize().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.34 stm::filespec Class Reference 204
12.34.3.9 std::string::size_type stm::filespec::findFirstOfUnescaped (const std::string & spec, charch, std::string::size_type pos = 0) [static]
The static method findFirstOfUnescaped returns the lowest position >= pos within spec of an unescapedoccurance of the character ch, else std::string::npos.
On Windows systems as escape character ’%’ is used instead of the usual ’\’.
Definition at line 390 of file filesysaids.cpp.
References Esc.
12.34.3.10 std::string::size_type stm::filespec::findLastOfUnescaped (const std::string & spec,const std::string & chars, std::string::size_type pos = std::string::npos) [static]
The static method findLastOfUnescaped returns the highest position <= pos within spec of an unescapedoccurance of one of the characters specified by chars, else std::string::npos.
On Windows systems as escape character ’%’ is used instead of the usual ’\’.
Definition at line 406 of file filesysaids.cpp.
References Esc.
12.34.3.11 std::string::size_type stm::filespec::findLastOfUnescaped (const std::string & spec,char ch, std::string::size_type pos = std::string::npos) [static]
The static method findLastOfUnescaped returns the highest position <= pos within spec of an unescapedoccurance of the character ch, else std::string::npos.
On Windows systems as escape character ’%’ is used instead of the usual ’\’.
Definition at line 423 of file filesysaids.cpp.
References Esc.
12.34.3.12 std::pair< std::string::size_type, std::string::size_type >stm::filespec::findUnescapedParentheses (const std::string & spec, const char ∗ par,std::string::size_type pos = std::string::npos) [static]
The static method findUnescapedParentheses returns a pair of positions within str such that its first memberis the lowest position >= pos of an unescaped occurance of par [0] and its second member is the lowestposition > the first position of an unescaped occurance of par [1] forming a balanced pair of parentheses.
If such a pair does not exist both members are std::string::npos. On Windows systems as escape character’%’ is used instead of the usual ’\’. It is an error, if par is no string of length 2 of two different characters.
Definition at line 441 of file filesysaids.cpp.
References findFirstOfUnescaped(), and StmDebugAidsVerify.
Referenced by stm::brace_expand().
12.34.3.13 bool stm::filespec::containsUnescapedPatternMatchingOperator (const std::string &spec, dword flags = NoFlags) [inline, static]
The static method containsUnescapedPatternMatchingOperator returns true, if spec contains an unescapedpattern matching operator according to flags, else false.
On Windows systems as escape character ’%’ is used instead of the usual ’\’.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.34 stm::filespec Class Reference 205
Definition at line 2188 of file filesysxaids.hpp.
References findFirstOfUnescaped(), NoBracketExpr, and UseExtRegularExpr.
Referenced by stm::local::xfilespec::partition().
12.34.3.14 std::string stm::filespec::normalize (const std::string & spec, dword flags = NoFlags)[inline, static]
The static method normalize determines the lowest occurance of an unescaped pattern matching opera-tor in spec according to flags and normalizes the part before the next lower path separator by means ofboost::filesystemm::path::normalize().
The result thereof is combined again with the rest of spec and returned.
Definition at line 2207 of file filesysxaids.hpp.
References findFirstOfUnescaped(), stm::local::xfilespec::fspec, NoBracketExpr, and UseExtRegularExpr.
Referenced by stm::tools::CtExceptions::add().
12.34.3.15 bool stm::filespec::containsUnescapedEreOperator (const std::string & spec)[inline, static]
The static method containsUnescapedEreOperator returns true, if spec contains an unescaped extendedregular expression operator ’(’ or ’|’, else false.
On Windows systems as escape character ’%’ is used instead of the usual ’\’.
Definition at line 2235 of file filesysxaids.hpp.
References findFirstOfUnescaped().
Referenced by stm::filespeclist::append(), filespec(), and stm::filefind< PathContainerT >::insert().
12.34.3.16 bool stm::filespec::containsUnescapedBrace (const std::string & spec) [inline,static]
The static method containsUnescapedBrace returns true, if spec contains an unescaped ’{’, else false.
On Windows systems as escape character ’%’ is used instead of the usual ’\’.
Definition at line 2241 of file filesysxaids.hpp.
References findFirstOfUnescaped().
Referenced by stm::filespeclist::append(), stm::brace_expand(), and stm::filefind< PathContainerT>::insert().
12.34.3.17 bool stm::filespec::isAbsolute (const std::string & spec) [static]
The static method isAbsolute returns true, if spec specifies an absolute path, else false.
Definition at line 317 of file filesysaids.cpp.
References stm::local::xfilespec::fspec, and stm::trim().
12.34.3.18 bool stm::filespec::beginsWithRootName (const std::string & spec) [static]
The static method beginsWithRootName returns true, if spec specifies a path beginning with a root name,else false.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.34 stm::filespec Class Reference 206
Definition at line 336 of file filesysaids.cpp.
References stm::local::xfilespec::fspec, and stm::trim().
Referenced by stm::tools::CtExceptions::add(), filespec(), and stm::filefind< PathContainerT >::insert().
12.34.3.19 bool stm::filespec::beginsWithRootDirectory (const std::string & spec) [static]
The static method beginsWithRootDirectory returns true, if spec specifies a path beginning with a rootdirectory, else false.
Definition at line 354 of file filesysaids.cpp.
References stm::local::xfilespec::fspec, and stm::trim().
12.34.4 Member Data Documentation
12.34.4.1 const dword stm::filespec::NoFlags = 0 [static]
Examples:
filesystest.cpp.
Definition at line 965 of file filesysaids.hpp.
Referenced by main().
12.34.4.2 const dword stm::filespec::NoPathSeparators = impl::NoPathSeparators [static]
Reimplemented from stm::local::xfilespec.
Definition at line 966 of file filesysaids.hpp.
Referenced by filespec().
12.34.4.3 const dword stm::filespec::NoRootName = impl::NoRootName [static]
Reimplemented from stm::local::xfilespec.
Definition at line 967 of file filesysaids.hpp.
Referenced by filespec().
12.34.4.4 const dword stm::filespec::MakeAbsolute = impl::MakeAbsolute [static]
Reimplemented from stm::local::xfilespec.
Definition at line 968 of file filesysaids.hpp.
Referenced by filespec(), and stm::filefind< PathContainerT >::insert().
12.34.4.5 const dword stm::filespec::NoCharClass = impl::NoCharClass [static]
Reimplemented from stm::local::xfilespec.
Examples:
filesystest.cpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.35 stm::filespeclist Class Reference 207
Definition at line 969 of file filesysaids.hpp.
Referenced by filespec(), and main().
12.34.4.6 const dword stm::filespec::NoBracketExpr = impl::NoBracketExpr [static]
Reimplemented from stm::local::xfilespec.
Examples:
filesystest.cpp.
Definition at line 970 of file filesysaids.hpp.
Referenced by containsUnescapedPatternMatchingOperator(), filespec(), main(), and normalize().
12.34.4.7 const dword stm::filespec::UseExtRegularExpr = impl::UseExtRegularExpr[static]
Reimplemented from stm::local::xfilespec.
Examples:
filesystest.cpp.
Definition at line 971 of file filesysaids.hpp.
Referenced by stm::filespeclist::append(), containsUnescapedPatternMatchingOperator(), filespec(),stm::filefind< PathContainerT >::insert(), main(), and normalize().
12.34.4.8 const dword stm::filespec::UseMultipleDirOperator = impl::UseMultipleDirOperator[static]
Reimplemented from stm::local::xfilespec.
Examples:
filesystest.cpp.
Definition at line 972 of file filesysaids.hpp.
Referenced by stm::tools::CtExceptions::add(), and main().
The documentation for this class was generated from the following files:
• filesysaids.hpp• filesysxaids.hpp• filesysaids.cpp
12.35 stm::filespeclist Class Reference
#include <filesysaids.hpp>
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.35 stm::filespeclist Class Reference 208
Inheritance diagram for stm::filespeclist:
stm::filespeclist
stm::tools::CtExceptions
stm::local::xfilespeclist
Collaboration diagram for stm::filespeclist:
stm::filespeclist
stm::local::xfilespeclist
12.35.1 Detailed Description
List class of filespec objects.
An object of class filespeclist represents a list of filespec objects and flags to be used as default flags for con-struction of filespec objects to be inserted. As the implementation of filespeclist uses regular expressions(see Abstract Data Type StmRe), for its error control the macro StmRectrlTry can be used.
Definition at line 1179 of file filesysaids.hpp.
With filespec flags bitwise orable flags
• static const dword NoFlags = 0• static const dword NoBraceExpansion = impl::NoBraceExpansion• static const dword SingleSpec = impl::SingleSpec
Public Types
• typedef impl::const_iterator const_iteratorConstant filespeclist iterator.
Public Member Functions
• filespeclist (dword flags=filespec::NoFlags)Construct an empty filespeclist object with flags as default flags.
• filespeclist (const std::string &specs, dword flags=NoFlags)Constructs a filespeclist object with flags as default flags containing filespec objects as if append (specs,flags) was executed.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.35 stm::filespeclist Class Reference 209
• void clear ()Empties this filespeclist.
• void append (const std::string &specs)Appends filespec objects to this filespelist as if the method append (specs, flags) with the object’s defaultflags was executed.
• void append (const std::string &specs, dword flags)Appends filespec objects defined by specs and flags to this filespeclist.
• bool matches (const std::string &entry) constThe method matches returns true, if entry matches one of the file system element names defined by anyfilespec object in this filespeclist, else false.
• word matches (const std::string &entry, word mask) constThe method matches looks for the first filespec in this filspeclist matching entry, such that the matchingfilespec’s status logical anded with mask is not null.
12.35.2 Member Typedef Documentation
12.35.2.1 typedef impl::const_iterator stm::filespeclist::const_iterator
Constant filespeclist iterator.
Reimplemented in stm::tools::CtExceptions.
Definition at line 1183 of file filesysaids.hpp.
12.35.3 Constructor & Destructor Documentation
12.35.3.1 stm::filespeclist::filespeclist (dword flags = filespec::NoFlags) [inline]
Construct an empty filespeclist object with flags as default flags.
For flags the values NoBraceExpansion and SingleSpec as well as the flags of class filespec may be used.As all these flag values use only the most significant word of the flags dword, the least significant word ofthe flags dword may be used for user supplied status. This status is evaluated in the method matches (entry,state).
Definition at line 2251 of file filesysxaids.hpp.
12.35.3.2 stm::filespeclist::filespeclist (const std::string & specs, dword flags = NoFlags)[inline]
Constructs a filespeclist object with flags as default flags containing filespec objects as if append (specs,flags) was executed.
Throws on error.
Definition at line 2256 of file filesysxaids.hpp.
References append().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.35 stm::filespeclist Class Reference 210
12.35.4 Member Function Documentation
12.35.4.1 void stm::filespeclist::clear () [inline]
Empties this filespeclist.
Reimplemented in stm::tools::CtExceptions.
Definition at line 2263 of file filesysxaids.hpp.
Referenced by stm::tools::CtExceptions::clear().
12.35.4.2 void stm::filespeclist::append (const std::string & specs) [inline]
Appends filespec objects to this filespelist as if the method append (specs, flags) with the object’s defaultflags was executed.
Throws on error.
Definition at line 2270 of file filesysxaids.hpp.
References stm::local::xfilespeclist::flags_.
Referenced by stm::tools::CtExceptions::add(), and filespeclist().
12.35.4.3 void stm::filespeclist::append (const std::string & specs, dword flags)
Appends filespec objects defined by specs and flags to this filespeclist.
If the flag SingleSpec is set, if specs contains one of the unescaped extended regular expression operators’(’ or ’|’, if the flag filespec::UseExtRegularExpr is set, if specs contains no unescaped ’{’, or if the flagNoBraceExpansion is set, the filespec object filespec (specs, flags) is appended to this filespeclist.
Otherwise specs is brace expanded as in the bash shell and for each word resulting thus the filespec objectfilespec (word, flags) is appended to this filespeclist. On Windows systems as escape character for braceexpansion ’%’ is used instead of the usual ’\’. Throws on error.
Definition at line 475 of file filesysaids.cpp.
References stm::brace_expand(), stm::filespec::containsUnescapedBrace(),stm::filespec::containsUnescapedEreOperator(), NoBraceExpansion, SingleSpec, stm::trim(), andstm::filespec::UseExtRegularExpr.
12.35.4.4 bool stm::filespeclist::matches (const std::string & entry) const [inline]
The method matches returns true, if entry matches one of the file system element names defined by anyfilespec object in this filespeclist, else false.
Definition at line 2277 of file filesysxaids.hpp.
Referenced by matches().
12.35.4.5 word stm::filespeclist::matches (const std::string & entry, word mask) const [inline]
The method matches looks for the first filespec in this filspeclist matching entry, such that the matchingfilespec’s status logical anded with mask is not null.
This non-null value is returned, if such a match was found, else 0.
Definition at line 2287 of file filesysxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.36 stm::fixedfmt< FloatT > Class Template Reference 211
References matches().
12.35.5 Member Data Documentation
12.35.5.1 const dword stm::filespeclist::NoFlags = 0 [static]
Reimplemented in stm::tools::CtExceptions.
Definition at line 1192 of file filesysaids.hpp.
12.35.5.2 const dword stm::filespeclist::NoBraceExpansion = impl::NoBraceExpansion[static]
Reimplemented from stm::local::xfilespeclist.
Examples:
filesystest.cpp.
Definition at line 1193 of file filesysaids.hpp.
Referenced by append(), stm::filefind< PathContainerT >::insert(), and main().
12.35.5.3 const dword stm::filespeclist::SingleSpec = impl::SingleSpec [static]
Reimplemented from stm::local::xfilespeclist.
Examples:
filesystest.cpp.
Definition at line 1194 of file filesysaids.hpp.
Referenced by append(), stm::filefind< PathContainerT >::insert(), and main().
The documentation for this class was generated from the following files:
• filesysaids.hpp• filesysxaids.hpp• filesysaids.cpp
12.36 stm::fixedfmt< FloatT > Class Template Reference
#include <divaids.hpp>
Inheritance diagram for stm::fixedfmt< FloatT >:
stm::fixedfmt< FloatT >
stm::local::xfixedfmt< FloatT >
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.36 stm::fixedfmt< FloatT > Class Template Reference 212
Collaboration diagram for stm::fixedfmt< FloatT >:
stm::fixedfmt< FloatT >
stm::local::xfixedfmt< FloatT >
FloatT
val_
12.36.1 Detailed Description
template<typename FloatT> class stm::fixedfmt< FloatT >
Class template allowing to format the floating point number of type FloatT held on an output stream infixed point notation using a specified precision.
Definition at line 1307 of file divaids.hpp.
Public Types
• typedef FloatT value_typeType of the value held by this object.
Public Member Functions
• fixedfmt (dword precision, value_type val=0)Construct an object holding the value val to be formatted with the specified precision.
• operator FloatT () constConvert to the value held by this object.
• dword precision () constReturn the precision specified.
• dword precision (dword prec)Specify a new precision and return the previous one.
Private Types
• typedef local::xfixedfmt< FloatT > implImplementation.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.36 stm::fixedfmt< FloatT > Class Template Reference 213
12.36.2 Member Typedef Documentation
12.36.2.1 template<typename FloatT> typedef local::xfixedfmt<FloatT> stm::fixedfmt< FloatT>::impl [private]
Implementation.
Definition at line 1310 of file divaids.hpp.
12.36.2.2 template<typename FloatT> typedef FloatT stm::fixedfmt< FloatT >::value_type
Type of the value held by this object.
Definition at line 1314 of file divaids.hpp.
12.36.3 Constructor & Destructor Documentation
12.36.3.1 template<typename FloatT> stm::fixedfmt< FloatT >::fixedfmt (dword precision,value_type val = 0) [inline]
Construct an object holding the value val to be formatted with the specified precision.
Definition at line 3304 of file divxaids.hpp.
12.36.4 Member Function Documentation
12.36.4.1 template<typename FloatT> stm::fixedfmt< FloatT >::operator FloatT () const[inline]
Convert to the value held by this object.
Definition at line 3309 of file divxaids.hpp.
References stm::local::xfixedfmt< FloatT >::val_.
12.36.4.2 template<typename FloatT> dword stm::fixedfmt< FloatT >::precision () const[inline]
Return the precision specified.
Definition at line 3316 of file divxaids.hpp.
References stm::local::xfixedfmt< FloatT >::prec_.
12.36.4.3 template<typename FloatT> dword stm::fixedfmt< FloatT >::precision (dword prec)[inline]
Specify a new precision and return the previous one.
Definition at line 3323 of file divxaids.hpp.
References stm::local::xfixedfmt< FloatT >::prec_.
The documentation for this class was generated from the following files:
• divaids.hpp• divxaids.hpp
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.37 stm::fmtflags Struct Reference 214
12.37 stm::fmtflags Struct Reference
#include <divaids.hpp>
Inheritance diagram for stm::fmtflags:
stm::fmtflags
stm::hexfmt< UnsignedT, DefaultFlags > stm::hexfmt< ElemT *, DefaultFlags >
12.37.1 Detailed Description
Base class of class template stm::hexfmt specifying format flags.
Definition at line 1177 of file divaids.hpp.
Public Types
• enum {
NoFlags = 0x00000000,
NoPrefix = 0x00000001,
LowerCase = 0x00000002 }Bitwise orable flags.
12.37.2 Member Enumeration Documentation
12.37.2.1 anonymous enum
Bitwise orable flags.
Enumerator:
NoFlags No flags.
NoPrefix Omit the hex prefix "0x".
LowerCase Render hexadecimal digits in lower case.
Definition at line 1180 of file divaids.hpp.
The documentation for this struct was generated from the following file:
• divaids.hpp
12.38 stm::has_pow2size< T > Struct Template Reference
#include <divxaids.hpp>
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.39 stm::hexfmt< UnsignedT, DefaultFlags > Class Template Reference 215
12.38.1 Detailed Description
template<typename T> struct stm::has_pow2size< T >
Definition at line 1400 of file divxaids.hpp.
Static Public Attributes
• static const bool value = 1 << boost::static_log2<sizeof (T)>::value == sizeof (T)
12.38.2 Member Data Documentation
12.38.2.1 template<typename T> const bool stm::has_pow2size< T >::value = 1 <<boost::static_log2<sizeof (T)>::value == sizeof (T) [static]
Definition at line 1402 of file divxaids.hpp.
The documentation for this struct was generated from the following file:
• divxaids.hpp
12.39 stm::hexfmt< UnsignedT, DefaultFlags > Class Template Reference
#include <divaids.hpp>
Inheritance diagram for stm::hexfmt< UnsignedT, DefaultFlags >:
stm::hexfmt< UnsignedT, DefaultFlags >
stm::fmtflags stm::local::xhexfmt< UnsignedT >
Collaboration diagram for stm::hexfmt< UnsignedT, DefaultFlags >:
stm::hexfmt< UnsignedT, DefaultFlags >
stm::fmtflags stm::local::xhexfmt< UnsignedT >
UnsignedT
val_
12.39.1 Detailed Description
template<typename UnsignedT, dword DefaultFlags = fmtflags::NoFlags> class stm::hexfmt< Un-signedT, DefaultFlags >
Class template allowing to format the unsigned number held as hexadecimal string.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.39 stm::hexfmt< UnsignedT, DefaultFlags > Class Template Reference 216
Examples:
gencrctest.cpp, and smartptrtest.cpp.
Definition at line 1193 of file divaids.hpp.
Public Types
• typedef UnsignedT value_typeType of the value held by this object.
Public Member Functions
• hexfmt (value_type val=0, dword flags=defaultFlags)Construct an object holding the value val to be formatted with a prefix "0x" unless flag NoPrefix is set (de-fault is defaultFlags & NoPrefix) with upper case hexadecimal digits unless flag LowerCase is set (defaultis defaultFlags & LowerCase).
• hexfmt (value_type val, bool noprefix)Construct an object holding the value val to be formatted with a prefix "0x" unless noprefix is true.
• operator UnsignedT () constConvert to the value held by this object.
• dword flags () constReturn the flags in effect.
• dword flags (dword newFlags)Specify a new flags and return the previous ones.
• bool noprefix () constReturn the noprefix flag in effect.
• bool noprefix (bool nopr)Specify a new noprefix flag and return the previous one.
• template<class StringT>
operator StringT () constConvert the value held by this object to the hexadecimal StringT representation according to the flags ineffect.
Static Public Member Functions
• template<class StringT, class IteratorT>
static StringT dump (IteratorT first, IteratorT last)Return a string containing the hex dump of the value_type range [∗first, ∗last) without prefix "0x".
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.39 stm::hexfmt< UnsignedT, DefaultFlags > Class Template Reference 217
Static Public Attributes
• static const dword defaultFlags = DefaultFlagsDefault flags.
Private Types
• typedef local::xhexfmt< UnsignedT > implImplementation.
12.39.2 Member Typedef Documentation
12.39.2.1 template<typename UnsignedT, dword DefaultFlags = fmtflags::NoFlags> typedeflocal::xhexfmt<UnsignedT> stm::hexfmt< UnsignedT, DefaultFlags >::impl [private]
Implementation.
Definition at line 1198 of file divaids.hpp.
12.39.2.2 template<typename UnsignedT, dword DefaultFlags = fmtflags::NoFlags> typedef Un-signedT stm::hexfmt< UnsignedT, DefaultFlags >::value_type
Type of the value held by this object.
Definition at line 1205 of file divaids.hpp.
12.39.3 Constructor & Destructor Documentation
12.39.3.1 template<typename UnsignedT, dword DefaultFlags> stm::hexfmt< UnsignedT, De-faultFlags >::hexfmt (value_type val = 0, dword flags = defaultFlags) [inline]
Construct an object holding the value val to be formatted with a prefix "0x" unless flag NoPrefix is set (de-fault is defaultFlags & NoPrefix) with upper case hexadecimal digits unless flag LowerCase is set (defaultis defaultFlags & LowerCase).
Definition at line 3078 of file divxaids.hpp.
12.39.3.2 template<typename UnsignedT, dword DefaultFlags> stm::hexfmt< UnsignedT, De-faultFlags >::hexfmt (value_type val, bool noprefix) [inline]
Construct an object holding the value val to be formatted with a prefix "0x" unless noprefix is true.
Definition at line 3084 of file divxaids.hpp.
12.39.4 Member Function Documentation
12.39.4.1 template<typename UnsignedT, dword DefaultFlags> stm::hexfmt< UnsignedT, De-faultFlags >::operator UnsignedT () const [inline]
Convert to the value held by this object.
Definition at line 3095 of file divxaids.hpp.
References stm::local::xhexfmt< UnsignedT >::val_.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.39 stm::hexfmt< UnsignedT, DefaultFlags > Class Template Reference 218
12.39.4.2 template<typename UnsignedT, dword DefaultFlags> dword stm::hexfmt< UnsignedT,DefaultFlags >::flags () const [inline]
Return the flags in effect.
Definition at line 3102 of file divxaids.hpp.
References stm::local::xhexfmt< UnsignedT >::flags_.
12.39.4.3 template<typename UnsignedT, dword DefaultFlags> dword stm::hexfmt< UnsignedT,DefaultFlags >::flags (dword newFlags) [inline]
Specify a new flags and return the previous ones.
Definition at line 3109 of file divxaids.hpp.
References stm::local::xhexfmt< UnsignedT >::flags_.
12.39.4.4 template<typename UnsignedT, dword DefaultFlags> bool stm::hexfmt< UnsignedT,DefaultFlags >::noprefix () const [inline]
Return the noprefix flag in effect.
Definition at line 3118 of file divxaids.hpp.
References stm::local::xhexfmt< UnsignedT >::flags_, and stm::fmtflags::NoPrefix.
12.39.4.5 template<typename UnsignedT, dword DefaultFlags> bool stm::hexfmt< UnsignedT,DefaultFlags >::noprefix (bool nopr) [inline]
Specify a new noprefix flag and return the previous one.
Definition at line 3125 of file divxaids.hpp.
References stm::local::xhexfmt< UnsignedT >::flags_, and stm::fmtflags::NoPrefix.
12.39.4.6 template<typename UnsignedT, dword DefaultFlags> template<class StringT>stm::hexfmt< UnsignedT, DefaultFlags >::operator StringT () const [inline]
Convert the value held by this object to the hexadecimal StringT representation according to the flags ineffect.
Definition at line 3142 of file divxaids.hpp.
References os.
12.39.4.7 template<typename UnsignedT, dword DefaultFlags> template<class StringT, classIteratorT> StringT stm::hexfmt< UnsignedT, DefaultFlags >::dump (IteratorT first, IteratorT last)[inline, static]
Return a string containing the hex dump of the value_type range [∗first, ∗last) without prefix "0x".
Definition at line 3157 of file divxaids.hpp.
References os.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.40 stm::hexfmt< ElemT ∗, DefaultFlags > Class Template Reference 219
12.39.5 Member Data Documentation
12.39.5.1 template<typename UnsignedT, dword DefaultFlags = fmtflags::NoFlags> const dwordstm::hexfmt< UnsignedT, DefaultFlags >::defaultFlags = DefaultFlags [static]
Default flags.
Definition at line 1202 of file divaids.hpp.
The documentation for this class was generated from the following files:
• divaids.hpp• divxaids.hpp
12.40 stm::hexfmt< ElemT ∗, DefaultFlags > Class Template Reference
#include <divaids.hpp>
Inheritance diagram for stm::hexfmt< ElemT ∗, DefaultFlags >:
stm::hexfmt< ElemT *, DefaultFlags >
stm::fmtflags stm::local::xhexfmt< ElemT * >
stm::local::xhexfmt< UnsignedT >
< ElemT * >
Collaboration diagram for stm::hexfmt< ElemT ∗, DefaultFlags >:
stm::hexfmt< ElemT *, DefaultFlags >
stm::fmtflags stm::local::xhexfmt< ElemT * >
stm::local::xhexfmt< UnsignedT >
< ElemT * >
UnsignedT
val_
12.40.1 Detailed Description
template<typename ElemT, dword DefaultFlags> class stm::hexfmt< ElemT ∗, DefaultFlags >
Class template partial specialization allowing to format the pointer held as hexadecimal string.
Definition at line 1252 of file divaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.40 stm::hexfmt< ElemT ∗, DefaultFlags > Class Template Reference 220
Public Types
• typedef ElemT value_typeType of the value held by this object.
Public Member Functions
• hexfmt (value_type ∗ptr=NULL, dword flags=defaultFlags)Construct an object holding the pointer ptr to be formatted with a prefix "0x" unless flag NoPrefix is set (de-fault is defaultFlags & NoPrefix) with upper case hexadecimal digits unless flag LowerCase is set (defaultis defaultFlags & LowerCase).
• hexfmt (value_type ∗ptr, bool noprefix)Construct an object holding the pointer ptr to be formatted with a prefix "0x" unless noprefix is true.
• operator ElemT ∗ () constConvert to the pointer held by this object.
• dword flags () constReturn the flags in effect.
• dword flags (dword newFlags)Specify a new flags and return the previous ones.
• bool noprefix () constReturn the noprefix flag in effect.
• bool noprefix (bool nopr)Specify a new noprefix flag and return the previous one.
• template<class StringT>
operator StringT () constConvert the pointer held by this object to the hexadecimal StringT representation according to the flags ineffect.
Static Public Attributes
• static const dword defaultFlags = DefaultFlagsDefault flags.
Private Types
• typedef local::xhexfmt< ElemT ∗ > implImplementation.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.40 stm::hexfmt< ElemT ∗, DefaultFlags > Class Template Reference 221
12.40.2 Member Typedef Documentation
12.40.2.1 template<typename ElemT, dword DefaultFlags> typedef local::xhexfmt<ElemT ∗>stm::hexfmt< ElemT ∗, DefaultFlags >::impl [private]
Implementation.
Definition at line 1257 of file divaids.hpp.
12.40.2.2 template<typename ElemT, dword DefaultFlags> typedef ElemT stm::hexfmt< ElemT∗, DefaultFlags >::value_type
Type of the value held by this object.
Definition at line 1264 of file divaids.hpp.
12.40.3 Constructor & Destructor Documentation
12.40.3.1 template<typename ElemT, dword DefaultFlags> stm::hexfmt< ElemT ∗, DefaultFlags>::hexfmt (value_type ∗ ptr = NULL, dword flags = defaultFlags) [inline]
Construct an object holding the pointer ptr to be formatted with a prefix "0x" unless flag NoPrefix isset (default is defaultFlags & NoPrefix) with upper case hexadecimal digits unless flag LowerCase is set(default is defaultFlags & LowerCase).
Definition at line 3205 of file divxaids.hpp.
12.40.3.2 template<typename ElemT, dword DefaultFlags> stm::hexfmt< ElemT ∗, DefaultFlags>::hexfmt (value_type ∗ ptr, bool noprefix) [inline]
Construct an object holding the pointer ptr to be formatted with a prefix "0x" unless noprefix is true.
Definition at line 3211 of file divxaids.hpp.
12.40.4 Member Function Documentation
12.40.4.1 template<typename ElemT, dword DefaultFlags> stm::hexfmt< ElemT ∗, DefaultFlags>::operator ElemT ∗ () const [inline]
Convert to the pointer held by this object.
Definition at line 3222 of file divxaids.hpp.
References stm::local::xhexfmt< UnsignedT >::val_.
12.40.4.2 template<typename ElemT, dword DefaultFlags> dword stm::hexfmt< ElemT ∗, De-faultFlags >::flags () const [inline]
Return the flags in effect.
Definition at line 3229 of file divxaids.hpp.
References stm::local::xhexfmt< UnsignedT >::flags_.
12.40.4.3 template<typename ElemT, dword DefaultFlags> dword stm::hexfmt< ElemT ∗, De-faultFlags >::flags (dword newFlags) [inline]
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.41 stm::smartptr::local::increfcount< T, Compare, refcounted, multirange > Struct TemplateReference 222
Specify a new flags and return the previous ones.
Definition at line 3236 of file divxaids.hpp.
References stm::local::xhexfmt< UnsignedT >::flags_.
12.40.4.4 template<typename ElemT, dword DefaultFlags> bool stm::hexfmt< ElemT ∗, Default-Flags >::noprefix () const [inline]
Return the noprefix flag in effect.
Definition at line 3245 of file divxaids.hpp.
References stm::local::xhexfmt< UnsignedT >::flags_, and stm::fmtflags::NoPrefix.
12.40.4.5 template<typename ElemT, dword DefaultFlags> bool stm::hexfmt< ElemT ∗, Default-Flags >::noprefix (bool nopr) [inline]
Specify a new noprefix flag and return the previous one.
Definition at line 3252 of file divxaids.hpp.
References stm::local::xhexfmt< UnsignedT >::flags_, and stm::fmtflags::NoPrefix.
12.40.4.6 template<typename ElemT, dword DefaultFlags> template<class StringT>stm::hexfmt< ElemT ∗, DefaultFlags >::operator StringT () const [inline]
Convert the pointer held by this object to the hexadecimal StringT representation according to the flags ineffect.
Definition at line 3269 of file divxaids.hpp.
References os.
12.40.5 Member Data Documentation
12.40.5.1 template<typename ElemT, dword DefaultFlags> const dword stm::hexfmt< ElemT ∗,DefaultFlags >::defaultFlags = DefaultFlags [static]
Default flags.
Definition at line 1261 of file divaids.hpp.
The documentation for this class was generated from the following files:
• divaids.hpp• divxaids.hpp
12.41 stm::smartptr::local::increfcount< T, Compare, refcounted, multirange >Struct Template Reference
#include <smartptrxaids.hpp>
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.42 stm::smartptr::injective< T, Compare, Allocator, Policy > Class Template Reference 223
12.41.1 Detailed Description
template<class T, class Compare, bool refcounted, bool multirange> structstm::smartptr::local::increfcount< T, Compare, refcounted, multirange >
Definition at line 465 of file smartptrxaids.hpp.
Public Member Functions
• void operator() (item_descr< T, Compare, refcounted, multirange > &descr)
12.41.2 Member Function Documentation
12.41.2.1 template<class T, class Compare, bool refcounted, bool multirange> voidstm::smartptr::local::increfcount< T, Compare, refcounted, multirange >::operator() (item_-descr< T, Compare, refcounted, multirange > & descr) [inline]
Definition at line 468 of file smartptrxaids.hpp.
The documentation for this struct was generated from the following file:
• smartptrxaids.hpp
12.42 stm::smartptr::injective< T, Compare, Allocator, Policy > Class TemplateReference
#include <smartptraids.hpp>
12.42.1 Detailed Description
template<class T, class Compare = std::less<T>, class Allocator = std::allocator<T>, class Policy= stm::smartptr::policy<>> class stm::smartptr::injective< T, Compare, Allocator, Policy >
The traits class template injective combines the class template injective_ptr and its associated class templateinjective_set having either the surjective or the not surjective policy property.
Definition at line 696 of file smartptraids.hpp.
Public Types
• typedef injective_ptr< T, Compare, Allocator, Policy > ptrinjective_ptr type conforming to Policy.
• typedef injective_set< T, Compare, Allocator, MakeMultirange< Policy > > setinjective_set type conforming to Policy.
• typedef Policy::surjective surjectiveSurjective policy type conforming to that of Policy.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.43 stm::smartptr::injective_ptr< T, Compare, Allocator, Policy > Class Template Reference224
12.42.2 Member Typedef Documentation
12.42.2.1 template<class T, class Compare = std::less<T>, class Allocator = std::allocator<T>,class Policy = stm::smartptr::policy<>> typedef injective_ptr<T, Compare, Allocator, Policy>stm::smartptr::injective< T, Compare, Allocator, Policy >::ptr
injective_ptr type conforming to Policy.
Definition at line 700 of file smartptraids.hpp.
12.42.2.2 template<class T, class Compare = std::less<T>, class Allocator = std::allocator<T>,class Policy = stm::smartptr::policy<>> typedef injective_set<T, Compare, Allocator,MakeMultirange<Policy> > stm::smartptr::injective< T, Compare, Allocator, Policy >::set
injective_set type conforming to Policy.
Definition at line 703 of file smartptraids.hpp.
12.42.2.3 template<class T, class Compare = std::less<T>, class Allocator = std::allocator<T>,class Policy = stm::smartptr::policy<>> typedef Policy::surjective stm::smartptr::injective< T,Compare, Allocator, Policy >::surjective
Surjective policy type conforming to that of Policy.
Definition at line 706 of file smartptraids.hpp.
The documentation for this class was generated from the following file:
• smartptraids.hpp
12.43 stm::smartptr::injective_ptr< T, Compare, Allocator, Policy > Class Tem-plate Reference
#include <smartptraids.hpp>
Inheritance diagram for stm::smartptr::injective_ptr< T, Compare, Allocator, Policy >:
stm::smartptr::injective_ptr< T, Compare, Allocator, Policy >
stm::smartptr::injective_set< T, Compare, Allocator, stm::smartptr::MakeMultirange< Policy > >::accessor
stm::smartptr::injective_ptr< T, Compare, Allocator, stm::smartptr::MakeMultirange< Policy > >< T, Compare, Allocator, stm::smartptr::MakeMultirange< Policy > >
stm::smartptr::local::mapped_ptr< T, Compare, Allocator, Policy::surjective::value, Policy::multirange::value >stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange >< T, Compare, Allocator, Policy::surjective::value, Policy::multirange::value >
Collaboration diagram for stm::smartptr::injective_ptr< T, Compare, Allocator, Policy >:
stm::smartptr::injective_ptr< T, Compare, Allocator, Policy >stm::smartptr::local::mapped_ptr< T, Compare, Allocator, Policy::surjective::value, Policy::multirange::value >T
ptr_
stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange >
ptr_ < T, Compare, Allocator, Policy::surjective::value, Policy::multirange::value >
12.43.1 Detailed Description
template<class T, class Compare = std::less<T>, class Allocator = std::allocator<T>, class Policy= stm::smartptr::policy<>> class stm::smartptr::injective_ptr< T, Compare, Allocator, Policy >
The class template injective_ptr is a smart pointer pointing to unique constant objects of element type Tstored using a static repository.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.43 stm::smartptr::injective_ptr< T, Compare, Allocator, Policy > Class Template Reference225
The template parameter Compare shall define a strict weak ordering as described in (25.3). Then theuniqueness of objects in the repository means, that for each equivalence class of the equivalence rela-tion defined by that strict weak ordering at most one representant is stored by the repository. Hence twoinjective_ptr<T, Compare, Allocator, Policy> instances pointing to equivalent objects are equal.
In contrast to other smart pointer designs the element type T is supplied to the injective_ptr<T, Compare,Allocator, Policy> constructors by value and not by a pointer to a user allocated value. The allocation isdone by the implementation using the template argument Allocator and the template argument Compare toensure that equivalent values are allocated only once. The value access requires one dereference operationbut due to the constness of the objects stored in the repository, it is not possible to change the value of theelement an injective_ptr points to.
If T supports boost::serialization, specializations of the class template injective_ptr<T, Compare, Allocator,Policy> supports it as well inclusive object T tracking. To define a typedef or to define a default initializedvariable of injective_ptr<T, Compare, Allocator, Policy> type the element type T needs not be complete.
An injective_ptr<T, Compare, Allocator, Policy> object either points to an object of value type T in whichcase it is called dereferenceable, or not in which case it is called empty. The repository element associatedwith a dereferenceable injective_ptr<T, Compare, Allocator, Policy> instance is called the accessor of theelement pointed to by the injective_ptr.
If the policy property multirange is false, the repository is not further structured and all accessors form onedefault range which is predefined in all cases.
Else each specialization of injective_ptr<T, Compare, Allocator, Policy> provides a maximum ofstd::numeric_limits<stm::dword>::max() different ranges each containing its own accessors. Also in thiscase the value access requires only one dereference operation wheras the management overhead in mem-ory space and execution time during construction and destruction of injective_ptr<T, Compare, Allocator,Policy> objects is slightly greater than in the non-multirange case. Such a repository range is character-ized by a value of rangeid_type returned by the methods make_range() and rangeid() may be stored andsupplied as injective_ptr constructor argument. If none is specified, the predefined default range is used.
Because for any two injective_ptr<T, Compare, Allocator, Policy> instances ptr1 and ptr2, an equivalenceof ∗ptr1 and ∗ptr2 under the equivalence relation induced by Compare implies that the accessor of thisequivalent value is stored only once per range, the mathematical mapping
injective_ptr<T, Compare, Allocator, Policy> --> range
is injective, hence the name injective_ptr. If the policy property surjective is true, that mapping is also sur-jective, hence bijective. This means that then accessors of elements no more associated with any injective_-ptr<T, Compare, Allocator, true> instance are deleted and that elements no more accessed by any accessorare deallocated.
In all cases, it is guaranteed that equivalent objects of element type T are allocated only once even if theybelong to different ranges.
Definition at line 254 of file smartptraids.hpp.
Public Types
• typedef T element_typeProvides the type of the template parameter T.
• typedef mapped_ptr_impl::rangeid_type rangeid_typeRange ID type used as handle for the different repository ranges.
• typedef Compare compare_type
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.43 stm::smartptr::injective_ptr< T, Compare, Allocator, Policy > Class Template Reference226
Provides the type of the template parameter Compare.
• typedef Allocator allocator_typeProvides the type of the template parameter Allocate.
• typedef Policy policy_typeProvides the type of the template parameter Policy.
• typedef long refcount_typeThe type used for reference counts is long to be compatible with boost::shared_ptr.
• typedef repository::range_type range_typeThe iterator range type range_type is a specialization of the class template boost::iterator_range and pro-vides constant iterators with element_type as value type.
Public Member Functions
• injective_ptr ()Constructs an empty injective_ptr object for the default range.
• injective_ptr (rangeid_type rangeid)Constructs an empty injective_ptr object for the range of rangeid, which shall be rangeid_type() for thedefault range or be the result of a call of rangeid() or define_range().
• injective_ptr (const typename range_type::iterator &it)Constructs an injective_ptr object for the range of it pointing to the same value as it, if it is dereferenceable,else throws std::runtime_error.
• injective_ptr (const element_type &value, bool store=true)Constructs an injective_ptr object for the default range pointing to the unique object stored being equivalentto value under the equivalence relation induced by Compare.
• injective_ptr (const element_type &value, rangeid_type rangeid, bool store=true)Constructs an injective_ptr object for the range of rangeid pointing to the unique object stored being equiv-alent to value under the equivalence relation induced by Compare, where rangeid shall be rangeid_type()for the default range or be the result of a call of rangeid() or define_range().
• injective_ptr (const injective_ptr &other)Copy constructor.
• injective_ptr & operator= (const injective_ptr &other)Assigns the other injective_ptr to this injective_ptr and returns it.
• injective_ptr & assign (const element_type &value)Causes this injective_ptr to point to the unique object stored being equivalent to value under the equivalencerelation induced by Compare retaining its range and returns this injective_ptr.
• void reset ()Assigns the empty injective_ptr to this injective_ptr retaining its range.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.43 stm::smartptr::injective_ptr< T, Compare, Allocator, Policy > Class Template Reference227
• void reset (const element_type &value)Causes this injective_ptr to point to the unique object stored being equivalent to value under the equivalencerelation induced by Compare retaining its range.
• void swap (injective_ptr &other)Exchanges the contents of this injective_ptr with that of the other.
• operator bool () constReturns true, if this injective_ptr is not empty, else false.
• const element_type & operator ∗ () constReturns a constant reference to the element pointed to by this injective_ptr, if it is not be empty, else throwsstd::runtime_error.
• const element_type ∗ operator→ () constReturns a constant pointer to the element pointed to by this injective_ptr, if it is not be empty, else throwsstd::runtime_error.
• const element_type ∗ get () constReturns a constant pointer to the element pointed to by this injective_ptr, if it is not empty, else the nullpointer.
• bool unique () constReturns true, if injective_ptr is surjective, this injective_ptr is dereferenceable and is the only one pointingto its element_type object, else false.
• refcount_type use_count () constReturns -1, if this incective_ptr is empty, else for a surjective injective_ptr the number of injective_ptrobjects, including this one, whose element value pointed to is equal to this one’s, else 0.
• const range_type & range () constReturns a constant reference to the range of this injective_ptr.
• rangeid_type rangeid () constReturns the rangeid of the range of this injective_ptr.
Static Public Member Functions
• static bool is_surjective ()Returns the value of the policy property surjective.
• static bool is_multirange ()Returns the value of the policy property multirange.
• static rangeid_type define_range ()Defines a new range and returns its range ID.
• static void undefine_range (rangeid_type rangeid)Undefines the range of rangeid, if rangeid is not rangeid_type() which characterizes the default range andif the range is defined, else throws std::runtime_error.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.43 stm::smartptr::injective_ptr< T, Compare, Allocator, Policy > Class Template Reference228
• static bool range_empty (rangeid_type rangeid)Returns true, if the range of rangeid is empty, else false.
• static bool range_defined (rangeid_type rangeid)Returns true, if the range of rangeid is defined, else false.
• static bool range_available (rangeid_type rangeid)Returns true, if the rangeid is available for definition, else false.
Private Types
• typedef local::mapped_ptr< T, Compare, Allocator, Policy::surjective::value, Pol-icy::multirange::value > mapped_ptr_impl
Implementation.
• typedef mapped_ptr_impl::repository repositoryImplementation.
Friends
• class boost::serialization::accessGrant implementation access to boost::serialization.
12.43.2 Member Typedef Documentation
12.43.2.1 template<class T, class Compare = std::less<T>, class Allocator = std::allocator<T>,class Policy = stm::smartptr::policy<>> typedef local::mapped_ptr< T, Compare, Allocator, Pol-icy::surjective::value, Policy::multirange::value > stm::smartptr::injective_ptr< T, Compare, Allo-cator, Policy >::mapped_ptr_impl [private]
Implementation.
Reimplemented from stm::smartptr::local::mapped_ptr< T, Compare, Allocator, Policy::surjective::value,Policy::multirange::value >.
Definition at line 273 of file smartptraids.hpp.
12.43.2.2 template<class T, class Compare = std::less<T>, class Allocator =std::allocator<T>, class Policy = stm::smartptr::policy<>> typedef mapped_ptr_impl::repositorystm::smartptr::injective_ptr< T, Compare, Allocator, Policy >::repository [private]
Implementation.
Reimplemented from stm::smartptr::local::mapped_ptr< T, Compare, Allocator, Policy::surjective::value,Policy::multirange::value >.
Definition at line 276 of file smartptraids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.43 stm::smartptr::injective_ptr< T, Compare, Allocator, Policy > Class Template Reference229
12.43.2.3 template<class T, class Compare = std::less<T>, class Allocator = std::allocator<T>,class Policy = stm::smartptr::policy<>> typedef T stm::smartptr::injective_ptr< T, Compare, Al-locator, Policy >::element_type
Provides the type of the template parameter T.
Definition at line 283 of file smartptraids.hpp.
12.43.2.4 template<class T, class Compare = std::less<T>, class Allocator = std::allocator<T>,class Policy = stm::smartptr::policy<>> typedef mapped_ptr_impl::rangeid_typestm::smartptr::injective_ptr< T, Compare, Allocator, Policy >::rangeid_type
Range ID type used as handle for the different repository ranges.
Its default constructor yields the handle of the predefined default range.
Definition at line 287 of file smartptraids.hpp.
12.43.2.5 template<class T, class Compare = std::less<T>, class Allocator = std::allocator<T>,class Policy = stm::smartptr::policy<>> typedef Compare stm::smartptr::injective_ptr< T, Com-pare, Allocator, Policy >::compare_type
Provides the type of the template parameter Compare.
Definition at line 290 of file smartptraids.hpp.
12.43.2.6 template<class T, class Compare = std::less<T>, class Allocator = std::allocator<T>,class Policy = stm::smartptr::policy<>> typedef Allocator stm::smartptr::injective_ptr< T, Com-pare, Allocator, Policy >::allocator_type
Provides the type of the template parameter Allocate.
Definition at line 293 of file smartptraids.hpp.
12.43.2.7 template<class T, class Compare = std::less<T>, class Allocator = std::allocator<T>,class Policy = stm::smartptr::policy<>> typedef Policy stm::smartptr::injective_ptr< T, Compare,Allocator, Policy >::policy_type
Provides the type of the template parameter Policy.
Definition at line 296 of file smartptraids.hpp.
12.43.2.8 template<class T, class Compare = std::less<T>, class Allocator = std::allocator<T>,class Policy = stm::smartptr::policy<>> typedef long stm::smartptr::injective_ptr< T, Compare,Allocator, Policy >::refcount_type
The type used for reference counts is long to be compatible with boost::shared_ptr.
Definition at line 300 of file smartptraids.hpp.
12.43.2.9 template<class T, class Compare = std::less<T>, class Allocator = std::allocator<T>,class Policy = stm::smartptr::policy<>> typedef repository::range_type stm::smartptr::injective_-ptr< T, Compare, Allocator, Policy >::range_type
The iterator range type range_type is a specialization of the class template boost::iterator_range and pro-vides constant iterators with element_type as value type.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.43 stm::smartptr::injective_ptr< T, Compare, Allocator, Policy > Class Template Reference230
It represents an injective_ptr object’s range. Although instances of range_type cannot be constructed withits public interface, they can be obtained by the method range() of injective_ptr.
Definition at line 308 of file smartptraids.hpp.
12.43.3 Constructor & Destructor Documentation
12.43.3.1 template<class T, class Compare, class Allocator, class Policy>stm::smartptr::injective_ptr< T, Compare, Allocator, Policy >::injective_ptr () [inline]
Constructs an empty injective_ptr object for the default range.
Never throws.
Definition at line 1995 of file smartptrxaids.hpp.
12.43.3.2 template<class T, class Compare, class Allocator, class Policy>stm::smartptr::injective_ptr< T, Compare, Allocator, Policy >::injective_ptr (rangeid_typerangeid) [inline]
Constructs an empty injective_ptr object for the range of rangeid, which shall be rangeid_type() for thedefault range or be the result of a call of rangeid() or define_range().
Throws std::runtime_error, if the range of rangeid is not defined.
Definition at line 2002 of file smartptrxaids.hpp.
12.43.3.3 template<class T, class Compare, class Allocator, class Policy>stm::smartptr::injective_ptr< T, Compare, Allocator, Policy >::injective_ptr (const typenamerange_type::iterator & it) [inline]
Constructs an injective_ptr object for the range of it pointing to the same value as it, if it is dereferenceable,else throws std::runtime_error.
Definition at line 2011 of file smartptrxaids.hpp.
References stm::smartptr::local::mapped_ptr< T, Compare, Allocator, Policy::surjective::value,Policy::multirange::value >::id(), stm::smartptr::local::mapped_ptr< T, Compare, Allocator, Pol-icy::surjective::value, Policy::multirange::value >::repository_, and stm::smartptr::injective_ptr< T,Compare, Allocator, Policy >::swap().
12.43.3.4 template<class T, class Compare, class Allocator, class Policy>stm::smartptr::injective_ptr< T, Compare, Allocator, Policy >::injective_ptr (const element_-type & value, bool store = true) [inline]
Constructs an injective_ptr object for the default range pointing to the unique object stored being equivalentto value under the equivalence relation induced by Compare.
If store is false and such an object was not yet contained in the default range, its empty injective_ptr isconstructed.
Definition at line 2032 of file smartptrxaids.hpp.
12.43.3.5 template<class T, class Compare, class Allocator, class Policy>stm::smartptr::injective_ptr< T, Compare, Allocator, Policy >::injective_ptr (const element_-type & value, rangeid_type rangeid, bool store = true) [inline]
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.43 stm::smartptr::injective_ptr< T, Compare, Allocator, Policy > Class Template Reference231
Constructs an injective_ptr object for the range of rangeid pointing to the unique object stored being equiv-alent to value under the equivalence relation induced by Compare, where rangeid shall be rangeid_type()for the default range or be the result of a call of rangeid() or define_range().
If store is false and such an object was not yet contained in the range of rangeid, its empty injective_ptr isconstructed. Throws std::runtime_error, if the range of rangeid is not defined.
Definition at line 2042 of file smartptrxaids.hpp.
12.43.3.6 template<class T, class Compare, class Allocator, class Policy>stm::smartptr::injective_ptr< T, Compare, Allocator, Policy >::injective_ptr (const injective_-ptr< T, Compare, Allocator, Policy > & other) [inline]
Copy constructor.
Definition at line 2053 of file smartptrxaids.hpp.
12.43.4 Member Function Documentation
12.43.4.1 template<class T, class Compare, class Allocator, class Policy> injective_ptr< T,Compare, Allocator, Policy > & stm::smartptr::injective_ptr< T, Compare, Allocator, Policy>::operator= (const injective_ptr< T, Compare, Allocator, Policy > & other) [inline]
Assigns the other injective_ptr to this injective_ptr and returns it.
Definition at line 2064 of file smartptrxaids.hpp.
References stm::smartptr::local::mapped_ptr< T, Compare, Allocator, Policy::surjective::value,Policy::multirange::value >::id(), stm::smartptr::local::mapped_ptr< T, Compare, Allocator, Pol-icy::surjective::value, Policy::multirange::value >::ptr_, and stm::smartptr::injective_ptr< T, Compare,Allocator, Policy >::swap().
Referenced by stm::smartptr::injective_set< T, Compare, Allocator, Policy >::accessor::operator=().
12.43.4.2 template<class T, class Compare, class Allocator, class Policy> injective_ptr< T, Com-pare, Allocator, Policy > & stm::smartptr::injective_ptr< T, Compare, Allocator, Policy >::assign(const element_type & value) [inline]
Causes this injective_ptr to point to the unique object stored being equivalent to value under the equivalencerelation induced by Compare retaining its range and returns this injective_ptr.
Definition at line 2083 of file smartptrxaids.hpp.
References stm::smartptr::local::mapped_ptr< T, Compare, Allocator, Policy::surjective::value, Pol-icy::multirange::value >::id(), and stm::smartptr::injective_ptr< T, Compare, Allocator, Policy >::swap().
Referenced by stm::smartptr::injective_ptr< T, Compare, Allocator, Policy >::reset().
12.43.4.3 template<class T, class Compare, class Allocator, class Policy> voidstm::smartptr::injective_ptr< T, Compare, Allocator, Policy >::reset () [inline]
Assigns the empty injective_ptr to this injective_ptr retaining its range.
Never throws.
Definition at line 2097 of file smartptrxaids.hpp.
References stm::smartptr::local::mapped_ptr< T, Compare, Allocator, Policy::surjective::value, Pol-icy::multirange::value >::id(), and stm::smartptr::injective_ptr< T, Compare, Allocator, Policy >::swap().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.43 stm::smartptr::injective_ptr< T, Compare, Allocator, Policy > Class Template Reference232
12.43.4.4 template<class T, class Compare, class Allocator, class Policy> voidstm::smartptr::injective_ptr< T, Compare, Allocator, Policy >::reset (const element_type &value) [inline]
Causes this injective_ptr to point to the unique object stored being equivalent to value under the equivalencerelation induced by Compare retaining its range.
Definition at line 2112 of file smartptrxaids.hpp.
References stm::smartptr::injective_ptr< T, Compare, Allocator, Policy >::assign().
12.43.4.5 template<class T, class Compare, class Allocator, class Policy> voidstm::smartptr::injective_ptr< T, Compare, Allocator, Policy >::swap (injective_ptr< T, Com-pare, Allocator, Policy > & other) [inline]
Exchanges the contents of this injective_ptr with that of the other.
Never throws.
Definition at line 2124 of file smartptrxaids.hpp.
References stm::smartptr::swap().
Referenced by stm::smartptr::injective_ptr< T, Compare, Allocator, Policy >::assign(),stm::smartptr::injective_ptr< T, Compare, Allocator, Policy >::injective_ptr(), stm::smartptr::injective_-ptr< T, Compare, Allocator, Policy >::operator=(), and stm::smartptr::injective_ptr< T, Compare,Allocator, Policy >::reset().
12.43.4.6 template<class T, class Compare, class Allocator, class Policy>stm::smartptr::injective_ptr< T, Compare, Allocator, Policy >::operator bool () const [inline]
Returns true, if this injective_ptr is not empty, else false.
Never throws.
Definition at line 2135 of file smartptrxaids.hpp.
References stm::smartptr::local::mapped_ptr< T, Compare, Allocator, Policy::surjective::value, Pol-icy::multirange::value >::ptr_.
12.43.4.7 template<class T, class Compare, class Allocator, class Policy> const injective_ptr< T,Compare, Allocator, Policy >::element_type & stm::smartptr::injective_ptr< T, Compare, Alloca-tor, Policy >::operator ∗ () const [inline]
Returns a constant reference to the element pointed to by this injective_ptr, if it is not be empty, else throwsstd::runtime_error.
Definition at line 2150 of file smartptrxaids.hpp.
References stm::smartptr::local::mapped_ptr< T, Compare, Allocator, Policy::surjective::value,Policy::multirange::value >::id(), stm::smartptr::local::mapped_ptr< T, Compare, Allocator, Pol-icy::surjective::value, Policy::multirange::value >::ptr_, and stm::smartptr::local::mapped_ptr< T,Compare, Allocator, Policy::surjective::value, Policy::multirange::value >::repository_.
12.43.4.8 template<class T, class Compare, class Allocator, class Policy> const injective_ptr< T,Compare, Allocator, Policy >::element_type ∗ stm::smartptr::injective_ptr< T, Compare, Allocator,Policy >::operator→ () const [inline]
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.43 stm::smartptr::injective_ptr< T, Compare, Allocator, Policy > Class Template Reference233
Returns a constant pointer to the element pointed to by this injective_ptr, if it is not be empty, else throwsstd::runtime_error.
Definition at line 2174 of file smartptrxaids.hpp.
References stm::smartptr::local::mapped_ptr< T, Compare, Allocator, Policy::surjective::value,Policy::multirange::value >::id(), stm::smartptr::local::mapped_ptr< T, Compare, Allocator, Pol-icy::surjective::value, Policy::multirange::value >::ptr_, and stm::smartptr::local::mapped_ptr< T,Compare, Allocator, Policy::surjective::value, Policy::multirange::value >::repository_.
12.43.4.9 template<class T, class Compare, class Allocator, class Policy> const injective_ptr< T,Compare, Allocator, Policy >::element_type ∗ stm::smartptr::injective_ptr< T, Compare, Allocator,Policy >::get () const [inline]
Returns a constant pointer to the element pointed to by this injective_ptr, if it is not empty, else the nullpointer.
Never throws.
Definition at line 2198 of file smartptrxaids.hpp.
References stm::smartptr::local::mapped_ptr< T, Compare, Allocator, Policy::surjective::value, Pol-icy::multirange::value >::ptr_.
Referenced by stm::smartptr::get_pointer(), and stm::smartptr::operator<<().
12.43.4.10 template<class T, class Compare, class Allocator, class Policy> boolstm::smartptr::injective_ptr< T, Compare, Allocator, Policy >::is_surjective () [inline,static]
Returns the value of the policy property surjective.
Never throws.
Definition at line 2206 of file smartptrxaids.hpp.
12.43.4.11 template<class T, class Compare, class Allocator, class Policy> boolstm::smartptr::injective_ptr< T, Compare, Allocator, Policy >::is_multirange () [inline,static]
Returns the value of the policy property multirange.
Never throws.
Definition at line 2214 of file smartptrxaids.hpp.
12.43.4.12 template<class T, class Compare, class Allocator, class Policy> boolstm::smartptr::injective_ptr< T, Compare, Allocator, Policy >::unique () const [inline]
Returns true, if injective_ptr is surjective, this injective_ptr is dereferenceable and is the only one pointingto its element_type object, else false.
Never throws.
Definition at line 2222 of file smartptrxaids.hpp.
References stm::smartptr::injective_ptr< T, Compare, Allocator, Policy >::use_count().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.43 stm::smartptr::injective_ptr< T, Compare, Allocator, Policy > Class Template Reference234
12.43.4.13 template<class T, class Compare, class Allocator, class Policy> injective_ptr< T, Com-pare, Allocator, Policy >::refcount_type stm::smartptr::injective_ptr< T, Compare, Allocator, Pol-icy >::use_count () const [inline]
Returns -1, if this incective_ptr is empty, else for a surjective injective_ptr the number of injective_ptrobjects, including this one, whose element value pointed to is equal to this one’s, else 0.
Definition at line 2238 of file smartptrxaids.hpp.
References stm::smartptr::local::mapped_ptr< T, Compare, Allocator, Policy::surjective::value, Pol-icy::multirange::value >::getrefcount().
Referenced by stm::smartptr::injective_ptr< T, Compare, Allocator, Policy >::unique().
12.43.4.14 template<class T, class Compare, class Allocator, class Policy> const injective_ptr< T,Compare, Allocator, Policy >::range_type & stm::smartptr::injective_ptr< T, Compare, Allocator,Policy >::range () const [inline]
Returns a constant reference to the range of this injective_ptr.
Never throws.
Definition at line 2253 of file smartptrxaids.hpp.
References stm::smartptr::local::mapped_ptr< T, Compare, Allocator, Policy::surjective::value, Pol-icy::multirange::value >::id(), and stm::smartptr::local::mapped_ptr< T, Compare, Allocator, Pol-icy::surjective::value, Policy::multirange::value >::repository_.
12.43.4.15 template<class T, class Compare, class Allocator, class Policy> injective_ptr< T, Com-pare, Allocator, Policy >::rangeid_type stm::smartptr::injective_ptr< T, Compare, Allocator, Policy>::rangeid () const [inline]
Returns the rangeid of the range of this injective_ptr.
Never throws.
Definition at line 2268 of file smartptrxaids.hpp.
References stm::smartptr::local::mapped_ptr< T, Compare, Allocator, Policy::surjective::value, Pol-icy::multirange::value >::id().
Referenced by stm::smartptr::injective_set< T, Compare, Allocator, Policy >::accessor::operator=().
12.43.4.16 template<class T, class Compare, class Allocator, class Policy> injective_ptr< T, Com-pare, Allocator, Policy >::rangeid_type stm::smartptr::injective_ptr< T, Compare, Allocator, Policy>::define_range () [inline, static]
Defines a new range and returns its range ID.
Throws std::runtime_error, if the policy property multiranged is false or if the capacity of ranges is ex-hausted.
Definition at line 2283 of file smartptrxaids.hpp.
References stm::smartptr::local::mapped_ptr< T, Compare, Allocator, Policy::surjective::value, Pol-icy::multirange::value >::init(), and stm::smartptr::local::mapped_ptr< T, Compare, Allocator, Pol-icy::surjective::value, Policy::multirange::value >::repository_.
12.43.4.17 template<class T, class Compare, class Allocator, class Policy> voidstm::smartptr::injective_ptr< T, Compare, Allocator, Policy >::undefine_range (rangeid_type
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.43 stm::smartptr::injective_ptr< T, Compare, Allocator, Policy > Class Template Reference235
rangeid) [inline, static]
Undefines the range of rangeid, if rangeid is not rangeid_type() which characterizes the default range andif the range is defined, else throws std::runtime_error.
If the range was empty, it is marked as available for a new definition, else not. In that case all injective_ptrobjects in the range of rangeid are invalidated.
Definition at line 2293 of file smartptrxaids.hpp.
References stm::smartptr::local::mapped_ptr< T, Compare, Allocator, Policy::surjective::value, Pol-icy::multirange::value >::init(), and stm::smartptr::local::mapped_ptr< T, Compare, Allocator, Pol-icy::surjective::value, Policy::multirange::value >::repository_.
Referenced by stm::smartptr::injective_set< T, Compare, Allocator, Policy >::∼injective_set().
12.43.4.18 template<class T, class Compare, class Allocator, class Policy> boolstm::smartptr::injective_ptr< T, Compare, Allocator, Policy >::range_empty (rangeid_typerangeid) [inline, static]
Returns true, if the range of rangeid is empty, else false.
Throws std::runtime_error, if the range of rangeid is not defined.
Definition at line 2306 of file smartptrxaids.hpp.
References stm::smartptr::local::mapped_ptr< T, Compare, Allocator, Policy::surjective::value, Pol-icy::multirange::value >::init(), and stm::smartptr::local::mapped_ptr< T, Compare, Allocator, Pol-icy::surjective::value, Policy::multirange::value >::repository_.
12.43.4.19 template<class T, class Compare, class Allocator, class Policy> boolstm::smartptr::injective_ptr< T, Compare, Allocator, Policy >::range_defined (rangeid_typerangeid) [inline, static]
Returns true, if the range of rangeid is defined, else false.
Definition at line 2319 of file smartptrxaids.hpp.
References stm::smartptr::local::mapped_ptr< T, Compare, Allocator, Policy::surjective::value, Pol-icy::multirange::value >::init(), and stm::smartptr::local::mapped_ptr< T, Compare, Allocator, Pol-icy::surjective::value, Policy::multirange::value >::repository_.
12.43.4.20 template<class T, class Compare, class Allocator, class Policy> boolstm::smartptr::injective_ptr< T, Compare, Allocator, Policy >::range_available (rangeid_typerangeid) [inline, static]
Returns true, if the rangeid is available for definition, else false.
Definition at line 2332 of file smartptrxaids.hpp.
References stm::smartptr::local::mapped_ptr< T, Compare, Allocator, Policy::surjective::value, Pol-icy::multirange::value >::init(), and stm::smartptr::local::mapped_ptr< T, Compare, Allocator, Pol-icy::surjective::value, Policy::multirange::value >::repository_.
12.43.5 Friends And Related Function Documentation
12.43.5.1 template<class T, class Compare = std::less<T>, class Allocator = std::allocator<T>,class Policy = stm::smartptr::policy<>> friend class boost::serialization::access [friend]
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.44 stm::smartptr::injective_set< T, Compare, Allocator, Policy > Class Template Reference236
Grant implementation access to boost::serialization.
Reimplemented from stm::smartptr::local::mapped_ptr< T, Compare, Allocator, Policy::surjective::value,Policy::multirange::value >.
Definition at line 279 of file smartptraids.hpp.
The documentation for this class was generated from the following files:
• smartptraids.hpp• smartptrxaids.hpp
12.44 stm::smartptr::injective_set< T, Compare, Allocator, Policy > Class Tem-plate Reference
#include <smartptraids.hpp>
12.44.1 Detailed Description
template<class T, class Compare = std::less<T>, class Allocator = std::allocator<T>, class Policy =stm::smartptr::policy<stm::smartptr::Multirange>> class stm::smartptr::injective_set< T, Com-pare, Allocator, Policy >
The class template injective_set is a container of unique constant objects of value type T stored wrappinga specific range of the static repository of an injective_ptr<T, Compare, Allocator, Policy> object.
That is why the container elements are accessable on the one hand by iterators of the injective_ptr<T, Com-pare, Allocator, MakeMultirange<Policy> >range_type instance representing that repository range and onthe other hand through injective_ptr<T, Compare, Allocator, MakeMultirange<Policy> > based accessorobjects. The template parameter Compare shall define a strict weak ordering as described in (25.3). Thenthe uniqueness of objects means, that for each equivalence class of the equivalence relation defined by thatstrict weak ordering at most one representant is stored. Hence two accessor objects representing equivalentobjects are equal.
Moreover, injective_set objects are only default constructible and are neither copyable nor are they boostserializable. To define a typedef or to define a variable of injective_set<T, Compare, Allocator, Policy>type the value type T needs not be complete.
A default constructed injective_set<T, Compare, Allocator, Policy> object is initially empty and an objectof value type T can be inserted as element only by the injective_set insert methods which return an accessorobject representing it. If the policy property surjective is false, such an element stays contained till theinjective_set is destructed, else it is contained exactly as long as at least one accessor instance representingit exists.
Therefore, and because accessor objects are injective_ptr objects, two accessor instances are different if andonly if they represent elements being non-equivalent under the equivalence relation induced by Compare,and the mathematical map
Accessors --> container
between the set Accessors of accessor instances representing different elements of a injective_set<T, Com-pare, Allocator, Policy> instance container and that container is injective, hence the name injective_set.
If the policy property surjective is true, that mapping is also surjective, hence bijective, hence in thiscase elements no more represented by any injective_set<T, Compare, Allocator, true> accessor object aredeleted.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.44 stm::smartptr::injective_set< T, Compare, Allocator, Policy > Class Template Reference237
Definition at line 566 of file smartptraids.hpp.
Public Types
• typedef T value_typeProvides the type of the template parameter T.
• typedef Compare compare_typeProvides the type of the template parameter Compare.
• typedef Allocator allocator_typeProvides the type of the template parameter Allocate.
• typedef MakeMultirange< Policy > policy_typeProvides the effective type of the template Policy.
• typedef injective_ptr< T, Compare, Allocator, MakeMultirange< Policy > > injective_ptr_typeProvides the associated injective pointer type.
• typedef injective_ptr_type::range_type range_typeType of the repository range wrapped.
Public Member Functions
• injective_set ()Default constructor yielding an empty injective_set object.
• ∼injective_set ()Destructor.
• accessor nil () constReturns the empty accessor representing no element.
• accessor insert (const value_type &value)If no element equivalent to value under the equivalence relation induced by Compare is already contained,value is inserted as element of this injective_set.
• accessor insert (const value_type &value, bool &inserted)If no element equivalent to value under the equivalence relation induced by Compare is already contained,value is inserted as element of this injective_set and inserted is set to true, else to false.
• accessor find (const value_type &value) constReturns the empty accessor, if no element equivalent to value under the equivalence relation induced byCompare is contained in this injective_set, else an accessor representing the element found.
• const range_type & range () constReturns a constant reference to the repository range wrapped by this injective_set.
• range_type::iterator begin () const
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.44 stm::smartptr::injective_set< T, Compare, Allocator, Policy > Class Template Reference238
Returns the begin iterator of the repository range wrapped by this injective_set.
• range_type::iterator end () constReturns the end iterator of the repository range wrapped by this injective_set.
• range_type::size_type size () constReturns the number of element containd in this injective_set which is the same as that of the repositoryrange wrapped by this injective_set.
• bool empty () constReturns true, if this injective_set is empty, else false.
Private Attributes
• injective_ptr_type::rangeid_type rangeid_Implementation.
Classes
• class accessorSubclass of injective_ptr<T, Compare, Allocator, MakeMultirange<Policy> > representing an element ofthis injective_set object.
12.44.2 Member Typedef Documentation
12.44.2.1 template<class T, class Compare = std::less<T>, class Allocator =std::allocator<T>, class Policy = stm::smartptr::policy<stm::smartptr::Multirange>> type-def T stm::smartptr::injective_set< T, Compare, Allocator, Policy >::value_type
Provides the type of the template parameter T.
Definition at line 571 of file smartptraids.hpp.
12.44.2.2 template<class T, class Compare = std::less<T>, class Allocator = std::allocator<T>,class Policy = stm::smartptr::policy<stm::smartptr::Multirange>> typedef Comparestm::smartptr::injective_set< T, Compare, Allocator, Policy >::compare_type
Provides the type of the template parameter Compare.
Definition at line 574 of file smartptraids.hpp.
12.44.2.3 template<class T, class Compare = std::less<T>, class Allocator = std::allocator<T>,class Policy = stm::smartptr::policy<stm::smartptr::Multirange>> typedef Allocatorstm::smartptr::injective_set< T, Compare, Allocator, Policy >::allocator_type
Provides the type of the template parameter Allocate.
Definition at line 577 of file smartptraids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.44 stm::smartptr::injective_set< T, Compare, Allocator, Policy > Class Template Reference239
12.44.2.4 template<class T, class Compare = std::less<T>, class Allocator =std::allocator<T>, class Policy = stm::smartptr::policy<stm::smartptr::Multirange>> type-def MakeMultirange<Policy> stm::smartptr::injective_set< T, Compare, Allocator, Policy>::policy_type
Provides the effective type of the template Policy.
Definition at line 580 of file smartptraids.hpp.
12.44.2.5 template<class T, class Compare = std::less<T>, class Allocator = std::allocator<T>,class Policy = stm::smartptr::policy<stm::smartptr::Multirange>> typedef injective_ptr< T, Com-pare, Allocator, MakeMultirange<Policy> > stm::smartptr::injective_set< T, Compare, Allocator,Policy >::injective_ptr_type
Provides the associated injective pointer type.
Definition at line 589 of file smartptraids.hpp.
12.44.2.6 template<class T, class Compare = std::less<T>, class Allocator = std::allocator<T>,class Policy = stm::smartptr::policy<stm::smartptr::Multirange>> typedef injective_ptr_-type::range_type stm::smartptr::injective_set< T, Compare, Allocator, Policy >::range_type
Type of the repository range wrapped.
Its iterator member types can be used to iterate over the injective_set elements in the order defined by thestrict weak ordering defined by Compare.
Definition at line 594 of file smartptraids.hpp.
12.44.3 Constructor & Destructor Documentation
12.44.3.1 template<class T, class Compare, class Allocator, class Policy>stm::smartptr::injective_set< T, Compare, Allocator, Policy >::injective_set () [inline]
Default constructor yielding an empty injective_set object.
Definition at line 2471 of file smartptrxaids.hpp.
12.44.3.2 template<class T, class Compare, class Allocator, class Policy>stm::smartptr::injective_set< T, Compare, Allocator, Policy >::∼injective_set () [inline]
Destructor.
If a non-empty injective_set object is destroyed, all its accessors are invalidated.
Definition at line 2481 of file smartptrxaids.hpp.
References stm::smartptr::injective_set< T, Compare, Allocator, Policy >::rangeid_, andstm::smartptr::injective_ptr< T, Compare, Allocator, Policy >::undefine_range().
12.44.4 Member Function Documentation
12.44.4.1 template<class T, class Compare, class Allocator, class Policy> injective_set< T, Com-pare, Allocator, Policy >::accessor stm::smartptr::injective_set< T, Compare, Allocator, Policy
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.44 stm::smartptr::injective_set< T, Compare, Allocator, Policy > Class Template Reference240
>::nil () const [inline]
Returns the empty accessor representing no element.
Definition at line 2501 of file smartptrxaids.hpp.
References stm::smartptr::injective_set< T, Compare, Allocator, Policy >::rangeid_.
12.44.4.2 template<class T, class Compare, class Allocator, class Policy> injective_set< T, Com-pare, Allocator, Policy >::accessor stm::smartptr::injective_set< T, Compare, Allocator, Policy>::insert (const value_type & value) [inline]
If no element equivalent to value under the equivalence relation induced by Compare is already contained,value is inserted as element of this injective_set.
In all cases the accessor representing the unique element of this injective_set equivalent to value is returned.
Definition at line 2510 of file smartptrxaids.hpp.
References stm::smartptr::injective_set< T, Compare, Allocator, Policy >::rangeid_.
Referenced by stm::smartptr::injective_set< T, Compare, Allocator, Policy >::insert().
12.44.4.3 template<class T, class Compare, class Allocator, class Policy> injective_set< T, Com-pare, Allocator, Policy >::accessor stm::smartptr::injective_set< T, Compare, Allocator, Policy>::insert (const value_type & value, bool & inserted) [inline]
If no element equivalent to value under the equivalence relation induced by Compare is already contained,value is inserted as element of this injective_set and inserted is set to true, else to false.
In all cases the accessor representing the unique element of this injective_set equivalent to value is returned.
Definition at line 2522 of file smartptrxaids.hpp.
References stm::smartptr::injective_set< T, Compare, Allocator, Policy >::find(),stm::smartptr::injective_set< T, Compare, Allocator, Policy >::insert(), stm::smartptr::injective_set< T,Compare, Allocator, Policy >::size(), and StmDebugAidsVerify.
12.44.4.4 template<class T, class Compare, class Allocator, class Policy> injective_set< T, Com-pare, Allocator, Policy >::accessor stm::smartptr::injective_set< T, Compare, Allocator, Policy>::find (const value_type & value) const [inline]
Returns the empty accessor, if no element equivalent to value under the equivalence relation induced byCompare is contained in this injective_set, else an accessor representing the element found.
Definition at line 2539 of file smartptrxaids.hpp.
References stm::smartptr::injective_set< T, Compare, Allocator, Policy >::rangeid_.
Referenced by stm::smartptr::injective_set< T, Compare, Allocator, Policy >::insert().
12.44.4.5 template<class T, class Compare, class Allocator, class Policy> const injective_set< T,Compare, Allocator, Policy >::range_type & stm::smartptr::injective_set< T, Compare, Allocator,Policy >::range () const [inline]
Returns a constant reference to the repository range wrapped by this injective_set.
Definition at line 2551 of file smartptrxaids.hpp.
References stm::smartptr::injective_set< T, Compare, Allocator, Policy >::rangeid_.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.44 stm::smartptr::injective_set< T, Compare, Allocator, Policy > Class Template Reference241
Referenced by stm::smartptr::injective_set< T, Compare, Allocator, Policy >::begin(),stm::smartptr::injective_set< T, Compare, Allocator, Policy >::empty(), stm::smartptr::injective_-set< T, Compare, Allocator, Policy >::end(), and stm::smartptr::injective_set< T, Compare, Allocator,Policy >::size().
12.44.4.6 template<class T, class Compare, class Allocator, class Policy> injective_set< T, Com-pare, Allocator, Policy >::range_type::iterator stm::smartptr::injective_set< T, Compare, Allocator,Policy >::begin () const [inline]
Returns the begin iterator of the repository range wrapped by this injective_set.
Definition at line 2560 of file smartptrxaids.hpp.
References stm::smartptr::injective_set< T, Compare, Allocator, Policy >::range().
12.44.4.7 template<class T, class Compare, class Allocator, class Policy> injective_set< T, Com-pare, Allocator, Policy >::range_type::iterator stm::smartptr::injective_set< T, Compare, Allocator,Policy >::end () const [inline]
Returns the end iterator of the repository range wrapped by this injective_set.
Definition at line 2569 of file smartptrxaids.hpp.
References stm::smartptr::injective_set< T, Compare, Allocator, Policy >::range().
12.44.4.8 template<class T, class Compare, class Allocator, class Policy> injective_set< T, Com-pare, Allocator, Policy >::range_type::size_type stm::smartptr::injective_set< T, Compare, Alloca-tor, Policy >::size () const [inline]
Returns the number of element containd in this injective_set which is the same as that of the repositoryrange wrapped by this injective_set.
Definition at line 2578 of file smartptrxaids.hpp.
References stm::smartptr::injective_set< T, Compare, Allocator, Policy >::range().
Referenced by stm::smartptr::injective_set< T, Compare, Allocator, Policy >::insert().
12.44.4.9 template<class T, class Compare, class Allocator, class Policy> boolstm::smartptr::injective_set< T, Compare, Allocator, Policy >::empty () const [inline]
Returns true, if this injective_set is empty, else false.
Definition at line 2586 of file smartptrxaids.hpp.
References stm::smartptr::injective_set< T, Compare, Allocator, Policy >::range().
12.44.5 Member Data Documentation
12.44.5.1 template<class T, class Compare = std::less<T>, class Allocator = std::allocator<T>,class Policy = stm::smartptr::policy<stm::smartptr::Multirange>> injective_ptr_type::rangeid_-type stm::smartptr::injective_set< T, Compare, Allocator, Policy >::rangeid_ [private]
Implementation.
Definition at line 681 of file smartptraids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.45 stm::smartptr::injective_set< T, Compare, Allocator, Policy >::accessor Class Reference242
Referenced by stm::smartptr::injective_set< T, Compare, Allocator, Policy >::find(),stm::smartptr::injective_set< T, Compare, Allocator, Policy >::insert(), stm::smartptr::injective_-set< T, Compare, Allocator, Policy >::nil(), stm::smartptr::injective_set< T, Compare, Allocator, Policy>::range(), and stm::smartptr::injective_set< T, Compare, Allocator, Policy >::∼injective_set().
The documentation for this class was generated from the following files:
• smartptraids.hpp• smartptrxaids.hpp
12.45 stm::smartptr::injective_set< T, Compare, Allocator, Policy >::accessorClass Reference
#include <smartptraids.hpp>
Inheritance diagram for stm::smartptr::injective_set< T, Compare, Allocator, Policy >::accessor:
stm::smartptr::injective_set< T, Compare, Allocator, Policy >::accessorinjective_ptr_typestm::smartptr::local::mapped_ptr< T, Compare, Allocator, Policy::surjective::value, Policy::multirange::value >stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange >< T, Compare, Allocator, Policy::surjective::value, Policy::multirange::value >
Collaboration diagram for stm::smartptr::injective_set< T, Compare, Allocator, Policy >::accessor:
stm::smartptr::injective_set< T, Compare, Allocator, Policy >::accessorinjective_ptr_typestm::smartptr::local::mapped_ptr< T, Compare, Allocator, Policy::surjective::value, Policy::multirange::value >T
ptr_
stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange >
ptr_ < T, Compare, Allocator, Policy::surjective::value, Policy::multirange::value >
12.45.1 Detailed Description
template<class T, class Compare = std::less<T>, class Allocator = std::allocator<T>, class Policy =stm::smartptr::policy<stm::smartptr::Multirange>> class stm::smartptr::injective_set< T, Com-pare, Allocator, Policy >::accessor
Subclass of injective_ptr<T, Compare, Allocator, MakeMultirange<Policy> > representing an elementof this injective_set object.
Such an element stays contained in the injective_set during the whole lifetime of that injective_set, if thepolicy property surjective is false, else as long as at least one accessor object points to it. Non-emptyaccessor objects can be only acquired by the constructors, by the assignment operator or by means ofinjective_set methods.
Definition at line 603 of file smartptraids.hpp.
Public Types
• typedef injective_ptr_type baseBase class.
Public Member Functions
• accessor ()The default constructor yields the empty accessor representing no element.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.45 stm::smartptr::injective_set< T, Compare, Allocator, Policy >::accessor Class Reference243
• accessor (const accessor &other)Copy constructor.
• accessor (const base &ptr)Constructs an accessor for the element pointed to by ptr.
• accessor (const typename range_type::iterator &it)Constructs an accessor for the element pointed to by the injective_set iterator it.
• accessor & operator= (const accessor &other)Assignment operator.
12.45.2 Member Typedef Documentation
12.45.2.1 template<class T, class Compare = std::less<T>, class Allocator = std::allocator<T>,class Policy = stm::smartptr::policy<stm::smartptr::Multirange>> typedef injective_ptr_typestm::smartptr::injective_set< T, Compare, Allocator, Policy >::accessor::base
Base class.
Definition at line 608 of file smartptraids.hpp.
12.45.3 Constructor & Destructor Documentation
12.45.3.1 template<class T, class Compare, class Allocator, class Policy>stm::smartptr::injective_set< T, Compare, Allocator, Policy >::accessor::accessor () [inline]
The default constructor yields the empty accessor representing no element.
Definition at line 2412 of file smartptrxaids.hpp.
12.45.3.2 template<class T, class Compare, class Allocator, class Policy>stm::smartptr::injective_set< T, Compare, Allocator, Policy >::accessor::accessor (const accessor& other) [inline]
Copy constructor.
Definition at line 2419 of file smartptrxaids.hpp.
12.45.3.3 template<class T, class Compare, class Allocator, class Policy>stm::smartptr::injective_set< T, Compare, Allocator, Policy >::accessor::accessor (const base& ptr) [inline]
Constructs an accessor for the element pointed to by ptr.
Definition at line 2428 of file smartptrxaids.hpp.
12.45.3.4 template<class T, class Compare, class Allocator, class Policy>stm::smartptr::injective_set< T, Compare, Allocator, Policy >::accessor::accessor (const type-name range_type::iterator & it) [inline]
Constructs an accessor for the element pointed to by the injective_set iterator it.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.46 stm::inputrange< FileRangeT, bufSize > Class Template Reference 244
Definition at line 2437 of file smartptrxaids.hpp.
12.45.4 Member Function Documentation
12.45.4.1 template<class T, class Compare, class Allocator, class Policy> injective_set< T, Com-pare, Allocator, Policy >::accessor & stm::smartptr::injective_set< T, Compare, Allocator, Policy>::accessor::operator= (const accessor & other) [inline]
Assignment operator.
Unless one of the accessors is empty, assignment is allowed only between accessors of the same injective_-set object.
Definition at line 2448 of file smartptrxaids.hpp.
References stm::smartptr::injective_ptr< T, Compare, Allocator, Policy >::operator=(),stm::smartptr::injective_ptr< T, Compare, Allocator, Policy >::rangeid(), and StmDebugAidsVerify.
The documentation for this class was generated from the following files:
• smartptraids.hpp• smartptrxaids.hpp
12.46 stm::inputrange< FileRangeT, bufSize > Class Template Reference
#include <filesysaids.hpp>
Inheritance diagram for stm::inputrange< FileRangeT, bufSize >:
stm::inputrange< FileRangeT, bufSize >
stm::inputrange< std::set< InputFileT >, bufSize >
< std::set< InputFileT >, bufSize >
stm::local::xinputrange< FileRangeT, bufSize >
stm::inputseq< InputFileT, bufSize >
Collaboration diagram for stm::inputrange< FileRangeT, bufSize >:
stm::inputrange< FileRangeT, bufSize >
stm::local::xinputrange< FileRangeT, bufSize >
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.46 stm::inputrange< FileRangeT, bufSize > Class Template Reference 245
12.46.1 Detailed Description
template<class FileRangeT = std::list<readablefile<pstring> >, size_t bufSize = 128 ∗ 1024> classstm::inputrange< FileRangeT, bufSize >
Class template representing a range of input files.
It provides an input buffer of bufSize bytes acting as sliding window over the concatenated in-put. This buffer consists of three parts, the processed range [buffer,bufPtr()), the unprocessed range[bufPtr(),bufEnd()) and the unassined range [bufEnd(),buffer+bufSize). The byte pointer bufPtr() addressesthe current position within the buffer corresponding to the byte with the offset offset() in the concatenationof all input files. The method file() designates the current input file, i.e that input file containing the byte atoffset offset() in the concatenation af all input files.
After construction the processed and unprocessed ranges have length 0. FileRangeT shall be a model ofForward Range and its value type shall represent a file accessible for reading, be convertable to std::stringthus representing the file’s name and have a method fileSize() yielding the file’s byte size.
Definition at line 661 of file filesysaids.hpp.
Public Types
• enum { BufSize = bufSize }Maximal Length of the input buffer.
• typedef FileRangeT filerange_typeType of input file range.
• typedef filerange_type::value_type inputfile_typeType of input files.
Public Member Functions
• inputrange (const filerange_type &inputFiles=filerange_type())Construct an inputrange object for the input file range inputFiles having a buffer with processed and unpro-cessed ranges of length 0.
• virtual ∼inputrange ()The destructor deletes the input buffer.
• void clear ()Clears this inputrange.
• void setInput (const filerange_type &inputFiles)Sets new input files for this inputrange.
• bool read () throw (std::runtime_error)Read bytes from the input files into the buffer.
• bool isEnd () constReturn true, if all input bytes have been read.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.46 stm::inputrange< FileRangeT, bufSize > Class Template Reference 246
• bool isError () constReturn true, if an error did occur.
• const inputfile_type & file () constReturn current input file.
• const inputfile_type & file (long long offs) constReturn the input file containing the byte at offset offs within the concatenation of all input files.
• ptrdiff_t fileOffset (long long offs) constReturn the file offset of the byte at offset offs within the concatenation of all input files in the file containingthat byte.
• long long offset () constReturn the byte offset within the concatenation of all input files corresponding to the current position withinthe input buffer.
• long long offset (const byte ∗ptr) constReturn the byte offset within the concatenation of all input files corresponding to the byte address ptr withinthe input buffer.
• long long totalSize () constReturn the total byte length of the concatenation of all input files.
• long long notReadSize () constReturn the not read byte length of the concatenation of all input files.
• void setBufStep (ptrdiff_t step)Set the number of bytes to increase the processed buffer range and the byte offset within the concatenationof all input files.
• void bufSetup ()Setup the input buffer by setting the begin of the unprocessed range of the buffer to its begin, thus emptyingthe processed range.
• const byte ∗ bufPtr () constReturn the start address of the unprocessed buffer range.
• const byte ∗ bufEnd () constReturn the past-the-end address of the unprocessed buffer range.
• bool bufExhausted () constReturn true, if the unprocessed buffer range is empty.
• bool bufFull () constReturn true, if the unprocessed buffer range occupies the whole buffer.
• void bufAdvance ()Decrease the unprocessed buffer range, increase the processed buffer range and the byte offset within theconcatenation of all input files as configured by setBufStep().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.46 stm::inputrange< FileRangeT, bufSize > Class Template Reference 247
• virtual void reportOpen () constCalled when a new input file is opened.
• virtual void reportClose () constCalled when the current input file is closed.
• virtual void reportError () constCalled when a read error for the current input file occurs.
Private Types
• typedef local::xinputrange< FileRangeT, bufSize > implImplementation.
12.46.2 Member Typedef Documentation
12.46.2.1 template<class FileRangeT = std::list<readablefile<pstring> >, size_t bufSize = 128∗ 1024> typedef local::xinputrange<FileRangeT, bufSize> stm::inputrange< FileRangeT, bufSize>::impl [private]
Implementation.
Reimplemented from stm::local::xinputrange< FileRangeT, bufSize >.
Definition at line 665 of file filesysaids.hpp.
12.46.2.2 template<class FileRangeT = std::list<readablefile<pstring> >, size_t bufSize = 128 ∗1024> typedef FileRangeT stm::inputrange< FileRangeT, bufSize >::filerange_type
Type of input file range.
Reimplemented from stm::local::xinputrange< FileRangeT, bufSize >.
Definition at line 672 of file filesysaids.hpp.
12.46.2.3 template<class FileRangeT = std::list<readablefile<pstring> >, size_t bufSize = 128 ∗1024> typedef filerange_type::value_type stm::inputrange< FileRangeT, bufSize >::inputfile_type
Type of input files.
Reimplemented from stm::local::xinputrange< FileRangeT, bufSize >.
Definition at line 675 of file filesysaids.hpp.
12.46.3 Member Enumeration Documentation
12.46.3.1 template<class FileRangeT = std::list<readablefile<pstring> >, size_t bufSize = 128 ∗1024> anonymous enum
Maximal Length of the input buffer.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.46 stm::inputrange< FileRangeT, bufSize > Class Template Reference 248
Enumerator:
BufSize
Definition at line 669 of file filesysaids.hpp.
12.46.4 Constructor & Destructor Documentation
12.46.4.1 template<class FileRangeT, size_t bufSize> stm::inputrange< FileRangeT, bufSize>::inputrange (const filerange_type & inputFiles = filerange_type ()) [inline, explicit]
Construct an inputrange object for the input file range inputFiles having a buffer with processed and un-processed ranges of length 0.
Definition at line 1766 of file filesysxaids.hpp.
12.46.4.2 template<class FileRangeT, size_t bufSize> stm::inputrange< FileRangeT, bufSize>::∼inputrange () [inline, virtual]
The destructor deletes the input buffer.
Definition at line 1774 of file filesysxaids.hpp.
12.46.5 Member Function Documentation
12.46.5.1 template<class FileRangeT, size_t bufSize> void stm::inputrange< FileRangeT, bufSize>::clear () [inline]
Clears this inputrange.
Reimplemented from stm::local::xinputrange< FileRangeT, bufSize >.
Definition at line 1778 of file filesysxaids.hpp.
References stm::local::xinputrange< FileRangeT, bufSize >::clear(), stm::local::xinputrange< Fil-eRangeT, bufSize >::fp_, and stm::inputrange< FileRangeT, bufSize >::reportClose().
Referenced by stm::inputrange< FileRangeT, bufSize >::setInput().
12.46.5.2 template<class FileRangeT, size_t bufSize> void stm::inputrange< FileRangeT, bufSize>::setInput (const filerange_type & inputFiles) [inline]
Sets new input files for this inputrange.
Reimplemented from stm::local::xinputrange< FileRangeT, bufSize >.
Definition at line 1793 of file filesysxaids.hpp.
References stm::inputrange< FileRangeT, bufSize >::clear(), and stm::local::xinputrange< FileRangeT,bufSize >::setInput().
12.46.5.3 template<class FileRangeT, size_t bufSize> bool stm::inputrange< FileRangeT, bufSize>::read () throw (std::runtime_error) [inline]
Read bytes from the input files into the buffer.
At first the unprocessed buffer range is moved to the beginning of the buffer, thus emptying the processedbuffer range. Then the unprocessed buffer range is enlarged by appending as many bytes as possible from
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.46 stm::inputrange< FileRangeT, bufSize > Class Template Reference 249
the input files. The method returns true on success. If it returns false, either an error has occurred inwhich case isError() will return true or the unprocessed buffer range occupies the whole buffer, in whichcase bufFull() will return true, or all input files have been read in which case isEnd() will return true. Themethod may throw std::runtime_error, if a file handling function fails.
Definition at line 1804 of file filesysxaids.hpp.
References stm::local::xinputrange< FileRangeT, bufSize >::bufEnd_, stm::local::xinputrange<FileRangeT, bufSize >::buffer_, stm::inputrange< FileRangeT, bufSize >::bufFull(),stm::local::xinputrange< FileRangeT, bufSize >::bufPtr_, stm::inputrange< FileRangeT, bufSize>::BufSize, stm::local::xinputrange< FileRangeT, bufSize >::bufStep_, stm::local::xinputrange<FileRangeT, bufSize >::error_, stm::local::xinputrange< FileRangeT, bufSize >::fileIt_-, stm::local::xinputrange< FileRangeT, bufSize >::fp_, stm::inputrange< FileRangeT, bufSize >::isEnd(),stm::local::xinputrange< FileRangeT, bufSize >::notReadSize_, stm::inputrange< FileRangeT, bufSize>::reportClose(), stm::inputrange< FileRangeT, bufSize >::reportError(), stm::inputrange< FileRangeT,bufSize >::reportOpen(), and StmDebugAidsVerify.
12.46.5.4 template<class FileRangeT, size_t bufSize> bool stm::inputrange< FileRangeT, bufSize>::isEnd () const [inline]
Return true, if all input bytes have been read.
Definition at line 1861 of file filesysxaids.hpp.
References stm::local::xinputrange< FileRangeT, bufSize >::fileIt_.
Referenced by stm::inputrange< FileRangeT, bufSize >::read().
12.46.5.5 template<class FileRangeT, size_t bufSize> bool stm::inputrange< FileRangeT, bufSize>::isError () const [inline]
Return true, if an error did occur.
Definition at line 1869 of file filesysxaids.hpp.
References stm::local::xinputrange< FileRangeT, bufSize >::error_.
12.46.5.6 template<class FileRangeT, size_t bufSize> const inputrange< FileRangeT, bufSize>::inputfile_type & stm::inputrange< FileRangeT, bufSize >::file () const [inline]
Return current input file.
Definition at line 1878 of file filesysxaids.hpp.
References stm::local::xinputrange< FileRangeT, bufSize >::offset_, and StmDebugAidsVerify.
12.46.5.7 template<class FileRangeT, size_t bufSize> const inputrange< FileRangeT, bufSize>::inputfile_type & stm::inputrange< FileRangeT, bufSize >::file (long long offs) const [inline]
Return the input file containing the byte at offset offs within the concatenation of all input files.
Definition at line 1889 of file filesysxaids.hpp.
References StmDebugAidsVerify.
12.46.5.8 template<class FileRangeT, size_t bufSize> ptrdiff_t stm::inputrange< FileRangeT, buf-Size >::fileOffset (long long offs) const [inline]
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.46 stm::inputrange< FileRangeT, bufSize > Class Template Reference 250
Return the file offset of the byte at offset offs within the concatenation of all input files in the file containingthat byte.
Definition at line 1900 of file filesysxaids.hpp.
References StmDebugAidsVerify.
12.46.5.9 template<class FileRangeT, size_t bufSize> long long stm::inputrange< FileRangeT,bufSize >::offset () const [inline]
Return the byte offset within the concatenation of all input files corresponding to the current position withinthe input buffer.
Definition at line 1915 of file filesysxaids.hpp.
References stm::local::xinputrange< FileRangeT, bufSize >::offset_.
12.46.5.10 template<class FileRangeT, size_t bufSize> long long stm::inputrange< FileRangeT,bufSize >::offset (const byte ∗ ptr) const [inline]
Return the byte offset within the concatenation of all input files corresponding to the byte address ptr withinthe input buffer.
Definition at line 1922 of file filesysxaids.hpp.
References stm::local::xinputrange< FileRangeT, bufSize >::bufEnd_, stm::local::xinputrange< Fil-eRangeT, bufSize >::bufPtr_, and stm::local::xinputrange< FileRangeT, bufSize >::offset_.
12.46.5.11 template<class FileRangeT, size_t bufSize> long long stm::inputrange< FileRangeT,bufSize >::totalSize () const [inline]
Return the total byte length of the concatenation of all input files.
Definition at line 1933 of file filesysxaids.hpp.
References stm::local::xinputrange< FileRangeT, bufSize >::totalSize_.
12.46.5.12 template<class FileRangeT, size_t bufSize> long long stm::inputrange< FileRangeT,bufSize >::notReadSize () const [inline]
Return the not read byte length of the concatenation of all input files.
Definition at line 1940 of file filesysxaids.hpp.
References stm::local::xinputrange< FileRangeT, bufSize >::notReadSize_.
12.46.5.13 template<class FileRangeT, size_t bufSize> void stm::inputrange< FileRangeT, bufSize>::setBufStep (ptrdiff_t step) [inline]
Set the number of bytes to increase the processed buffer range and the byte offset within the concatenationof all input files.
Definition at line 1947 of file filesysxaids.hpp.
References stm::local::xinputrange< FileRangeT, bufSize >::bufStep_.
12.46.5.14 template<class FileRangeT, size_t bufSize> void stm::inputrange< FileRangeT, bufSize>::bufSetup () [inline]
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.46 stm::inputrange< FileRangeT, bufSize > Class Template Reference 251
Setup the input buffer by setting the begin of the unprocessed range of the buffer to its begin, thus emptyingthe processed range.
As this method’s operation is performed by the constructor and by a successful read, it is rarely needed tobe called by the user.
Definition at line 1955 of file filesysxaids.hpp.
References stm::local::xinputrange< FileRangeT, bufSize >::buffer_, and stm::local::xinputrange< Fil-eRangeT, bufSize >::bufPtr_.
12.46.5.15 template<class FileRangeT, size_t bufSize> const byte ∗ stm::inputrange< FileRangeT,bufSize >::bufPtr () const [inline]
Return the start address of the unprocessed buffer range.
Definition at line 1963 of file filesysxaids.hpp.
References stm::local::xinputrange< FileRangeT, bufSize >::bufPtr_.
12.46.5.16 template<class FileRangeT, size_t bufSize> const byte ∗ stm::inputrange< FileRangeT,bufSize >::bufEnd () const [inline]
Return the past-the-end address of the unprocessed buffer range.
Definition at line 1970 of file filesysxaids.hpp.
References stm::local::xinputrange< FileRangeT, bufSize >::bufEnd_.
12.46.5.17 template<class FileRangeT, size_t bufSize> bool stm::inputrange< FileRangeT, bufSize>::bufExhausted () const [inline]
Return true, if the unprocessed buffer range is empty.
Definition at line 1977 of file filesysxaids.hpp.
References stm::local::xinputrange< FileRangeT, bufSize >::bufEnd_, and stm::local::xinputrange< Fil-eRangeT, bufSize >::bufPtr_.
12.46.5.18 template<class FileRangeT, size_t bufSize> bool stm::inputrange< FileRangeT, bufSize>::bufFull () const [inline]
Return true, if the unprocessed buffer range occupies the whole buffer.
Definition at line 1984 of file filesysxaids.hpp.
References stm::local::xinputrange< FileRangeT, bufSize >::bufEnd_, stm::local::xinputrange< Fil-eRangeT, bufSize >::buffer_, and stm::local::xinputrange< FileRangeT, bufSize >::bufPtr_.
Referenced by stm::inputrange< FileRangeT, bufSize >::read().
12.46.5.19 template<class FileRangeT, size_t bufSize> void stm::inputrange< FileRangeT, bufSize>::bufAdvance () [inline]
Decrease the unprocessed buffer range, increase the processed buffer range and the byte offset within theconcatenation of all input files as configured by setBufStep().
Definition at line 1991 of file filesysxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.47 stm::inputrange_iterator< BufRangeT, ContextT > Class Template Reference 252
References stm::local::xinputrange< FileRangeT, bufSize >::bufEnd_, stm::local::xinputrange<FileRangeT, bufSize >::bufPtr_, stm::local::xinputrange< FileRangeT, bufSize >::bufStep_,stm::local::xinputrange< FileRangeT, bufSize >::offset_, and StmDebugAidsVerify.
12.46.5.20 template<class FileRangeT, size_t bufSize> void stm::inputrange< FileRangeT, bufSize>::reportOpen () const [inline, virtual]
Called when a new input file is opened.
The default implementation does nothing.
Definition at line 2002 of file filesysxaids.hpp.
Referenced by stm::inputrange< FileRangeT, bufSize >::read().
12.46.5.21 template<class FileRangeT, size_t bufSize> void stm::inputrange< FileRangeT, bufSize>::reportClose () const [inline, virtual]
Called when the current input file is closed.
The default implementation does nothing.
Definition at line 2009 of file filesysxaids.hpp.
Referenced by stm::inputrange< FileRangeT, bufSize >::clear(), and stm::inputrange< FileRangeT, buf-Size >::read().
12.46.5.22 template<class FileRangeT, size_t bufSize> void stm::inputrange< FileRangeT, bufSize>::reportError () const [inline, virtual]
Called when a read error for the current input file occurs.
The default implementation throws std::runtime_error.
Definition at line 2016 of file filesysxaids.hpp.
References stm::local::xinputrange< FileRangeT, bufSize >::fileIt_.
Referenced by stm::inputrange< FileRangeT, bufSize >::read().
The documentation for this class was generated from the following files:
• filesysaids.hpp• filesysxaids.hpp
12.47 stm::inputrange_iterator< BufRangeT, ContextT > Class Template Refer-ence
#include <filesysaids.hpp>
Inheritance diagram for stm::inputrange_iterator< BufRangeT, ContextT >:
stm::inputrange_iterator< BufRangeT, ContextT >
stm::local::xinputrange_iterator< BufRangeT, ContextT >
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.47 stm::inputrange_iterator< BufRangeT, ContextT > Class Template Reference 253
Collaboration diagram for stm::inputrange_iterator< BufRangeT, ContextT >:
stm::inputrange_iterator< BufRangeT, ContextT >
stm::local::xinputrange_iterator< BufRangeT, ContextT >
12.47.1 Detailed Description
template<class BufRangeT, class ContextT> class stm::inputrange_iterator< BufRangeT, ContextT>
Input iterator class template reading successive byte ranges from the input range of the ContextT object forwhich it was constructed.
After it is constructed, and everytime ++ is used, the iterator reads and stores a value of BufRangeT whichshall be an iterator range class directly or indirectly derived from byte_iterator_range providing a construc-tor with signature
BufRangeT (const byte *first, const byte *last, ContextT &context).
This constructor is used to construct the BufRangeT objects non-end-of-range inputrange_iterator objectsrefer to. Its arguments first and last specify the base object boost::iterator_range<const byte ∗> range withwhich and the argument context the input range is accessible.
ContextT shall have a type member inputrange_type designating a specialization of the class templateinputrange or a directly or indirectly derived class therefrom and have a member funtion
inputrange_type &input ()
returning a reference to the ContextT object’s input range.
If the end of the ContextT object’s input range is reached, the iterator becomes equal to the end-of-rangeiterator value. The default constructor always constructs an end-of-range inputrange_iterator object, whichis the only legitimate iterator to be used for the end condition. The result of operator∗ on an end-of-rangeis not defined. For any other iterator value a const BufRangeT& is returned, referring to a subrange atthe beginning of the unprocessed range of input buffer of the ContexT object’s input range. The result ofoperator-> on an end-of-range is not defined. For any other iterator value a const BufRangeT∗ is returned.It is impossible to store things into inputrange_iterator objects.
The main peculiarity of inputrange_iterator is the fact that ++ operators are not equality preserving, that is,i == j does not guarantee at all that ++i == ++j. Every time ++ is used a new BufRangeT object is read.
The practical consequence of this fact is that inputrange_iterator objects can be used only for one-pass al-gorithms, which actually makes perfect sense, since for multi-pass algorithms it is always more appropriateto use in memory data structures.
Two end-of-range iterators are always equal. An end-of-range iterator is not equal to a non-end-of-rangeiterator. Two non-end-of-range iterators are equal when they are constructed from the same ContextTobject.
Definition at line 862 of file filesysaids.hpp.
Public Types
• typedef BufRangeT bufrange_type
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.47 stm::inputrange_iterator< BufRangeT, ContextT > Class Template Reference 254
Template type parameter BufRangeT.
• typedef ContextT context_typeTemplate parameter ContextT.
• typedef context_type::inputrange_type inputrange_typeInput range type.
Public Member Functions
• inputrange_iterator ()Default constructor yielding the end-of-range object.
• inputrange_iterator (context_type &context)Constructor yielding the first inputrange_iterator object for context.
• inputrange_iterator (const inputrange_iterator< BufRangeT, ContextT > &that)Copy constructor.
• ∼inputrange_iterator ()Destructor.
• const bufrange_type & operator ∗ () constDereference operator.
• const bufrange_type ∗ operator→ () constMember access operator.
• inputrange_iterator< BufRangeT, ContextT > & operator++ ()Preincrement operator.
• inputrange_iterator< BufRangeT, ContextT > operator++ (int)Postincrement operator.
• bool equal (const inputrange_iterator< BufRangeT, ContextT > &that) constEquality comparison operator.
Private Types
• typedef local::xinputrange_iterator< BufRangeT, ContextT > implImplementation.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.47 stm::inputrange_iterator< BufRangeT, ContextT > Class Template Reference 255
12.47.2 Member Typedef Documentation
12.47.2.1 template<class BufRangeT, class ContextT> typedef local::xinputrange_-iterator<BufRangeT, ContextT> stm::inputrange_iterator< BufRangeT, ContextT >::impl[private]
Implementation.
Reimplemented from stm::local::xinputrange_iterator< BufRangeT, ContextT >.
Definition at line 874 of file filesysaids.hpp.
12.47.2.2 template<class BufRangeT, class ContextT> typedef BufRangeT stm::inputrange_-iterator< BufRangeT, ContextT >::bufrange_type
Template type parameter BufRangeT.
Reimplemented from stm::local::xinputrange_iterator< BufRangeT, ContextT >.
Definition at line 878 of file filesysaids.hpp.
12.47.2.3 template<class BufRangeT, class ContextT> typedef ContextT stm::inputrange_-iterator< BufRangeT, ContextT >::context_type
Template parameter ContextT.
Reimplemented from stm::local::xinputrange_iterator< BufRangeT, ContextT >.
Definition at line 881 of file filesysaids.hpp.
12.47.2.4 template<class BufRangeT, class ContextT> typedef context_type::inputrange_typestm::inputrange_iterator< BufRangeT, ContextT >::inputrange_type
Input range type.
Reimplemented from stm::local::xinputrange_iterator< BufRangeT, ContextT >.
Definition at line 884 of file filesysaids.hpp.
12.47.3 Constructor & Destructor Documentation
12.47.3.1 template<class BufRangeT, class ContextT> stm::inputrange_iterator< BufRangeT,ContextT >::inputrange_iterator () [inline]
Default constructor yielding the end-of-range object.
The only operations that can be done with such an object are assignment, comparison and destruction.
Definition at line 2046 of file filesysxaids.hpp.
12.47.3.2 template<class BufRangeT, class ContextT> stm::inputrange_iterator< BufRangeT,ContextT >::inputrange_iterator (context_type & context) [inline]
Constructor yielding the first inputrange_iterator object for context.
Definition at line 2051 of file filesysxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.47 stm::inputrange_iterator< BufRangeT, ContextT > Class Template Reference 256
12.47.3.3 template<class BufRangeT, class ContextT> stm::inputrange_iterator< BufRangeT,ContextT >::inputrange_iterator (const inputrange_iterator< BufRangeT, ContextT > & that)[inline]
Copy constructor.
Definition at line 2060 of file filesysxaids.hpp.
12.47.3.4 template<class BufRangeT, class ContextT> stm::inputrange_iterator< BufRangeT,ContextT >::∼inputrange_iterator () [inline]
Destructor.
Definition at line 2068 of file filesysxaids.hpp.
12.47.4 Member Function Documentation
12.47.4.1 template<class BufRangeT, class ContextT> const inputrange_iterator< BufRangeT,ContextT >::bufrange_type & stm::inputrange_iterator< BufRangeT, ContextT >::operator ∗ ()const [inline]
Dereference operator.
Definition at line 2074 of file filesysxaids.hpp.
References stm::local::xinputrange_iterator< BufRangeT, ContextT >::bufrange().
12.47.4.2 template<class BufRangeT, class ContextT> const inputrange_iterator< BufRangeT,ContextT >::bufrange_type ∗ stm::inputrange_iterator< BufRangeT, ContextT >::operator → ()const [inline]
Member access operator.
Definition at line 2083 of file filesysxaids.hpp.
References stm::local::xinputrange_iterator< BufRangeT, ContextT >::bufrange().
12.47.4.3 template<class BufRangeT, class ContextT> inputrange_iterator< BufRangeT, Con-textT > & stm::inputrange_iterator< BufRangeT, ContextT >::operator++ () [inline]
Preincrement operator.
Definition at line 2091 of file filesysxaids.hpp.
References stm::local::xinputrange_iterator< BufRangeT, ContextT >::scan().
12.47.4.4 template<class BufRangeT, class ContextT> inputrange_iterator< BufRangeT, Con-textT > stm::inputrange_iterator< BufRangeT, ContextT >::operator++ (int) [inline]
Postincrement operator.
Definition at line 2100 of file filesysxaids.hpp.
References stm::local::xinputrange_iterator< BufRangeT, ContextT >::scan().
12.47.4.5 template<class BufRangeT, class ContextT> bool stm::inputrange_iterator<BufRangeT, ContextT >::equal (const inputrange_iterator< BufRangeT, ContextT > & that)const [inline]
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.48 stm::inputseq< InputFileT, bufSize > Class Template Reference 257
Equality comparison operator.
Definition at line 2110 of file filesysxaids.hpp.
References stm::local::xinputrange_iterator< BufRangeT, ContextT >::context_.
The documentation for this class was generated from the following files:
• filesysaids.hpp• filesysxaids.hpp
12.48 stm::inputseq< InputFileT, bufSize > Class Template Reference
#include <filesysaids.hpp>
Inheritance diagram for stm::inputseq< InputFileT, bufSize >:
stm::inputseq< InputFileT, bufSize >stm::inputrange< std::set< InputFileT >, bufSize >
stm::local::xinputrange< std::set< InputFileT >, bufSize >
std::map<long long, std::set< InputFileT > ::const_iterator>
stm::local::xinputrange< FileRangeT, bufSize >
< std::set< InputFileT >, bufSize >
stm::inputrange< FileRangeT, bufSize >< std::set< InputFileT >, bufSize >
Collaboration diagram for stm::inputseq< InputFileT, bufSize >:
stm::inputseq< InputFileT, bufSize >stm::inputrange< std::set< InputFileT >, bufSize >
stm::local::xinputrange< std::set< InputFileT >, bufSize >
std::map<long long, std::set< InputFileT > ::const_iterator>
stm::local::xinputrange< FileRangeT, bufSize >
< std::set< InputFileT >, bufSize >
stm::inputrange< FileRangeT, bufSize >< std::set< InputFileT >, bufSize >
12.48.1 Detailed Description
template<class InputFileT = sizedfile, size_t bufSize = 128 ∗ 1024> class stm::inputseq< InputFileT,bufSize >
Deprecated
For historical reasons. Do not use for new code.
Definition at line 779 of file filesysaids.hpp.
Public Types
• typedef inputrange< std::set< InputFileT >, bufSize > base• typedef base::inputfile_type InputFile
Type of input files.
• typedef std::set< InputFile > InputFileSetType of input file set.
Public Member Functions
• inputseq (const InputFileSet &inputFiles)Construct an inputseq object for the input file set inputFiles having a buffer with processed and unprocessedranges of length 0.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.49 stm::integral_range< IntegralT, minVal, maxVal > Class Template Reference 258
12.48.2 Member Typedef Documentation
12.48.2.1 template<class InputFileT = sizedfile, size_t bufSize = 128 ∗ 1024> typedefinputrange<std::set<InputFileT>, bufSize> stm::inputseq< InputFileT, bufSize >::base
Reimplemented from stm::local::xinputrange< std::set< InputFileT >, bufSize >.
Definition at line 783 of file filesysaids.hpp.
12.48.2.2 template<class InputFileT = sizedfile, size_t bufSize = 128 ∗ 1024> typedefbase::inputfile_type stm::inputseq< InputFileT, bufSize >::InputFile
Type of input files.
Definition at line 786 of file filesysaids.hpp.
12.48.2.3 template<class InputFileT = sizedfile, size_t bufSize = 128 ∗ 1024> typedefstd::set<InputFile> stm::inputseq< InputFileT, bufSize >::InputFileSet
Type of input file set.
Definition at line 789 of file filesysaids.hpp.
12.48.3 Constructor & Destructor Documentation
12.48.3.1 template<class InputFileT, size_t bufSize> stm::inputseq< InputFileT, bufSize>::inputseq (const InputFileSet & inputFiles) [inline, explicit]
Construct an inputseq object for the input file set inputFiles having a buffer with processed and unprocessedranges of length 0.
Definition at line 2034 of file filesysxaids.hpp.
The documentation for this class was generated from the following files:
• filesysaids.hpp• filesysxaids.hpp
12.49 stm::integral_range< IntegralT, minVal, maxVal > Class Template Refer-ence
#include <divaids.hpp>
Inheritance diagram for stm::integral_range< IntegralT, minVal, maxVal >:
stm::integral_range< IntegralT, minVal, maxVal >
stm::local::xIntegral_range< IntegralT, minVal, maxVal >
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.49 stm::integral_range< IntegralT, minVal, maxVal > Class Template Reference 259
Collaboration diagram for stm::integral_range< IntegralT, minVal, maxVal >:
stm::integral_range< IntegralT, minVal, maxVal >
stm::local::xIntegral_range< IntegralT, minVal, maxVal >
12.49.1 Detailed Description
template<typename IntegralT, IntegralT minVal = boost::integer_traits<IntegralT>::const_min,IntegralT maxVal = boost::integer_traits<IntegralT>::const_max> class stm::integral_range< In-tegralT, minVal, maxVal >
Class template representing a range of integral objects of type IntegralT constrained by the minimal andmaximal values minVal and maxVal.
As the implementation of integral_range uses regular expressions (see Abstract Data Type StmRe), forits error control the macro StmRectrlTry can be used.
Examples:
divaidstest.cpp.
Definition at line 476 of file divaids.hpp.
Public Types
• typedef IntegralT integral_typeTemplate type argument IntegralT.
• typedef integral_range< IntegralT, minVal, maxVal > range_typeThis class template.
Public Member Functions
• integral_range (bool fullRange=false)Constructs an empty integral_range object, if fullRange is false (default), else a maximal integral_rangeobject.
• integral_range (integral_type number)Constructs an integral_range object containing exactly number.
• integral_range (integral_type fromNumber, integral_type toNumber)Constructs an integral_range object containing the half open integral_type range [fromNumber, toNumber).
• range_type & assign (const std::string &valSpec, size_t fmtFlags=0)Assigns the integral range specified by valSpec to this integral_range object and returns a reference to it.
• range_type & assign (const char ∗valSpec, size_t fmtFlags=0)
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.49 stm::integral_range< IntegralT, minVal, maxVal > Class Template Reference 260
Assigns the integral range specified by valSpec to this integral_range object and returns a reference to it.
• void swap (range_type &other) throw ()Non-throwing spap member function.
• integral_type from () constReturns the first number contained in the range, if the range is not empty, else MaxVal.
• integral_type last () constReturns the greatest number contained in the integral range, if the range is not empty, else MaxVal-1.
• integral_type to () constReturns one plus the greatest number contained in the integral range, if the range is not empty and itsupperlimit is less than MaxVal, else MaxVal and MinVal, respectively.
• size_t size () constReturns the number of numbers contained in the range.
• bool empty () constReturns true, if the range is empty.
• bool full () constReturns true, if the range is maximal.
• range_type operator & (integral_type number) constReturn the empty integral range, if number is not contained in this range, else an integral range consistingof number.
• range_type operator & (const range_type &other) constReturn an integral range consisting of the numbers contained in both this range and in the other range.
• range_type & operator &= (const range_type &other)Remove all numbers not contained in the other range from this range and return a reference to it.
• range_type & clear ()Empty this range and return it.
• range_type & fill ()Make this range maximal and return it.
• bool operator< (const range_type &other) constStrict weak order operation allowing integral ranges to be stored in associative containers.
• bool operator<= (integral_type number) constReturn true, if this integral range is empty or its only element is number.
• bool operator<= (const range_type &other) constReturn true, if all numbers contained in this integral range are also contained in the other range.
• bool operator>= (integral_type number) const
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.49 stm::integral_range< IntegralT, minVal, maxVal > Class Template Reference 261
Return true, if number is contained in this range.
• bool operator>= (const range_type &other) constReturn true, if all numbers of the other range are also contained in this range.
• bool operator== (integral_type number) constReturn true, if this integral range’s only element is number.
• bool operator== (const range_type &other) constReturn true, if this integral range contains exactly the same numbers as the other range.
• bool operator!= (integral_type number) constReturn true, if number is no element of this integral range or if it is not its only element.
• bool operator!= (const range_type &other) constReturn true, if this integral range does not contain exactly the same numbers as the other range.
Static Public Member Functions
• static range_type emptyrange ()Return the empty integral range.
• static range_type fullrange ()Return the maximal integral range.
Static Public Attributes
• static const integral_type MinVal = minValTemplate non-type argument minVal as integral_type constant.
• static const integral_type MaxVal = maxValTemplate non-type argument maxVal as integral_type constant.
• static const size_t EmptyAllowed = impl::EmptyAllowedBitwise orable fmtFlag value.
Private Types
• typedef local::xIntegral_range< IntegralT, minVal, maxVal > implImplementation.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.49 stm::integral_range< IntegralT, minVal, maxVal > Class Template Reference 262
12.49.2 Member Typedef Documentation
12.49.2.1 template<typename IntegralT, IntegralT minVal = boost::integer_-traits<IntegralT>::const_min, IntegralT maxVal = boost::integer_traits<IntegralT>::const_max>typedef local::xIntegral_range<IntegralT, minVal, maxVal> stm::integral_range< IntegralT,minVal, maxVal >::impl [private]
Implementation.
Reimplemented from stm::local::xIntegral_range< IntegralT, minVal, maxVal >.
Definition at line 480 of file divaids.hpp.
12.49.2.2 template<typename IntegralT, IntegralT minVal = boost::integer_-traits<IntegralT>::const_min, IntegralT maxVal = boost::integer_traits<IntegralT>::const_max>typedef IntegralT stm::integral_range< IntegralT, minVal, maxVal >::integral_type
Template type argument IntegralT.
Reimplemented from stm::local::xIntegral_range< IntegralT, minVal, maxVal >.
Definition at line 484 of file divaids.hpp.
12.49.2.3 template<typename IntegralT, IntegralT minVal = boost::integer_-traits<IntegralT>::const_min, IntegralT maxVal = boost::integer_traits<IntegralT>::const_max>typedef integral_range<IntegralT, minVal, maxVal> stm::integral_range< IntegralT, minVal,maxVal >::range_type
This class template.
Definition at line 487 of file divaids.hpp.
12.49.3 Constructor & Destructor Documentation
12.49.3.1 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> stm::integral_-range< IntegralT, minVal, maxVal >::integral_range (bool fullRange = false) [inline]
Constructs an empty integral_range object, if fullRange is false (default), else a maximal integral_rangeobject.
Definition at line 1628 of file divxaids.hpp.
12.49.3.2 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> stm::integral_-range< IntegralT, minVal, maxVal >::integral_range (integral_type number) [inline]
Constructs an integral_range object containing exactly number.
Throws, if number is out of range limits.
Definition at line 1635 of file divxaids.hpp.
12.49.3.3 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> stm::integral_-range< IntegralT, minVal, maxVal >::integral_range (integral_type fromNumber, integral_typetoNumber) [inline]
Constructs an integral_range object containing the half open integral_type range [fromNumber, toNumber).
Throws, if the object to be constructed violates the range limits.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.49 stm::integral_range< IntegralT, minVal, maxVal > Class Template Reference 263
Definition at line 1644 of file divxaids.hpp.
12.49.4 Member Function Documentation
12.49.4.1 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> integral_range<IntegralT, minVal, maxVal > & stm::integral_range< IntegralT, minVal, maxVal >::assign (conststd::string & valSpec, size_t fmtFlags = 0) [inline]
Assigns the integral range specified by valSpec to this integral_range object and returns a reference to it.
The integral range to assign is specified by valSpec, which consists of a number defining the first numbercontained in the range optionally followed by ’-’ followed by another number defining the greatest numbercontained in the range.
The numbers contained in valSpec are treated as having 8, 10 or 16 depending on their form: A leading "0"implies octal and leading "0x" or "0X" implies hexadecimal.
If the fmtFlags bit integral_range::EmptyAllowed is set, also an empty or only whitespace containingvalSpec is allowed representing the empty integral_range.
Definition at line 1656 of file divxaids.hpp.
References stm::local::xIntegral_range< IntegralT, minVal, maxVal >::match().
Referenced by stm::operator>>().
12.49.4.2 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> integral_range<IntegralT, minVal, maxVal > & stm::integral_range< IntegralT, minVal, maxVal >::assign (constchar ∗ valSpec, size_t fmtFlags = 0) [inline]
Assigns the integral range specified by valSpec to this integral_range object and returns a reference to it.
The integral range to assign is specified by valSpec, which consists of a number defining the first numbercontained in the range optionally followed by ’-’ followed by another number defining the greatest numbercontained in the range.
The numbers contained in valSpec are treated as having 8, 10 or 16 depending on their form: A leading "0"implies octal and leading "0x" or "0X" implies hexadecimal.
If the fmtFlags bit integral_range::EmptyAllowed is set, also an empty or only whitespace containingvalSpec is allowed representing the empty integral_range.
Definition at line 1669 of file divxaids.hpp.
References stm::local::xIntegral_range< IntegralT, minVal, maxVal >::match().
12.49.4.3 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> voidstm::integral_range< IntegralT, minVal, maxVal >::swap (range_type & other) throw ()[inline]
Non-throwing spap member function.
Definition at line 1679 of file divxaids.hpp.
References stm::smartptr::swap().
12.49.4.4 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> IntegralTstm::integral_range< IntegralT, minVal, maxVal >::from () const [inline]
Returns the first number contained in the range, if the range is not empty, else MaxVal.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.49 stm::integral_range< IntegralT, minVal, maxVal > Class Template Reference 264
Definition at line 1687 of file divxaids.hpp.
12.49.4.5 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> IntegralTstm::integral_range< IntegralT, minVal, maxVal >::last () const [inline]
Returns the greatest number contained in the integral range, if the range is not empty, else MaxVal-1.
Definition at line 1694 of file divxaids.hpp.
References stm::integral_range< IntegralT, minVal, maxVal >::MaxVal, stm::integral_range< IntegralT,minVal, maxVal >::MinVal, and stm::integral_range< IntegralT, minVal, maxVal >::to().
12.49.4.6 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> IntegralTstm::integral_range< IntegralT, minVal, maxVal >::to () const [inline]
Returns one plus the greatest number contained in the integral range, if the range is not empty and itsupperlimit is less than MaxVal, else MaxVal and MinVal, respectively.
Definition at line 1701 of file divxaids.hpp.
Referenced by stm::integral_range< IntegralT, minVal, maxVal >::last().
12.49.4.7 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> size_tstm::integral_range< IntegralT, minVal, maxVal >::size () const [inline]
Returns the number of numbers contained in the range.
This may be 0, although the set is not empty in cases where sizeof (integral_type) == sizeof (size_t) .
Definition at line 1708 of file divxaids.hpp.
References stm::integral_range< IntegralT, minVal, maxVal >::MaxVal, and stm::integral_range< Inte-gralT, minVal, maxVal >::MinVal.
Referenced by stm::integral_range< IntegralT, minVal, maxVal >::operator!=(), stm::integral_range<IntegralT, minVal, maxVal >::operator<=(), and stm::integral_range< IntegralT, minVal, maxVal>::operator==().
12.49.4.8 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> boolstm::integral_range< IntegralT, minVal, maxVal >::empty () const [inline]
Returns true, if the range is empty.
Definition at line 1718 of file divxaids.hpp.
References stm::integral_range< IntegralT, minVal, maxVal >::MinVal.
Referenced by stm::integral_range< IntegralT, minVal, maxVal >::operator &=(), and stm::integral_-range< IntegralT, minVal, maxVal >::operator<=().
12.49.4.9 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> boolstm::integral_range< IntegralT, minVal, maxVal >::full () const [inline]
Returns true, if the range is maximal.
Definition at line 1725 of file divxaids.hpp.
References stm::integral_range< IntegralT, minVal, maxVal >::MinVal.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.49 stm::integral_range< IntegralT, minVal, maxVal > Class Template Reference 265
12.49.4.10 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> integral_range<IntegralT, minVal, maxVal > stm::integral_range< IntegralT, minVal, maxVal >::operator &(integral_type number) const [inline]
Return the empty integral range, if number is not contained in this range, else an integral range consistingof number.
Definition at line 1734 of file divxaids.hpp.
12.49.4.11 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> integral_range<IntegralT, minVal, maxVal > stm::integral_range< IntegralT, minVal, maxVal >::operator & (constrange_type & other) const [inline]
Return an integral range consisting of the numbers contained in both this range and in the other range.
Definition at line 1743 of file divxaids.hpp.
12.49.4.12 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> integral_range<IntegralT, minVal, maxVal > & stm::integral_range< IntegralT, minVal, maxVal >::operator &=(const range_type & other) [inline]
Remove all numbers not contained in the other range from this range and return a reference to it.
The result is potentionally empty.
Definition at line 1751 of file divxaids.hpp.
References stm::integral_range< IntegralT, minVal, maxVal >::empty(), and stm::integral_range< Inte-gralT, minVal, maxVal >::MinVal.
12.49.4.13 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> integral_range<IntegralT, minVal, maxVal > stm::integral_range< IntegralT, minVal, maxVal >::emptyrange ()[inline, static]
Return the empty integral range.
Definition at line 1780 of file divxaids.hpp.
12.49.4.14 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> integral_range<IntegralT, minVal, maxVal > & stm::integral_range< IntegralT, minVal, maxVal >::clear ()[inline]
Empty this range and return it.
Definition at line 1789 of file divxaids.hpp.
References stm::integral_range< IntegralT, minVal, maxVal >::MaxVal.
12.49.4.15 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> integral_range<IntegralT, minVal, maxVal > stm::integral_range< IntegralT, minVal, maxVal >::fullrange ()[inline, static]
Return the maximal integral range.
Definition at line 1799 of file divxaids.hpp.
12.49.4.16 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> integral_range<IntegralT, minVal, maxVal > & stm::integral_range< IntegralT, minVal, maxVal >::fill ()
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.49 stm::integral_range< IntegralT, minVal, maxVal > Class Template Reference 266
[inline]
Make this range maximal and return it.
Definition at line 1808 of file divxaids.hpp.
References stm::integral_range< IntegralT, minVal, maxVal >::MinVal.
12.49.4.17 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> boolstm::integral_range< IntegralT, minVal, maxVal >::operator< (const range_type & other)const [inline]
Strict weak order operation allowing integral ranges to be stored in associative containers.
Definition at line 1817 of file divxaids.hpp.
12.49.4.18 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> boolstm::integral_range< IntegralT, minVal, maxVal >::operator<= (integral_type number) const[inline]
Return true, if this integral range is empty or its only element is number.
Definition at line 1826 of file divxaids.hpp.
References stm::integral_range< IntegralT, minVal, maxVal >::empty(), and stm::integral_range< Inte-gralT, minVal, maxVal >::size().
12.49.4.19 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> boolstm::integral_range< IntegralT, minVal, maxVal >::operator<= (const range_type & other)const [inline]
Return true, if all numbers contained in this integral range are also contained in the other range.
Definition at line 1834 of file divxaids.hpp.
12.49.4.20 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> boolstm::integral_range< IntegralT, minVal, maxVal >::operator>= (integral_type number) const[inline]
Return true, if number is contained in this range.
Definition at line 1842 of file divxaids.hpp.
References stm::integral_range< IntegralT, minVal, maxVal >::MaxVal.
12.49.4.21 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> boolstm::integral_range< IntegralT, minVal, maxVal >::operator>= (const range_type & other)const [inline]
Return true, if all numbers of the other range are also contained in this range.
Definition at line 1850 of file divxaids.hpp.
References stm::integral_range< IntegralT, minVal, maxVal >::MaxVal, and stm::integral_range< Inte-gralT, minVal, maxVal >::MinVal.
12.49.4.22 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> boolstm::integral_range< IntegralT, minVal, maxVal >::operator== (integral_type number) const
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.49 stm::integral_range< IntegralT, minVal, maxVal > Class Template Reference 267
[inline]
Return true, if this integral range’s only element is number.
Definition at line 1860 of file divxaids.hpp.
References stm::integral_range< IntegralT, minVal, maxVal >::size().
12.49.4.23 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> boolstm::integral_range< IntegralT, minVal, maxVal >::operator== (const range_type & other)const [inline]
Return true, if this integral range contains exactly the same numbers as the other range.
Definition at line 1867 of file divxaids.hpp.
12.49.4.24 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> boolstm::integral_range< IntegralT, minVal, maxVal >::operator!= (integral_type number) const[inline]
Return true, if number is no element of this integral range or if it is not its only element.
Definition at line 1876 of file divxaids.hpp.
References stm::integral_range< IntegralT, minVal, maxVal >::size().
12.49.4.25 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> boolstm::integral_range< IntegralT, minVal, maxVal >::operator!= (const range_type & other)const [inline]
Return true, if this integral range does not contain exactly the same numbers as the other range.
Definition at line 1883 of file divxaids.hpp.
12.49.5 Member Data Documentation
12.49.5.1 template<typename IntegralT, IntegralT minVal = boost::integer_-traits<IntegralT>::const_min, IntegralT maxVal = boost::integer_traits<IntegralT>::const_-max> const integral_type stm::integral_range< IntegralT, minVal, maxVal >::MinVal = minVal[static]
Template non-type argument minVal as integral_type constant.
Reimplemented from stm::local::xIntegral_range< IntegralT, minVal, maxVal >.
Definition at line 490 of file divaids.hpp.
Referenced by stm::integral_range< IntegralT, minVal, maxVal >::empty(), stm::integral_range< Inte-gralT, minVal, maxVal >::fill(), stm::integral_range< IntegralT, minVal, maxVal >::full(), stm::integral_-range< IntegralT, minVal, maxVal >::last(), stm::integral_range< IntegralT, minVal, maxVal >::operator&=(), stm::integral_range< IntegralT, minVal, maxVal >::operator>=(), and stm::integral_range< Inte-gralT, minVal, maxVal >::size().
12.49.5.2 template<typename IntegralT, IntegralT minVal = boost::integer_-traits<IntegralT>::const_min, IntegralT maxVal = boost::integer_traits<IntegralT>::const_-max> const integral_type stm::integral_range< IntegralT, minVal, maxVal >::MaxVal = maxVal[static]
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.50 stm::integral_set< IntegralRangeT, RangeSetT > Class Template Reference 268
Template non-type argument maxVal as integral_type constant.
Reimplemented from stm::local::xIntegral_range< IntegralT, minVal, maxVal >.
Definition at line 493 of file divaids.hpp.
Referenced by stm::integral_range< IntegralT, minVal, maxVal >::clear(), stm::integral_range< Inte-gralT, minVal, maxVal >::last(), stm::integral_range< IntegralT, minVal, maxVal >::operator>=(), andstm::integral_range< IntegralT, minVal, maxVal >::size().
12.49.5.3 template<typename IntegralT, IntegralT minVal = boost::integer_-traits<IntegralT>::const_min, IntegralT maxVal = boost::integer_traits<IntegralT>::const_-max> const size_t stm::integral_range< IntegralT, minVal, maxVal >::EmptyAllowed =impl::EmptyAllowed [static]
Bitwise orable fmtFlag value.
Reimplemented from stm::local::xIntegral_range< IntegralT, minVal, maxVal >.
Definition at line 496 of file divaids.hpp.
The documentation for this class was generated from the following files:
• divaids.hpp• divxaids.hpp
12.50 stm::integral_set< IntegralRangeT, RangeSetT > Class Template Reference
#include <divaids.hpp>
Inheritance diagram for stm::integral_set< IntegralRangeT, RangeSetT >:
stm::integral_set< IntegralRangeT, RangeSetT >
stm::local::xIntegral_set< IntegralRangeT, RangeSetT >
Collaboration diagram for stm::integral_set< IntegralRangeT, RangeSetT >:
stm::integral_set< IntegralRangeT, RangeSetT >
stm::local::xIntegral_set< IntegralRangeT, RangeSetT >
12.50.1 Detailed Description
template<class IntegralRangeT, class RangeSetT = std::set<IntegralRangeT>> classstm::integral_set< IntegralRangeT, RangeSetT >
Class template integral_set is a set container representing a set of integral type objects constrained byminimal and maximal values wrapping a set of integral ranges.
The template parameter IntegralRangeT shall be a specialization of integral_range or be publicly derivedtherefrom. The template parameter RangeSetT a set container with value type IntegralRangeT. As the
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.50 stm::integral_set< IntegralRangeT, RangeSetT > Class Template Reference 269
implementation of integral_set uses regular expressions (see Abstract Data Type StmRe), for its errorcontrol the macro StmRectrlTry can be used.
Examples:
divaidstest.cpp.
Definition at line 672 of file divaids.hpp.
Integral Set Iterators
Integral set iterators model the Readable Iterator and the Bidirectional Traversal Iterator concepts.
They iterate over the integral_type object of the controlled integral_set.
• typedef impl::integral_iterator iterator• typedef std::reverse_iterator< iterator > reverse_iterator• typedef iterator const_iterator• typedef reverse_iterator const_reverse_iterator• iterator begin () const• iterator end () const• reverse_iterator rbegin () const• reverse_iterator rend () const
Range Iterators
Range iterators model the Readable Iterator and the Bidirectional Traversal Iterator concepts.
They iterate over the range_type objects of the controlled integral_set.
• typedef impl::const_iterator range_iterator• typedef impl::const_reverse_iterator reverse_range_iterator• range_iterator beginrange () const• range_iterator endrange () const• reverse_range_iterator rbeginrange () const• reverse_range_iterator rendrange () const
Public Types
• typedef IntegralRangeT range_typeTemplate type parameter IntegralRangeT.
• typedef RangeSetT rangeset_typeTemplate type parameter RangeSetT.
• typedef IntegralRangeT::integral_type integral_typeThe type of the integral type objects held by this integral_set.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.50 stm::integral_set< IntegralRangeT, RangeSetT > Class Template Reference 270
Public Member Functions
• integral_set (integral_type number)Constructs an integral set containing number.
• integral_set (const range_type &range)Constructs an integral set object containing the integral range.
• integral_set (const rangeset_type &rangeset=rangeset_type())Constructs an integral set object wrapping the integral range set rangeset.
• integral_set< IntegralRangeT, RangeSetT > & operator= (integral_type number)Assigns the integral set specified consisting of number to this integral_set object and returns a reference toit.
• integral_set< IntegralRangeT, RangeSetT > & operator= (const range_type &range)Assigns the integral set specified consisting of range to this integral_set object and returns a reference to it.
• integral_set< IntegralRangeT, RangeSetT > & operator= (const rangeset_type &rangeset)Assigns the integral set specified consisting of rangeset to this integral_set object and returns a reference toit.
• integral_set< IntegralRangeT, RangeSetT > & assign (const std::string &valSpecList, size_t fmt-Flags=0)
Assigns the integral set specified by valSpecList to this integral_set object and returns a reference to it.
• integral_set< IntegralRangeT, RangeSetT > & assign (const char ∗valSpecList, size_t fmtFlags=0)Assigns the integral set specified by valSpecList to this integral_set object and returns a reference to it.
• void swap (integral_set< IntegralRangeT, RangeSetT > &other) throw ()Swap the contents of this set and the other integral set.
• void swap (rangeset_type &rangeset) throw ()Swap the contents of this set and rangeset.
• operator const RangeSetT & () constReturns a constant reference to the range set representing this integral set.
• iterator find (integral_type number) constIf number is contained in this set, return an iterator to it, else return end().
• reverse_iterator rfind (integral_type number) constIf number is contained in this set, return a reverse iterator to it, else return rend().
• range_iterator findrange (integral_type number) constReturn the range iterator pointing to the integral range number belongs to, or endrange(), if there is no suchrange.
• reverse_range_iterator rfindrange (integral_type number) constReturn the reverse range iterator pointing to the integral range number belongs to, or rendrange(), if thereis no such range.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.50 stm::integral_set< IntegralRangeT, RangeSetT > Class Template Reference 271
• size_t size () constReturn the number of numbers contained in this set.
• size_t ranges () constReturn the number integral ranges building this set.
• bool empty () constReturns true, if this set is empty.
• bool full () constReturns true, if this set is maximal.
• range_type hull () constReturns the least range containing all numbers of this set.
• integral_type min () constReturns the least value contained in this set, or MaxVal if the set is empty.
• integral_type max () constReturns the largest value contained in this set, or MaxVal if the set is empty.
• integral_set< IntegralRangeT, RangeSetT > operator| (integral_type number) constReturn an integral set consisting of the numbers contained in this set and of number.
• integral_set< IntegralRangeT, RangeSetT > operator| (const range_type &range) constReturn an integral set consisting of the numbers contained in this set and in range.
• integral_set< IntegralRangeT, RangeSetT > operator| (const rangeset_type &rangeset) constReturn an integral set consisting of the numbers contained in this set and in rangeset.
• integral_set< IntegralRangeT, RangeSetT > & operator|= (integral_type number)Add number to this set and return a reference to it.
• integral_set< IntegralRangeT, RangeSetT > & operator|= (const range_type &range)Add the numbers contained in range to this set and return a reference to it.
• integral_set< IntegralRangeT, RangeSetT > & operator|= (const rangeset_type &rangeset)Add the numbers contained in rangeset to this set and return a reference to it.
• integral_set< IntegralRangeT, RangeSetT > operator & (integral_type number) constReturn the empty integral set, if number is not contained in this set, else an integral set consisting of number.
• integral_set< IntegralRangeT, RangeSetT > operator & (const range_type &range) constReturn an integral set consisting of the numbers contained in both this set and in range.
• integral_set< IntegralRangeT, RangeSetT > operator & (const rangeset_type &rangeset) constReturn an integral set consisting of the numbers contained in both this set and in rangeset.
• integral_set< IntegralRangeT, RangeSetT > & operator &= (integral_type number)
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.50 stm::integral_set< IntegralRangeT, RangeSetT > Class Template Reference 272
Remove all numbers unequal to number from this set and return a reference to it.
• integral_set< IntegralRangeT, RangeSetT > & operator &= (const range_type &range)Remove all numbers not contained in range from this set and return a reference to it.
• integral_set< IntegralRangeT, RangeSetT > & operator &= (const rangeset_type &rangeset)Remove all numbers not contained in rangeset from this set and return a reference to it.
• integral_set< IntegralRangeT, RangeSetT > operator- (integral_type number) constReturn an integral set consisting of the numbers contained in this set except number.
• integral_set< IntegralRangeT, RangeSetT > operator- (const range_type &range) constReturn an integral set consisting of the numbers contained in this set except those contained also in range.
• integral_set< IntegralRangeT, RangeSetT > operator- (const rangeset_type &rangeset) constReturn an integral set consisting of the numbers contained in this set except those contained also in rangeset.
• integral_set< IntegralRangeT, RangeSetT > & operator-= (integral_type number)Remove number from this set and return a reference to it.
• integral_set< IntegralRangeT, RangeSetT > & operator-= (const range_type &range)Remove all numbers contained in range from this set and return a reference to it.
• integral_set< IntegralRangeT, RangeSetT > & operator-= (const rangeset_type &rangeset)Remove all numbers contained in rangeset from this set and return a reference to it.
• integral_set< IntegralRangeT, RangeSetT > operator∧ (integral_type number) constReturn an integral set consisting of the symmetrical difference of this set and number.
• integral_set< IntegralRangeT, RangeSetT > operator∧ (const range_type &range) constReturn an integral set consisting of the symmetrical difference of this set and range.
• integral_set< IntegralRangeT, RangeSetT > operator∧ (const rangeset_type &rangeset) constReturn an integral set consisting of the symmetrical difference of this set and rangeset.
• integral_set< IntegralRangeT, RangeSetT > & operator∧= (integral_type number)Make this set the symmetrical difference of number and the other set and return a reference to it.
• integral_set< IntegralRangeT, RangeSetT > & operator∧= (const range_type &range)Make this set the symmetrical difference of range and the other set and return a reference to it.
• integral_set< IntegralRangeT, RangeSetT > & operator∧= (const rangeset_type &rangeset)Make this set the symmetrical difference of this set and rangeset and return a reference to it.
• integral_set< IntegralRangeT, RangeSetT > operator∼ () constReturn an integral set consisting of the complement of this set.
• integral_set< IntegralRangeT, RangeSetT > & invert ()Invert this set and return it.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.50 stm::integral_set< IntegralRangeT, RangeSetT > Class Template Reference 273
• integral_set< IntegralRangeT, RangeSetT > & clear ()Empty this set and return it.
• integral_set< IntegralRangeT, RangeSetT > & fill ()Make this set maximal and return it.
• bool operator<= (integral_type number) constReturn true, if this integral set is empty or its only element is number.
• bool operator<= (const range_type &range) constReturn true, if all numbers contained in this integral set are also contained in range.
• bool operator<= (const rangeset_type &rangeset) constReturn true, if all numbers contained in this integral set are also contained in rangeset.
• bool operator>= (integral_type number) constReturn true, if this integral set contains number.
• bool operator>= (const range_type &range) constReturn true, if this integral set contains at least the same numbers as range.
• bool operator>= (const rangeset_type &rangeset) constReturn true, if this integral set contains at least the same numbers as rangeset.
• bool operator== (integral_type number) constReturn true, if this integral set’s only element is number.
• bool operator== (const range_type &range) constReturn true, if this integral set contains exactly the same numbers as range.
• bool operator== (const rangeset_type &rangeset) constReturn true, if this integral set contains exactly the same numbers as rangeset.
• bool operator!= (integral_type number) constReturn true, if number is no element of this integral set or if it is not its only element.
• bool operator!= (const range_type &range) constReturn true, if this integral set does not contain exactly the same numbers as range.
• bool operator!= (const rangeset_type &rangeset) constReturn true, if this integral set does not contain exactly the same numbers as rangeset.
Static Public Member Functions
• static integral_set< IntegralRangeT, RangeSetT > emptyset ()Return the empty integral set.
• static integral_set< IntegralRangeT, RangeSetT > fullset ()Return the maximal integral set.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.50 stm::integral_set< IntegralRangeT, RangeSetT > Class Template Reference 274
Static Public Attributes
• static const integral_type MinVal = range_type::MinValMinimal value an integral_set<IntegralRangeT, RangeSetT> object is allowed to contain.
• static const integral_type MaxVal = range_type::MaxValMaximal value an integral_set<IntegralRangeT, RangeSetT> object is allowed to contain.
Private Types
• typedef local::xIntegral_set< IntegralRangeT, RangeSetT > implImplementation.
12.50.2 Member Typedef Documentation
12.50.2.1 template<class IntegralRangeT, class RangeSetT = std::set<IntegralRangeT>> typedeflocal::xIntegral_set<IntegralRangeT, RangeSetT> stm::integral_set< IntegralRangeT, RangeSetT>::impl [private]
Implementation.
Reimplemented from stm::local::xIntegral_set< IntegralRangeT, RangeSetT >.
Definition at line 676 of file divaids.hpp.
12.50.2.2 template<class IntegralRangeT, class RangeSetT = std::set<IntegralRangeT>> typedefIntegralRangeT stm::integral_set< IntegralRangeT, RangeSetT >::range_type
Template type parameter IntegralRangeT.
Reimplemented from stm::local::xIntegral_set< IntegralRangeT, RangeSetT >.
Definition at line 680 of file divaids.hpp.
12.50.2.3 template<class IntegralRangeT, class RangeSetT = std::set<IntegralRangeT>> typedefRangeSetT stm::integral_set< IntegralRangeT, RangeSetT >::rangeset_type
Template type parameter RangeSetT.
Reimplemented from stm::local::xIntegral_set< IntegralRangeT, RangeSetT >.
Definition at line 683 of file divaids.hpp.
12.50.2.4 template<class IntegralRangeT, class RangeSetT = std::set<IntegralRangeT>> typedefIntegralRangeT::integral_type stm::integral_set< IntegralRangeT, RangeSetT >::integral_type
The type of the integral type objects held by this integral_set.
Reimplemented from stm::local::xIntegral_set< IntegralRangeT, RangeSetT >.
Definition at line 686 of file divaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.50 stm::integral_set< IntegralRangeT, RangeSetT > Class Template Reference 275
12.50.2.5 template<class IntegralRangeT, class RangeSetT = std::set<IntegralRangeT>> typedefimpl::integral_iterator stm::integral_set< IntegralRangeT, RangeSetT >::iterator
Reimplemented from stm::local::xIntegral_set< IntegralRangeT, RangeSetT >.
Definition at line 693 of file divaids.hpp.
12.50.2.6 template<class IntegralRangeT, class RangeSetT = std::set<IntegralRangeT>> typedefstd::reverse_iterator<iterator> stm::integral_set< IntegralRangeT, RangeSetT >::reverse_iterator
Reimplemented from stm::local::xIntegral_set< IntegralRangeT, RangeSetT >.
Definition at line 694 of file divaids.hpp.
12.50.2.7 template<class IntegralRangeT, class RangeSetT = std::set<IntegralRangeT>> typedefiterator stm::integral_set< IntegralRangeT, RangeSetT >::const_iterator
Reimplemented from stm::local::xIntegral_set< IntegralRangeT, RangeSetT >.
Definition at line 695 of file divaids.hpp.
12.50.2.8 template<class IntegralRangeT, class RangeSetT = std::set<IntegralRangeT>> typedefreverse_iterator stm::integral_set< IntegralRangeT, RangeSetT >::const_reverse_iterator
Reimplemented from stm::local::xIntegral_set< IntegralRangeT, RangeSetT >.
Definition at line 696 of file divaids.hpp.
12.50.2.9 template<class IntegralRangeT, class RangeSetT = std::set<IntegralRangeT>> typedefimpl::const_iterator stm::integral_set< IntegralRangeT, RangeSetT >::range_iterator
Definition at line 709 of file divaids.hpp.
12.50.2.10 template<class IntegralRangeT, class RangeSetT = std::set<IntegralRangeT>> type-def impl::const_reverse_iterator stm::integral_set< IntegralRangeT, RangeSetT >::reverse_-range_iterator
Definition at line 710 of file divaids.hpp.
12.50.3 Constructor & Destructor Documentation
12.50.3.1 template<class IntegralRangeT, class RangeSetT> stm::integral_set< IntegralRangeT,RangeSetT >::integral_set (integral_type number) [inline]
Constructs an integral set containing number.
Definition at line 1930 of file divxaids.hpp.
12.50.3.2 template<class IntegralRangeT, class RangeSetT> stm::integral_set< IntegralRangeT,RangeSetT >::integral_set (const range_type & range) [inline]
Constructs an integral set object containing the integral range.
Definition at line 1940 of file divxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.50 stm::integral_set< IntegralRangeT, RangeSetT > Class Template Reference 276
12.50.3.3 template<class IntegralRangeT, class RangeSetT> stm::integral_set< IntegralRangeT,RangeSetT >::integral_set (const rangeset_type & rangeset = rangeset_type ()) [inline]
Constructs an integral set object wrapping the integral range set rangeset.
Definition at line 1950 of file divxaids.hpp.
12.50.4 Member Function Documentation
12.50.4.1 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT >::iterator stm::integral_set< IntegralRangeT, RangeSetT >::begin () const[inline]
Definition at line 2055 of file divxaids.hpp.
References stm::integral_set< IntegralRangeT, RangeSetT >::empty(), stm::integral_set< Integral-RangeT, RangeSetT >::end(), and stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::mkIterator().
Referenced by stm::integral_set< IntegralRangeT, RangeSetT >::operator!=(), stm::integral_set< Inte-gralRangeT, RangeSetT >::operator<=(), stm::integral_set< IntegralRangeT, RangeSetT >::operator==(),and stm::integral_set< IntegralRangeT, RangeSetT >::rend().
12.50.4.2 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT >::iterator stm::integral_set< IntegralRangeT, RangeSetT >::end () const [inline]
Definition at line 2067 of file divxaids.hpp.
References stm::integral_set< IntegralRangeT, RangeSetT >::MaxVal, and stm::local::xIntegral_set< In-tegralRangeT, RangeSetT >::mkIterator().
Referenced by stm::integral_set< IntegralRangeT, RangeSetT >::begin(), stm::integral_set< Integral-RangeT, RangeSetT >::rbegin(), and stm::integral_set< IntegralRangeT, RangeSetT >::rfind().
12.50.4.3 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT >::reverse_iterator stm::integral_set< IntegralRangeT, RangeSetT >::rbegin () const[inline]
Definition at line 2076 of file divxaids.hpp.
References stm::integral_set< IntegralRangeT, RangeSetT >::end().
12.50.4.4 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT >::reverse_iterator stm::integral_set< IntegralRangeT, RangeSetT >::rend () const[inline]
Definition at line 2085 of file divxaids.hpp.
References stm::integral_set< IntegralRangeT, RangeSetT >::begin().
Referenced by stm::integral_set< IntegralRangeT, RangeSetT >::rfind().
12.50.4.5 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT >::range_iterator stm::integral_set< IntegralRangeT, RangeSetT >::beginrange ()const [inline]
Definition at line 2094 of file divxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.50 stm::integral_set< IntegralRangeT, RangeSetT > Class Template Reference 277
Referenced by stm::integral_set< IntegralRangeT, RangeSetT >::full(), stm::integral_set< Inte-gralRangeT, RangeSetT >::hull(), stm::integral_set< IntegralRangeT, RangeSetT >::operator!=(),stm::operator<<(), and stm::integral_set< IntegralRangeT, RangeSetT >::operator==().
12.50.4.6 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT >::range_iterator stm::integral_set< IntegralRangeT, RangeSetT >::endrange () const[inline]
Definition at line 2103 of file divxaids.hpp.
Referenced by stm::integral_set< IntegralRangeT, RangeSetT >::rfindrange().
12.50.4.7 template<class IntegralRangeT, class RangeSetT> integral_set< Integral-RangeT, RangeSetT >::reverse_range_iterator stm::integral_set< IntegralRangeT, RangeSetT>::rbeginrange () const [inline]
Definition at line 2112 of file divxaids.hpp.
Referenced by stm::integral_set< IntegralRangeT, RangeSetT >::hull().
12.50.4.8 template<class IntegralRangeT, class RangeSetT> integral_set< Integral-RangeT, RangeSetT >::reverse_range_iterator stm::integral_set< IntegralRangeT, RangeSetT>::rendrange () const [inline]
Definition at line 2121 of file divxaids.hpp.
Referenced by stm::integral_set< IntegralRangeT, RangeSetT >::rfindrange().
12.50.4.9 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT > & stm::integral_set< IntegralRangeT, RangeSetT >::operator= (integral_type num-ber) [inline]
Assigns the integral set specified consisting of number to this integral_set object and returns a reference toit.
Definition at line 1966 of file divxaids.hpp.
References stm::integral_set< IntegralRangeT, RangeSetT >::swap().
12.50.4.10 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT > & stm::integral_set< IntegralRangeT, RangeSetT >::operator= (const range_type &range) [inline]
Assigns the integral set specified consisting of range to this integral_set object and returns a reference to it.
Definition at line 1977 of file divxaids.hpp.
References stm::integral_set< IntegralRangeT, RangeSetT >::swap().
12.50.4.11 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT > & stm::integral_set< IntegralRangeT, RangeSetT >::operator= (const rangeset_type& rangeset) [inline]
Assigns the integral set specified consisting of rangeset to this integral_set object and returns a referenceto it.
Definition at line 1988 of file divxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.50 stm::integral_set< IntegralRangeT, RangeSetT > Class Template Reference 278
References stm::integral_set< IntegralRangeT, RangeSetT >::swap().
12.50.4.12 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT > & stm::integral_set< IntegralRangeT, RangeSetT >::assign (const std::string & val-SpecList, size_t fmtFlags = 0) [inline]
Assigns the integral set specified by valSpecList to this integral_set object and returns a reference to it.
The integral set to assign is specified by valSpecList, which consists of a list of comma separated valSpecitems as described for integral_range::assign(). If the fmtFlags bit integral_range::EmptyAllowed is set,also an empty or only whitespace containing valSpecList is allowed representing the empty integral_set.
Definition at line 1999 of file divxaids.hpp.
References stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::match().
12.50.4.13 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT > & stm::integral_set< IntegralRangeT, RangeSetT >::assign (const char ∗ valSpecList,size_t fmtFlags = 0) [inline]
Assigns the integral set specified by valSpecList to this integral_set object and returns a reference to it.
The integral set to assign is specified by valSpecList, which consists of a list of comma separated valSpecitems as described for integral_range::assign(). If the fmtFlags bit integral_range::EmptyAllowed is set,also an empty or only whitespace containing valSpecList is allowed representing the empty integral_set.
Definition at line 2011 of file divxaids.hpp.
References stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::match().
12.50.4.14 template<class IntegralRangeT, class RangeSetT> void stm::integral_set< Integral-RangeT, RangeSetT >::swap (integral_set< IntegralRangeT, RangeSetT > & other) throw ()[inline]
Swap the contents of this set and the other integral set.
Definition at line 2022 of file divxaids.hpp.
References stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::size_, and stm::smartptr::swap().
Referenced by stm::integral_set< IntegralRangeT, RangeSetT >::invert(), stm::integral_set< Integral-RangeT, RangeSetT >::operator &=(), and stm::integral_set< IntegralRangeT, RangeSetT >::operator=().
12.50.4.15 template<class IntegralRangeT, class RangeSetT> void stm::integral_set< Integral-RangeT, RangeSetT >::swap (rangeset_type & rangeset) throw () [inline]
Swap the contents of this set and rangeset.
Definition at line 2034 of file divxaids.hpp.
References stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::adjust(), and stm::smartptr::swap().
12.50.4.16 template<class IntegralRangeT, class RangeSetT> stm::integral_set< IntegralRangeT,RangeSetT >::operator const RangeSetT & () const [inline]
Returns a constant reference to the range set representing this integral set.
Definition at line 2046 of file divxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.50 stm::integral_set< IntegralRangeT, RangeSetT > Class Template Reference 279
12.50.4.17 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT >::iterator stm::integral_set< IntegralRangeT, RangeSetT >::find (integral_type num-ber) const [inline]
If number is contained in this set, return an iterator to it, else return end().
Definition at line 2130 of file divxaids.hpp.
References stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::mkIterator(), andstm::local::xIntegral_set< IntegralRangeT, RangeSetT >::rangeOf().
Referenced by stm::integral_set< IntegralRangeT, RangeSetT >::rfind().
12.50.4.18 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT >::reverse_iterator stm::integral_set< IntegralRangeT, RangeSetT >::rfind (integral_-type number) const [inline]
If number is contained in this set, return a reverse iterator to it, else return rend().
Definition at line 2139 of file divxaids.hpp.
References stm::integral_set< IntegralRangeT, RangeSetT >::end(), stm::integral_set< IntegralRangeT,RangeSetT >::find(), and stm::integral_set< IntegralRangeT, RangeSetT >::rend().
12.50.4.19 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT >::range_iterator stm::integral_set< IntegralRangeT, RangeSetT >::findrange(integral_type number) const [inline]
Return the range iterator pointing to the integral range number belongs to, or endrange(), if there is no suchrange.
Definition at line 2149 of file divxaids.hpp.
References stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::rangeOf().
Referenced by stm::integral_set< IntegralRangeT, RangeSetT >::rfindrange().
12.50.4.20 template<class IntegralRangeT, class RangeSetT> integral_set< Integral-RangeT, RangeSetT >::reverse_range_iterator stm::integral_set< IntegralRangeT, RangeSetT>::rfindrange (integral_type number) const [inline]
Return the reverse range iterator pointing to the integral range number belongs to, or rendrange(), if thereis no such range.
Definition at line 2158 of file divxaids.hpp.
References stm::integral_set< IntegralRangeT, RangeSetT >::endrange(), stm::integral_set< Integral-RangeT, RangeSetT >::findrange(), and stm::integral_set< IntegralRangeT, RangeSetT >::rendrange().
12.50.4.21 template<class IntegralRangeT, class RangeSetT> size_t stm::integral_set< Integral-RangeT, RangeSetT >::size () const [inline]
Return the number of numbers contained in this set.
This may be 0, although the set is not empty in cases where sizeof (integral_type) == sizeof (size_t).
Definition at line 2166 of file divxaids.hpp.
References stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::size_.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.50 stm::integral_set< IntegralRangeT, RangeSetT > Class Template Reference 280
Referenced by stm::integral_set< IntegralRangeT, RangeSetT >::operator!=(), stm::integral_set< Inte-gralRangeT, RangeSetT >::operator-=(), stm::operator<<(), stm::integral_set< IntegralRangeT, Range-SetT >::operator<=(), and stm::integral_set< IntegralRangeT, RangeSetT >::operator==().
12.50.4.22 template<class IntegralRangeT, class RangeSetT> size_t stm::integral_set< Integral-RangeT, RangeSetT >::ranges () const [inline]
Return the number integral ranges building this set.
Definition at line 2173 of file divxaids.hpp.
Referenced by stm::integral_set< IntegralRangeT, RangeSetT >::full(), stm::integral_set< Integral-RangeT, RangeSetT >::hull(), stm::integral_set< IntegralRangeT, RangeSetT >::operator!=(), andstm::integral_set< IntegralRangeT, RangeSetT >::operator==().
12.50.4.23 template<class IntegralRangeT, class RangeSetT> bool stm::integral_set< Integral-RangeT, RangeSetT >::empty () const [inline]
Returns true, if this set is empty.
Definition at line 2180 of file divxaids.hpp.
Referenced by stm::integral_set< IntegralRangeT, RangeSetT >::begin(), and stm::integral_set< Integral-RangeT, RangeSetT >::operator<=().
12.50.4.24 template<class IntegralRangeT, class RangeSetT> bool stm::integral_set< Integral-RangeT, RangeSetT >::full () const [inline]
Returns true, if this set is maximal.
Definition at line 2187 of file divxaids.hpp.
References stm::integral_set< IntegralRangeT, RangeSetT >::beginrange(), and stm::integral_set< Inte-gralRangeT, RangeSetT >::ranges().
12.50.4.25 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT >::range_type stm::integral_set< IntegralRangeT, RangeSetT >::hull () const[inline]
Returns the least range containing all numbers of this set.
Definition at line 2196 of file divxaids.hpp.
References stm::integral_set< IntegralRangeT, RangeSetT >::beginrange(), stm::integral_set< Integral-RangeT, RangeSetT >::ranges(), and stm::integral_set< IntegralRangeT, RangeSetT >::rbeginrange().
Referenced by stm::integral_set< IntegralRangeT, RangeSetT >::max(), and stm::integral_set< Integral-RangeT, RangeSetT >::min().
12.50.4.26 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT >::integral_type stm::integral_set< IntegralRangeT, RangeSetT >::min () const[inline]
Returns the least value contained in this set, or MaxVal if the set is empty.
Definition at line 2208 of file divxaids.hpp.
References stm::integral_set< IntegralRangeT, RangeSetT >::hull().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.50 stm::integral_set< IntegralRangeT, RangeSetT > Class Template Reference 281
12.50.4.27 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT >::integral_type stm::integral_set< IntegralRangeT, RangeSetT >::max () const[inline]
Returns the largest value contained in this set, or MaxVal if the set is empty.
Definition at line 2217 of file divxaids.hpp.
References stm::integral_set< IntegralRangeT, RangeSetT >::hull().
12.50.4.28 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT > stm::integral_set< IntegralRangeT, RangeSetT >::operator| (integral_type number)const [inline]
Return an integral set consisting of the numbers contained in this set and of number.
Definition at line 2226 of file divxaids.hpp.
12.50.4.29 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT > stm::integral_set< IntegralRangeT, RangeSetT >::operator| (const range_type &range) const [inline]
Return an integral set consisting of the numbers contained in this set and in range.
Definition at line 2235 of file divxaids.hpp.
12.50.4.30 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT > stm::integral_set< IntegralRangeT, RangeSetT >::operator| (const rangeset_type &rangeset) const [inline]
Return an integral set consisting of the numbers contained in this set and in rangeset.
Definition at line 2244 of file divxaids.hpp.
12.50.4.31 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT > & stm::integral_set< IntegralRangeT, RangeSetT >::operator|= (integral_type num-ber) [inline]
Add number to this set and return a reference to it.
Definition at line 2253 of file divxaids.hpp.
Referenced by stm::integral_set< IntegralRangeT, RangeSetT >::operator &=(), stm::integral_set< Inte-gralRangeT, RangeSetT >::operator-=(), stm::integral_set< IntegralRangeT, RangeSetT >::operator∧=(),and stm::integral_set< IntegralRangeT, RangeSetT >::operator|=().
12.50.4.32 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT > & stm::integral_set< IntegralRangeT, RangeSetT >::operator|= (const range_type& range) [inline]
Add the numbers contained in range to this set and return a reference to it.
Definition at line 2261 of file divxaids.hpp.
References stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::adjust(), stm::integral_set< In-tegralRangeT, RangeSetT >::MaxVal, stm::integral_set< IntegralRangeT, RangeSetT >::MinVal,stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::rangeOf(), stm::local::xIntegral_set< Integral-
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.50 stm::integral_set< IntegralRangeT, RangeSetT > Class Template Reference 282
RangeT, RangeSetT >::size_, StmDebugAidsVerify, and stm::local::xIntegral_set< IntegralRangeT,RangeSetT >::verify().
12.50.4.33 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT > & stm::integral_set< IntegralRangeT, RangeSetT >::operator|= (const rangeset_type& rangeset) [inline]
Add the numbers contained in rangeset to this set and return a reference to it.
Definition at line 2302 of file divxaids.hpp.
References stm::integral_set< IntegralRangeT, RangeSetT >::operator|=().
12.50.4.34 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT > stm::integral_set< IntegralRangeT, RangeSetT >::operator & (integral_type number)const [inline]
Return the empty integral set, if number is not contained in this set, else an integral set consisting ofnumber.
Definition at line 2319 of file divxaids.hpp.
12.50.4.35 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT > stm::integral_set< IntegralRangeT, RangeSetT >::operator & (const range_type &range) const [inline]
Return an integral set consisting of the numbers contained in both this set and in range.
Definition at line 2328 of file divxaids.hpp.
12.50.4.36 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT > stm::integral_set< IntegralRangeT, RangeSetT >::operator & (const rangeset_type& rangeset) const [inline]
Return an integral set consisting of the numbers contained in both this set and in rangeset.
Definition at line 2337 of file divxaids.hpp.
12.50.4.37 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT > & stm::integral_set< IntegralRangeT, RangeSetT >::operator &= (integral_typenumber) [inline]
Remove all numbers unequal to number from this set and return a reference to it.
Definition at line 2346 of file divxaids.hpp.
References stm::integral_set< IntegralRangeT, RangeSetT >::clear(), and stm::integral_set< Integral-RangeT, RangeSetT >::operator|=().
12.50.4.38 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT > & stm::integral_set< IntegralRangeT, RangeSetT >::operator &= (const range_type& range) [inline]
Remove all numbers not contained in range from this set and return a reference to it.
Definition at line 2356 of file divxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.50 stm::integral_set< IntegralRangeT, RangeSetT > Class Template Reference 283
References stm::integral_set< IntegralRangeT, RangeSetT >::clear(), stm::local::xIntegral_set< Inte-gralRangeT, RangeSetT >::rangeOf(), stm::integral_set< IntegralRangeT, RangeSetT >::swap(), andstm::local::xIntegral_set< IntegralRangeT, RangeSetT >::verify().
12.50.4.39 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT > & stm::integral_set< IntegralRangeT, RangeSetT >::operator &= (const rangeset_-type & rangeset) [inline]
Remove all numbers not contained in rangeset from this set and return a reference to it.
Definition at line 2382 of file divxaids.hpp.
References stm::integral_set< IntegralRangeT, RangeSetT >::clear(), stm::integral_set< IntegralRangeT,RangeSetT >::swap(), and stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::verify().
12.50.4.40 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT > stm::integral_set< IntegralRangeT, RangeSetT >::operator- (integral_type number)const [inline]
Return an integral set consisting of the numbers contained in this set except number.
Definition at line 2404 of file divxaids.hpp.
12.50.4.41 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT > stm::integral_set< IntegralRangeT, RangeSetT >::operator- (const range_type &range) const [inline]
Return an integral set consisting of the numbers contained in this set except those contained also in range.
Definition at line 2413 of file divxaids.hpp.
12.50.4.42 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT > stm::integral_set< IntegralRangeT, RangeSetT >::operator- (const rangeset_type &rangeset) const [inline]
Return an integral set consisting of the numbers contained in this set except those contained also in rangeset.
Definition at line 2421 of file divxaids.hpp.
12.50.4.43 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT > & stm::integral_set< IntegralRangeT, RangeSetT >::operator-= (integral_type num-ber) [inline]
Remove number from this set and return a reference to it.
Definition at line 2430 of file divxaids.hpp.
References stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::adjust(), stm::integral_set<IntegralRangeT, RangeSetT >::MaxVal, stm::integral_set< IntegralRangeT, RangeSetT >::MinVal,stm::integral_set< IntegralRangeT, RangeSetT >::operator|=(), stm::local::xIntegral_set< Inte-gralRangeT, RangeSetT >::rangeOf(), stm::integral_set< IntegralRangeT, RangeSetT >::size(),stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::size_, and stm::local::xIntegral_set< Inte-gralRangeT, RangeSetT >::verify().
Referenced by stm::integral_set< IntegralRangeT, RangeSetT >::operator-=(), and stm::integral_set< In-tegralRangeT, RangeSetT >::operator∧=().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.50 stm::integral_set< IntegralRangeT, RangeSetT > Class Template Reference 284
12.50.4.44 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT > & stm::integral_set< IntegralRangeT, RangeSetT >::operator-= (const range_type& range) [inline]
Remove all numbers contained in range from this set and return a reference to it.
Definition at line 2469 of file divxaids.hpp.
References stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::adjust(), stm::integral_set< Integral-RangeT, RangeSetT >::operator|=(), stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::rangeOf(),stm::integral_set< IntegralRangeT, RangeSetT >::size(), stm::local::xIntegral_set< IntegralRangeT,RangeSetT >::size_, StmDebugAidsVerify, and stm::local::xIntegral_set< IntegralRangeT, RangeSetT>::verify().
12.50.4.45 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT > & stm::integral_set< IntegralRangeT, RangeSetT >::operator-= (const rangeset_type& rangeset) [inline]
Remove all numbers contained in rangeset from this set and return a reference to it.
Definition at line 2527 of file divxaids.hpp.
References stm::integral_set< IntegralRangeT, RangeSetT >::operator-=().
12.50.4.46 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT > stm::integral_set< IntegralRangeT, RangeSetT >::operator∧ (integral_type number)const [inline]
Return an integral set consisting of the symmetrical difference of this set and number.
Definition at line 2544 of file divxaids.hpp.
References stm::integral_set< IntegralRangeT, RangeSetT >::operator>=().
12.50.4.47 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT > stm::integral_set< IntegralRangeT, RangeSetT >::operator∧ (const range_type &range) const [inline]
Return an integral set consisting of the symmetrical difference of this set and range.
Definition at line 2553 of file divxaids.hpp.
12.50.4.48 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT > stm::integral_set< IntegralRangeT, RangeSetT >::operator∧ (const rangeset_type &rangeset) const [inline]
Return an integral set consisting of the symmetrical difference of this set and rangeset.
Definition at line 2564 of file divxaids.hpp.
12.50.4.49 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT > & stm::integral_set< IntegralRangeT, RangeSetT >::operator∧= (integral_type num-ber) [inline]
Make this set the symmetrical difference of number and the other set and return a reference to it.
Definition at line 2575 of file divxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.50 stm::integral_set< IntegralRangeT, RangeSetT > Class Template Reference 285
References stm::integral_set< IntegralRangeT, RangeSetT >::operator-=(), stm::integral_set< In-tegralRangeT, RangeSetT >::operator>=(), and stm::integral_set< IntegralRangeT, RangeSetT>::operator|=().
12.50.4.50 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT > & stm::integral_set< IntegralRangeT, RangeSetT >::operator∧= (const range_type& range) [inline]
Make this set the symmetrical difference of range and the other set and return a reference to it.
Definition at line 2584 of file divxaids.hpp.
12.50.4.51 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT > & stm::integral_set< IntegralRangeT, RangeSetT >::operator∧= (const rangeset_-type & rangeset) [inline]
Make this set the symmetrical difference of this set and rangeset and return a reference to it.
Definition at line 2595 of file divxaids.hpp.
12.50.4.52 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT > stm::integral_set< IntegralRangeT, RangeSetT >::operator∼ () const [inline]
Return an integral set consisting of the complement of this set.
Definition at line 2606 of file divxaids.hpp.
References stm::integral_set< IntegralRangeT, RangeSetT >::invert().
12.50.4.53 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT > & stm::integral_set< IntegralRangeT, RangeSetT >::invert () [inline]
Invert this set and return it.
Definition at line 2614 of file divxaids.hpp.
References stm::integral_set< IntegralRangeT, RangeSetT >::clear(), stm::integral_set< Integral-RangeT, RangeSetT >::MinVal, stm::integral_set< IntegralRangeT, RangeSetT >::swap(), andstm::local::xIntegral_set< IntegralRangeT, RangeSetT >::verify().
Referenced by stm::integral_set< IntegralRangeT, RangeSetT >::operator∼().
12.50.4.54 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT > stm::integral_set< IntegralRangeT, RangeSetT >::emptyset () [inline,static]
Return the empty integral set.
Definition at line 2638 of file divxaids.hpp.
12.50.4.55 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT > & stm::integral_set< IntegralRangeT, RangeSetT >::clear () [inline]
Empty this set and return it.
Definition at line 2647 of file divxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.50 stm::integral_set< IntegralRangeT, RangeSetT > Class Template Reference 286
References stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::size_.
Referenced by stm::integral_set< IntegralRangeT, RangeSetT >::fill(), stm::integral_set< IntegralRangeT,RangeSetT >::invert(), and stm::integral_set< IntegralRangeT, RangeSetT >::operator &=().
12.50.4.56 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT > stm::integral_set< IntegralRangeT, RangeSetT >::fullset () [inline, static]
Return the maximal integral set.
Definition at line 2658 of file divxaids.hpp.
12.50.4.57 template<class IntegralRangeT, class RangeSetT> integral_set< IntegralRangeT,RangeSetT > & stm::integral_set< IntegralRangeT, RangeSetT >::fill () [inline]
Make this set maximal and return it.
Definition at line 2667 of file divxaids.hpp.
References stm::integral_set< IntegralRangeT, RangeSetT >::clear(), stm::integral_set< Integral-RangeT, RangeSetT >::MaxVal, stm::integral_set< IntegralRangeT, RangeSetT >::MinVal, andstm::local::xIntegral_set< IntegralRangeT, RangeSetT >::size_.
12.50.4.58 template<class IntegralRangeT, class RangeSetT> bool stm::integral_set< Integral-RangeT, RangeSetT >::operator<= (integral_type number) const [inline]
Return true, if this integral set is empty or its only element is number.
Definition at line 2679 of file divxaids.hpp.
References stm::integral_set< IntegralRangeT, RangeSetT >::begin(), stm::integral_set< IntegralRangeT,RangeSetT >::empty(), and stm::integral_set< IntegralRangeT, RangeSetT >::size().
12.50.4.59 template<class IntegralRangeT, class RangeSetT> bool stm::integral_set< Integral-RangeT, RangeSetT >::operator<= (const range_type & range) const [inline]
Return true, if all numbers contained in this integral set are also contained in range.
Definition at line 2687 of file divxaids.hpp.
12.50.4.60 template<class IntegralRangeT, class RangeSetT> bool stm::integral_set< Integral-RangeT, RangeSetT >::operator<= (const rangeset_type & rangeset) const [inline]
Return true, if all numbers contained in this integral set are also contained in rangeset.
Definition at line 2695 of file divxaids.hpp.
12.50.4.61 template<class IntegralRangeT, class RangeSetT> bool stm::integral_set< Integral-RangeT, RangeSetT >::operator>= (integral_type number) const [inline]
Return true, if this integral set contains number.
Definition at line 2703 of file divxaids.hpp.
References stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::rangeOf().
Referenced by stm::integral_set< IntegralRangeT, RangeSetT >::operator∧(), and stm::integral_set< In-tegralRangeT, RangeSetT >::operator∧=().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.50 stm::integral_set< IntegralRangeT, RangeSetT > Class Template Reference 287
12.50.4.62 template<class IntegralRangeT, class RangeSetT> bool stm::integral_set< Integral-RangeT, RangeSetT >::operator>= (const range_type & range) const [inline]
Return true, if this integral set contains at least the same numbers as range.
Definition at line 2711 of file divxaids.hpp.
12.50.4.63 template<class IntegralRangeT, class RangeSetT> bool stm::integral_set< Integral-RangeT, RangeSetT >::operator>= (const rangeset_type & rangeset) const [inline]
Return true, if this integral set contains at least the same numbers as rangeset.
Definition at line 2719 of file divxaids.hpp.
12.50.4.64 template<class IntegralRangeT, class RangeSetT> bool stm::integral_set< Integral-RangeT, RangeSetT >::operator== (integral_type number) const [inline]
Return true, if this integral set’s only element is number.
Definition at line 2727 of file divxaids.hpp.
References stm::integral_set< IntegralRangeT, RangeSetT >::begin(), and stm::integral_set< Integral-RangeT, RangeSetT >::size().
12.50.4.65 template<class IntegralRangeT, class RangeSetT> bool stm::integral_set< Integral-RangeT, RangeSetT >::operator== (const range_type & range) const [inline]
Return true, if this integral set contains exactly the same numbers as range.
Definition at line 2735 of file divxaids.hpp.
References stm::integral_set< IntegralRangeT, RangeSetT >::beginrange(), and stm::integral_set< Inte-gralRangeT, RangeSetT >::ranges().
12.50.4.66 template<class IntegralRangeT, class RangeSetT> bool stm::integral_set< Integral-RangeT, RangeSetT >::operator== (const rangeset_type & rangeset) const [inline]
Return true, if this integral set contains exactly the same numbers as rangeset.
Definition at line 2743 of file divxaids.hpp.
12.50.4.67 template<class IntegralRangeT, class RangeSetT> bool stm::integral_set< Integral-RangeT, RangeSetT >::operator!= (integral_type number) const [inline]
Return true, if number is no element of this integral set or if it is not its only element.
Definition at line 2751 of file divxaids.hpp.
References stm::integral_set< IntegralRangeT, RangeSetT >::begin(), and stm::integral_set< Integral-RangeT, RangeSetT >::size().
12.50.4.68 template<class IntegralRangeT, class RangeSetT> bool stm::integral_set< Integral-RangeT, RangeSetT >::operator!= (const range_type & range) const [inline]
Return true, if this integral set does not contain exactly the same numbers as range.
Definition at line 2759 of file divxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.51 stm::smartptr::local::item_descr< T, Compare, false, false > Struct Template Reference288
References stm::integral_set< IntegralRangeT, RangeSetT >::beginrange(), and stm::integral_set< Inte-gralRangeT, RangeSetT >::ranges().
12.50.4.69 template<class IntegralRangeT, class RangeSetT> bool stm::integral_set< Integral-RangeT, RangeSetT >::operator!= (const rangeset_type & rangeset) const [inline]
Return true, if this integral set does not contain exactly the same numbers as rangeset.
Definition at line 2767 of file divxaids.hpp.
12.50.5 Member Data Documentation
12.50.5.1 template<class IntegralRangeT, class RangeSetT = std::set<IntegralRangeT>> constintegral_type stm::integral_set< IntegralRangeT, RangeSetT >::MinVal = range_type::MinVal[static]
Minimal value an integral_set<IntegralRangeT, RangeSetT> object is allowed to contain.
Reimplemented from stm::local::xIntegral_set< IntegralRangeT, RangeSetT >.
Definition at line 720 of file divaids.hpp.
Referenced by stm::integral_set< IntegralRangeT, RangeSetT >::fill(), stm::integral_set< IntegralRangeT,RangeSetT >::invert(), stm::integral_set< IntegralRangeT, RangeSetT >::operator-=(), and stm::integral_-set< IntegralRangeT, RangeSetT >::operator|=().
12.50.5.2 template<class IntegralRangeT, class RangeSetT = std::set<IntegralRangeT>> constintegral_type stm::integral_set< IntegralRangeT, RangeSetT >::MaxVal = range_type::MaxVal[static]
Maximal value an integral_set<IntegralRangeT, RangeSetT> object is allowed to contain.
Reimplemented from stm::local::xIntegral_set< IntegralRangeT, RangeSetT >.
Definition at line 724 of file divaids.hpp.
Referenced by stm::integral_set< IntegralRangeT, RangeSetT >::end(), stm::integral_set< Integral-RangeT, RangeSetT >::fill(), stm::integral_set< IntegralRangeT, RangeSetT >::operator-=(), andstm::integral_set< IntegralRangeT, RangeSetT >::operator|=().
The documentation for this class was generated from the following files:
• divaids.hpp• divxaids.hpp
12.51 stm::smartptr::local::item_descr< T, Compare, false, false > Struct Tem-plate Reference
#include <smartptrxaids.hpp>
Collaboration diagram for stm::smartptr::local::item_descr< T, Compare, false, false >:
stm::smartptr::local::item_descr< T, Compare, false, false >
T
ptr
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.51 stm::smartptr::local::item_descr< T, Compare, false, false > Struct Template Reference289
12.51.1 Detailed Description
template<class T, class Compare> struct stm::smartptr::local::item_descr< T, Compare, false, false>
Definition at line 1007 of file smartptrxaids.hpp.
Public Member Functions
• item_descr (const T ∗ptr=NULL, refcount_type=0)• stm::dword id () const• refcount_type getrefcount () const• void increfcount ()• bool decrefcount ()
Public Attributes
• const T ∗ ptr
12.51.2 Constructor & Destructor Documentation
12.51.2.1 template<class T, class Compare> stm::smartptr::local::item_descr< T, Compare, false,false >::item_descr (const T ∗ ptr = NULL, refcount_type = 0) [inline]
Definition at line 1010 of file smartptrxaids.hpp.
12.51.3 Member Function Documentation
12.51.3.1 template<class T, class Compare> stm::dword stm::smartptr::local::item_descr< T,Compare, false, false >::id () const [inline]
Definition at line 1018 of file smartptrxaids.hpp.
12.51.3.2 template<class T, class Compare> refcount_type stm::smartptr::local::item_descr< T,Compare, false, false >::getrefcount () const [inline]
Definition at line 1024 of file smartptrxaids.hpp.
12.51.3.3 template<class T, class Compare> void stm::smartptr::local::item_descr< T, Compare,false, false >::increfcount () [inline]
Definition at line 1030 of file smartptrxaids.hpp.
12.51.3.4 template<class T, class Compare> bool stm::smartptr::local::item_descr< T, Compare,false, false >::decrefcount () [inline]
Definition at line 1036 of file smartptrxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.52 stm::smartptr::local::item_descr< T, Compare, false, true > Struct Template Reference 290
12.51.4 Member Data Documentation
12.51.4.1 template<class T, class Compare> const T∗ stm::smartptr::local::item_descr< T, Com-pare, false, false >::ptr
Definition at line 1041 of file smartptrxaids.hpp.
The documentation for this struct was generated from the following file:
• smartptrxaids.hpp
12.52 stm::smartptr::local::item_descr< T, Compare, false, true > Struct Tem-plate Reference
#include <smartptrxaids.hpp>
Collaboration diagram for stm::smartptr::local::item_descr< T, Compare, false, true >:
stm::smartptr::local::item_descr< T, Compare, false, true >
stm::smartptr::local::item_type< T, Compare >
item
T
ptr
12.52.1 Detailed Description
template<class T, class Compare> struct stm::smartptr::local::item_descr< T, Compare, false, true>
Definition at line 412 of file smartptrxaids.hpp.
Public Types
• typedef item_type< T, Compare > item_t
Public Member Functions
• item_descr (const item_t &item=item_t(), refcount_type=0)• const T ∗ ptr () const• stm::dword id () const• refcount_type getrefcount () const• void increfcount ()• bool decrefcount ()
Public Attributes
• item_t item
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.52 stm::smartptr::local::item_descr< T, Compare, false, true > Struct Template Reference 291
12.52.2 Member Typedef Documentation
12.52.2.1 template<class T, class Compare> typedef item_type<T, Compare>stm::smartptr::local::item_descr< T, Compare, false, true >::item_t
Definition at line 414 of file smartptrxaids.hpp.
12.52.3 Constructor & Destructor Documentation
12.52.3.1 template<class T, class Compare> stm::smartptr::local::item_descr< T, Compare, false,true >::item_descr (const item_t & item = item_t (), refcount_type = 0) [inline]
Definition at line 417 of file smartptrxaids.hpp.
12.52.4 Member Function Documentation
12.52.4.1 template<class T, class Compare> const T∗ stm::smartptr::local::item_descr< T, Com-pare, false, true >::ptr () const [inline]
Definition at line 425 of file smartptrxaids.hpp.
12.52.4.2 template<class T, class Compare> stm::dword stm::smartptr::local::item_descr< T,Compare, false, true >::id () const [inline]
Definition at line 431 of file smartptrxaids.hpp.
12.52.4.3 template<class T, class Compare> refcount_type stm::smartptr::local::item_descr< T,Compare, false, true >::getrefcount () const [inline]
Definition at line 437 of file smartptrxaids.hpp.
12.52.4.4 template<class T, class Compare> void stm::smartptr::local::item_descr< T, Compare,false, true >::increfcount () [inline]
Definition at line 443 of file smartptrxaids.hpp.
12.52.4.5 template<class T, class Compare> bool stm::smartptr::local::item_descr< T, Compare,false, true >::decrefcount () [inline]
Definition at line 449 of file smartptrxaids.hpp.
12.52.5 Member Data Documentation
12.52.5.1 template<class T, class Compare> item_t stm::smartptr::local::item_descr< T, Com-pare, false, true >::item
Definition at line 454 of file smartptrxaids.hpp.
The documentation for this struct was generated from the following file:
• smartptrxaids.hpp
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.53 stm::smartptr::local::item_descr< T, Compare, true, false > Struct Template Reference 292
12.53 stm::smartptr::local::item_descr< T, Compare, true, false > Struct Tem-plate Reference
#include <smartptrxaids.hpp>
Collaboration diagram for stm::smartptr::local::item_descr< T, Compare, true, false >:
stm::smartptr::local::item_descr< T, Compare, true, false >
T
ptr
12.53.1 Detailed Description
template<class T, class Compare> struct stm::smartptr::local::item_descr< T, Compare, true, false>
Definition at line 959 of file smartptrxaids.hpp.
Public Member Functions
• item_descr (const T ∗ptr=NULL, refcount_type refcount=0)• stm::dword id () const• refcount_type getrefcount () const• void increfcount ()• bool decrefcount ()
Public Attributes
• const T ∗ ptr• refcount_type refcount
12.53.2 Constructor & Destructor Documentation
12.53.2.1 template<class T, class Compare> stm::smartptr::local::item_descr< T, Compare, true,false >::item_descr (const T ∗ ptr = NULL, refcount_type refcount = 0) [inline]
Definition at line 962 of file smartptrxaids.hpp.
12.53.3 Member Function Documentation
12.53.3.1 template<class T, class Compare> stm::dword stm::smartptr::local::item_descr< T,Compare, true, false >::id () const [inline]
Definition at line 971 of file smartptrxaids.hpp.
12.53.3.2 template<class T, class Compare> refcount_type stm::smartptr::local::item_descr< T,Compare, true, false >::getrefcount () const [inline]
Definition at line 977 of file smartptrxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.54 stm::smartptr::local::item_descr< T, Compare, true, true > Struct Template Reference 293
12.53.3.3 template<class T, class Compare> void stm::smartptr::local::item_descr< T, Compare,true, false >::increfcount () [inline]
Definition at line 983 of file smartptrxaids.hpp.
12.53.3.4 template<class T, class Compare> bool stm::smartptr::local::item_descr< T, Compare,true, false >::decrefcount () [inline]
Definition at line 990 of file smartptrxaids.hpp.
References StmDebugAidsVerify.
12.53.4 Member Data Documentation
12.53.4.1 template<class T, class Compare> const T∗ stm::smartptr::local::item_descr< T, Com-pare, true, false >::ptr
Definition at line 996 of file smartptrxaids.hpp.
12.53.4.2 template<class T, class Compare> refcount_type stm::smartptr::local::item_descr< T,Compare, true, false >::refcount
Definition at line 997 of file smartptrxaids.hpp.
The documentation for this struct was generated from the following file:
• smartptrxaids.hpp
12.54 stm::smartptr::local::item_descr< T, Compare, true, true > Struct Tem-plate Reference
#include <smartptrxaids.hpp>
Collaboration diagram for stm::smartptr::local::item_descr< T, Compare, true, true >:
stm::smartptr::local::item_descr< T, Compare, true, true >
stm::smartptr::local::item_type< T, Compare >
item
T
ptr
12.54.1 Detailed Description
template<class T, class Compare> struct stm::smartptr::local::item_descr< T, Compare, true, true>
Definition at line 356 of file smartptrxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.54 stm::smartptr::local::item_descr< T, Compare, true, true > Struct Template Reference 294
Public Types
• typedef item_type< T, Compare > item_t
Public Member Functions
• item_descr (const item_t &item=item_t(), refcount_type refcount=0)• const T ∗ ptr () const• stm::dword id () const• refcount_type getrefcount () const• void increfcount ()• bool decrefcount ()
Public Attributes
• item_t item• refcount_type refcount
12.54.2 Member Typedef Documentation
12.54.2.1 template<class T, class Compare> typedef item_type<T, Compare>stm::smartptr::local::item_descr< T, Compare, true, true >::item_t
Definition at line 358 of file smartptrxaids.hpp.
12.54.3 Constructor & Destructor Documentation
12.54.3.1 template<class T, class Compare> stm::smartptr::local::item_descr< T, Compare, true,true >::item_descr (const item_t & item = item_t (), refcount_type refcount = 0) [inline]
Definition at line 361 of file smartptrxaids.hpp.
12.54.4 Member Function Documentation
12.54.4.1 template<class T, class Compare> const T∗ stm::smartptr::local::item_descr< T, Com-pare, true, true >::ptr () const [inline]
Definition at line 370 of file smartptrxaids.hpp.
12.54.4.2 template<class T, class Compare> stm::dword stm::smartptr::local::item_descr< T,Compare, true, true >::id () const [inline]
Definition at line 376 of file smartptrxaids.hpp.
12.54.4.3 template<class T, class Compare> refcount_type stm::smartptr::local::item_descr< T,Compare, true, true >::getrefcount () const [inline]
Definition at line 382 of file smartptrxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.55 stm::smartptr::local::item_type< T, Compare > Struct Template Reference 295
12.54.4.4 template<class T, class Compare> void stm::smartptr::local::item_descr< T, Compare,true, true >::increfcount () [inline]
Definition at line 388 of file smartptrxaids.hpp.
12.54.4.5 template<class T, class Compare> bool stm::smartptr::local::item_descr< T, Compare,true, true >::decrefcount () [inline]
Definition at line 395 of file smartptrxaids.hpp.
References StmDebugAidsVerify.
12.54.5 Member Data Documentation
12.54.5.1 template<class T, class Compare> item_t stm::smartptr::local::item_descr< T, Com-pare, true, true >::item
Definition at line 401 of file smartptrxaids.hpp.
12.54.5.2 template<class T, class Compare> refcount_type stm::smartptr::local::item_descr< T,Compare, true, true >::refcount
Definition at line 402 of file smartptrxaids.hpp.
The documentation for this struct was generated from the following file:
• smartptrxaids.hpp
12.55 stm::smartptr::local::item_type< T, Compare > Struct Template Reference
#include <smartptrxaids.hpp>
Collaboration diagram for stm::smartptr::local::item_type< T, Compare >:
stm::smartptr::local::item_type< T, Compare >
T
ptr
12.55.1 Detailed Description
template<class T, class Compare> struct stm::smartptr::local::item_type< T, Compare >
Definition at line 321 of file smartptrxaids.hpp.
Public Member Functions
• item_type (const T ∗ptr=NULL, stm::dword id=0)• bool operator< (const item_type &other) const
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.56 stm::logger< stdIndent, lineLength, errorConsole, lockingPolicy > Class TemplateReference 296
Public Attributes
• const T ∗ ptr• stm::dword id
12.55.2 Constructor & Destructor Documentation
12.55.2.1 template<class T, class Compare> stm::smartptr::local::item_type< T, Compare>::item_type (const T ∗ ptr = NULL, stm::dword id = 0) [inline]
Definition at line 323 of file smartptrxaids.hpp.
12.55.3 Member Function Documentation
12.55.3.1 template<class T, class Compare> bool stm::smartptr::local::item_type< T, Compare>::operator< (const item_type< T, Compare > & other) const [inline]
Definition at line 328 of file smartptrxaids.hpp.
References stm::smartptr::local::item_type< T, Compare >::id, and stm::smartptr::local::item_type< T,Compare >::ptr.
12.55.4 Member Data Documentation
12.55.4.1 template<class T, class Compare> const T∗ stm::smartptr::local::item_type< T, Com-pare >::ptr
Definition at line 335 of file smartptrxaids.hpp.
Referenced by stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange>::load(), stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange >::mapped_-ptr(), stm::smartptr::local::comp_value_id< T, Compare >::operator()(), stm::smartptr::local::item_type<T, Compare >::operator<(), and stm::smartptr::local::repository_type< T, Compare, Allocator, ref-counted, multirange >::remove().
12.55.4.2 template<class T, class Compare> stm::dword stm::smartptr::local::item_type< T,Compare >::id
Definition at line 336 of file smartptrxaids.hpp.
Referenced by stm::smartptr::local::comp_id< T, Compare >::operator()(), stm::smartptr::local::comp_-value_id< T, Compare >::operator()(), stm::smartptr::local::item_type< T, Compare >::operator<(), andstm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, multirange >::remove().
The documentation for this struct was generated from the following file:
• smartptrxaids.hpp
12.56 stm::logger< stdIndent, lineLength, errorConsole, lockingPolicy > ClassTemplate Reference
#include <loggeraids.hpp>
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.56 stm::logger< stdIndent, lineLength, errorConsole, lockingPolicy > Class TemplateReference 297
Inheritance diagram for stm::logger< stdIndent, lineLength, errorConsole, lockingPolicy >:
stm::logger< stdIndent, lineLength, errorConsole, lockingPolicy >stm::basic_logger< std::string, stdIndent, lineLength, lockingPolicy >
stm::logger_base
stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >
std::basic_ostringstream< std::string ::value_type, std::string ::traits_type, std::string ::allocator_type >
stm::local::basic_xlogger< std::string, lockingPolicy >
stm::local::basic_xlogger< StringT, lockingPolicy >< std::string, lockingPolicy >
< std::string, stdIndent, lineLength, lockingPolicy >
Collaboration diagram for stm::logger< stdIndent, lineLength, errorConsole, lockingPolicy >:
stm::logger< stdIndent, lineLength, errorConsole, lockingPolicy >stm::basic_logger< std::string, stdIndent, lineLength, lockingPolicy >
stm::logger_base
stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >
std::basic_ostringstream< std::string ::value_type, std::string ::traits_type, std::string ::allocator_type >
stm::local::basic_xlogger< std::string, lockingPolicy >
stm::local::basic_xlogger< StringT, lockingPolicy >::Stream output
stm::local::basic_xlogger< StringT, lockingPolicy >output
stm::local::basic_xlogger< StringT, lockingPolicy >::Fmtfmt
< std::string, lockingPolicy >
< std::string, stdIndent, lineLength, lockingPolicy >
12.56.1 Detailed Description
template<word stdIndent = 4, word lineLength = 79, bool errorConsole = false, word lockingPolicy= logger_base::NoLocking> class stm::logger< stdIndent, lineLength, errorConsole, lockingPolicy>
Class template to manage formatted logging on a std::string based output stream (normally a log file)and optionally on a second std::string based stream (normally a console, by default std::cout, if templateparameter errorConsole is false (the default), or else std::cerr).
Since logger is indirectly derived from a std::ostringstream, data insertion into logger objects is easilypossible. On construction the base class std::ostingstream object is default constructed and then initializedto use uppercase letters for hexadecimal numbers and to use right adjusted fixed point notation for floatingpoint numbers. If formatted printig to a stream is done, the default value for indentation is given by thetemplate parameter stdIndent and the default line length is given by the template parameter lineLength.
According to the template parameter lockingPolicy either no locking is possible (logger_base::NoLocking)or an unnamed mutex (see Abstract Data Type StmMutex) for logger_base::ProcessLocking or anamed mutex (see Abstract Data Type StmNamedMutex) for logger_base::SystemLocking is used bystm::logger::locker to perform locking across all threads of the calling process or across all threads of thesystem, respectively. The mutex name for system-wide locking has to be supplied to the constructor ofstm::logger.
Examples:
filesystest.cpp, smartptrtest.cpp, and sudoku.cpp.
Definition at line 414 of file loggeraids.hpp.
Public Member Functions
• logger (bool enableStream=false, std::ostream &stream=errorConsole?std::cerr:std::cout, conststd::string &mutexName=std::string())
Construct a logger object to print on stream (default the standard console), if enableStream is true (defaultfalse).
• logger (bool enableStream, const std::string &mutexName)Construct a logger object to print on stream (default the standard console), if enableStream is true.
• logger (std::ostream &stream, const std::string &mutexName)
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.57 stm::logger_base Class Reference 298
Construct a logger object to print on stream.
• logger (std::ostream &stream, bool enableConsole=false, const std::string &mutex-Name=std::string())
Construct a logger object to print on stream and on the standard console, if enableConsole is true (defaultfalse).
• logger (std::ostream &stream, std::ostream &console, const std::string &mutexName=std::string())Construct a logger object to print on stream and on console.
• void setConsole ()Configure this logger object to print on the standard console.
12.56.2 Constructor & Destructor Documentation
12.56.2.1 template<word stdIndent, word lineLength, bool errorConsole, word lockingPolicy>stm::logger< stdIndent, lineLength, errorConsole, lockingPolicy >::logger (bool enableStream= false, std::ostream & stream = errorConsole ? std::cerr : std::cout, conststd::string & mutexName = std::string ()) [inline]
Construct a logger object to print on stream (default the standard console), if enableStream is true (defaultfalse).
mutexName is the name of the mutex used for system-wide locking, if applicable. If for system-widelocking mutexName is empty, the standard name ’StmLoggerLock’ is used.
Definition at line 1132 of file loggerxaids.hpp.
References stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::setStream().
The documentation for this class was generated from the following files:
• loggeraids.hpp• loggerxaids.hpp
12.57 stm::logger_base Class Reference
#include <loggeraids.hpp>
Inheritance diagram for stm::logger_base:
stm::logger_base stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >
stm::basic_logger< std::string, stdIndent, lineLength, lockingPolicy >
stm::basic_logger< std::wstring, stdIndent, lineLength, lockingPolicy >
< std::string, stdIndent, lineLength, lockingPolicy >
< std::wstring, stdIndent, lineLength, lockingPolicy >
stm::logger< stdIndent, lineLength, errorConsole, lockingPolicy >
stm::wlogger< stdIndent, lineLength, errorConsole, lockingPolicy >
12.57.1 Detailed Description
Common base class of all basic_logger class template specializations.
Definition at line 103 of file loggeraids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.58 stm::tools::LvdsPacket< ContextT > Class Template Reference 299
Public Types
• enum LockingPolicy {
NoLocking = 0,
ProcessLocking = 1,
SystemLocking = 2 }Locking policy for objects of derived classes.
12.57.2 Member Enumeration Documentation
12.57.2.1 enum stm::logger_base::LockingPolicy
Locking policy for objects of derived classes.
Enumerator:
NoLocking No locking possible.
ProcessLocking Locking all threads of the calling process.
SystemLocking Locking all threads in the system.
Reimplemented in stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >, stm::basic_-logger< std::string, stdIndent, lineLength, lockingPolicy >, and stm::basic_logger< std::wstring, stdIn-dent, lineLength, lockingPolicy >.
Definition at line 107 of file loggeraids.hpp.
The documentation for this class was generated from the following file:
• loggeraids.hpp
12.58 stm::tools::LvdsPacket< ContextT > Class Template Reference
#include <lvdspacket.hpp>
Inheritance diagram for stm::tools::LvdsPacket< ContextT >:
stm::tools::LvdsPacket< ContextT >
stm::tools::local::xLvdsPacket< ContextT >
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.58 stm::tools::LvdsPacket< ContextT > Class Template Reference 300
Collaboration diagram for stm::tools::LvdsPacket< ContextT >:
stm::tools::LvdsPacket< ContextT >
stm::tools::local::xLvdsPacket< ContextT >
stm::tools::BinMessage< ContextT >
parent_
stm::byte_iterator_range
body_
stm::tools::BaseMessage< ContextT >
stm::tools::local::xBaseMessage< ContextT >
body_
stm::tools::local::xBinMessage< ContextT >
message_
stm::tools::MsgTimestamp
timestamp_
stm::tools::local::xMsgTimestamp
12.58.1 Detailed Description
template<class ContextT> class stm::tools::LvdsPacket< ContextT >
LVDS packet contained in a binary message.
Definition at line 106 of file lvdspacket.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.58 stm::tools::LvdsPacket< ContextT > Class Template Reference 301
Public Types
• enum {
NoError = 0x00000000,
LengthError = 0x00000001,
PriorityError = 0x00000002,
PayloadLengthError = 0x00000004,
DataTypeError = 0x00000008 }Bitwise orable error status flags.
• enum {
MaxPayloadLength = 40,
MaxAntennas = 12 }LVDS packet constants.
• typedef ContextT context_typeContext type of the messages to be scanned.
• typedef BinMessage< ContextT > parent_typeType of the binary message wrapping this DspMessage.
Public Member Functions
• LvdsPacket (const parent_type &parent)Construct a LvdsPacket object contained in the binary message parent.
• virtual ∼LvdsPacket ()Virtual destructor to allow polymorphic class hierarchies.
• dword status () constReturns the status of the LVDS packet.
• word lvdsSubslot () constReturns the LVDS subslot field of the LVDS packet.
• word ubrId () constReturns the UbrID field of the LVDS packet.
• byte priority () constReturns the Priority field of the LVDS packet.
• word antennaFlags () constReturns the antenna flags field of the LVDS packet.
• byte dataType () constReturns the data type field of the LVDS packet.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.58 stm::tools::LvdsPacket< ContextT > Class Template Reference 302
• bool frq () constReturns the carrier frequency extension bit of the LVDS packet.
• bool rsv () constReturns the reserved bit of the LVDS packet.
• const byte_iterator_range & body () constReturns the byte range consisting of the packet’s payload excluding the other fields.
• byte fcs () constReturns the FCS field of the LVDS packet.
• const parent_type & parent ()Returns the packet’s parent.
Private Types
• typedef local::xLvdsPacket< ContextT > LvdsPacketImplImplementation.
Classes
• struct AichLVDS packet Aich values.
• struct DataTypeLVDS packet data type values.
• struct PriorityLVDS packet priority values.
12.58.2 Member Typedef Documentation
12.58.2.1 template<class ContextT> typedef local::xLvdsPacket<ContextT>stm::tools::LvdsPacket< ContextT >::LvdsPacketImpl [private]
Implementation.
Definition at line 110 of file lvdspacket.hpp.
12.58.2.2 template<class ContextT> typedef ContextT stm::tools::LvdsPacket< ContextT>::context_type
Context type of the messages to be scanned.
Reimplemented from stm::tools::local::xLvdsPacket< ContextT >.
Definition at line 114 of file lvdspacket.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.58 stm::tools::LvdsPacket< ContextT > Class Template Reference 303
12.58.2.3 template<class ContextT> typedef BinMessage<ContextT> stm::tools::LvdsPacket<ContextT >::parent_type
Type of the binary message wrapping this DspMessage.
Reimplemented from stm::tools::local::xLvdsPacket< ContextT >.
Definition at line 117 of file lvdspacket.hpp.
12.58.3 Member Enumeration Documentation
12.58.3.1 template<class ContextT> anonymous enum
Bitwise orable error status flags.
Enumerator:
NoErrorLengthErrorPriorityErrorPayloadLengthErrorDataTypeError
Definition at line 120 of file lvdspacket.hpp.
12.58.3.2 template<class ContextT> anonymous enum
LVDS packet constants.
Enumerator:
MaxPayloadLengthMaxAntennas
Definition at line 130 of file lvdspacket.hpp.
12.58.4 Constructor & Destructor Documentation
12.58.4.1 template<class ContextT> stm::tools::LvdsPacket< ContextT >::LvdsPacket (constparent_type & parent) [inline]
Construct a LvdsPacket object contained in the binary message parent.
Definition at line 217 of file xlvdspacket.hpp.
References stm::tools::LvdsPacket< ContextT >::Priority::Aich, stm::tools::LvdsPacket<ContextT >::DataType::Aich, stm::tools::LvdsPacket< ContextT >::Priority::Amplitude,stm::tools::LvdsPacket< ContextT >::DataType::Amplitude, stm::tools::LvdsPacket< Con-textT >::Priority::AmplNoOffs, stm::tools::LvdsPacket< ContextT >::DataType::AmplNoOffs,stm::tools::local::xLvdsPacket< ContextT >::antennaFlags_, stm::tools::BinMessage< ContextT>::body(), stm::tools::LvdsPacket< ContextT >::body(), stm::tools::local::xLvdsPacket< Con-textT >::body_, stm::tools::local::xLvdsPacket< ContextT >::dataType_, stm::tools::LvdsPacket<ContextT >::DataTypeError, stm::tools::LvdsPacket< ContextT >::Priority::DlTpc0,stm::tools::LvdsPacket< ContextT >::DataType::DlTpc0, stm::tools::LvdsPacket< ContextT
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.58 stm::tools::LvdsPacket< ContextT > Class Template Reference 304
>::Priority::DlTpc1, stm::tools::LvdsPacket< ContextT >::DataType::DlTpc1, stm::tools::LvdsPacket<ContextT >::Priority::DtxCtrl, stm::tools::LvdsPacket< ContextT >::DataType::DtxCtrl,stm::tools::local::xLvdsPacket< ContextT >::fcs_, stm::tools::local::xLvdsPacket< ContextT >::frq_-, stm::tools::local::xLvdsPacket< ContextT >::HeaderSize, stm::tools::LvdsPacket< ContextT>::DataType::Hho, stm::tools::LvdsPacket< ContextT >::LengthError, stm::tools::local::xLvdsPacket<ContextT >::lvdsSubslot_, stm::tools::LvdsPacket< ContextT >::MaxPayloadLength,stm::tools::LvdsPacket< ContextT >::NoError, stm::tools::local::xLvdsPacket< ContextT >::parent_,stm::tools::LvdsPacket< ContextT >::PayloadLengthError, stm::tools::local::xLvdsPacket< ContextT>::priority_, stm::tools::LvdsPacket< ContextT >::PriorityError, stm::tools::LvdsPacket< ContextT>::DataType::Rsv, stm::tools::local::xLvdsPacket< ContextT >::rsv_, stm::tools::local::xLvdsPacket<ContextT >::status_, stm::tools::local::xLvdsPacket< ContextT >::ubrId_, stm::tools::LvdsPacket<ContextT >::Priority::Ue, stm::tools::LvdsPacket< ContextT >::DataType::Ue, stm::tools::LvdsPacket<ContextT >::DataType::UeCm0, stm::tools::LvdsPacket< ContextT >::DataType::UeCm0Scr, andstm::tools::LvdsPacket< ContextT >::DataType::UeCm1.
12.58.4.2 template<class ContextT> stm::tools::LvdsPacket< ContextT >::∼LvdsPacket ()[inline, virtual]
Virtual destructor to allow polymorphic class hierarchies.
Definition at line 342 of file xlvdspacket.hpp.
12.58.5 Member Function Documentation
12.58.5.1 template<class ContextT> dword stm::tools::LvdsPacket< ContextT >::status () const[inline]
Returns the status of the LVDS packet.
Definition at line 346 of file xlvdspacket.hpp.
References stm::tools::local::xLvdsPacket< ContextT >::status_.
12.58.5.2 template<class ContextT> word stm::tools::LvdsPacket< ContextT >::lvdsSubslot ()const [inline]
Returns the LVDS subslot field of the LVDS packet.
Definition at line 353 of file xlvdspacket.hpp.
References stm::tools::local::xLvdsPacket< ContextT >::lvdsSubslot_.
12.58.5.3 template<class ContextT> word stm::tools::LvdsPacket< ContextT >::ubrId () const[inline]
Returns the UbrID field of the LVDS packet.
Definition at line 360 of file xlvdspacket.hpp.
References stm::tools::local::xLvdsPacket< ContextT >::ubrId_.
12.58.5.4 template<class ContextT> byte stm::tools::LvdsPacket< ContextT >::priority () const[inline]
Returns the Priority field of the LVDS packet.
Definition at line 367 of file xlvdspacket.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.58 stm::tools::LvdsPacket< ContextT > Class Template Reference 305
References stm::tools::local::xLvdsPacket< ContextT >::priority_.
12.58.5.5 template<class ContextT> word stm::tools::LvdsPacket< ContextT >::antennaFlags ()const [inline]
Returns the antenna flags field of the LVDS packet.
Definition at line 374 of file xlvdspacket.hpp.
References stm::tools::local::xLvdsPacket< ContextT >::antennaFlags_.
12.58.5.6 template<class ContextT> byte stm::tools::LvdsPacket< ContextT >::dataType () const[inline]
Returns the data type field of the LVDS packet.
Definition at line 381 of file xlvdspacket.hpp.
References stm::tools::local::xLvdsPacket< ContextT >::dataType_.
12.58.5.7 template<class ContextT> bool stm::tools::LvdsPacket< ContextT >::frq () const[inline]
Returns the carrier frequency extension bit of the LVDS packet.
Definition at line 388 of file xlvdspacket.hpp.
References stm::tools::local::xLvdsPacket< ContextT >::frq_.
12.58.5.8 template<class ContextT> bool stm::tools::LvdsPacket< ContextT >::rsv () const[inline]
Returns the reserved bit of the LVDS packet.
Definition at line 395 of file xlvdspacket.hpp.
References stm::tools::local::xLvdsPacket< ContextT >::rsv_.
12.58.5.9 template<class ContextT> const byte_iterator_range & stm::tools::LvdsPacket< Con-textT >::body () const [inline]
Returns the byte range consisting of the packet’s payload excluding the other fields.
Definition at line 402 of file xlvdspacket.hpp.
References stm::tools::local::xLvdsPacket< ContextT >::body_.
Referenced by stm::tools::LvdsPacket< ContextT >::LvdsPacket().
12.58.5.10 template<class ContextT> byte stm::tools::LvdsPacket< ContextT >::fcs () const[inline]
Returns the FCS field of the LVDS packet.
Definition at line 409 of file xlvdspacket.hpp.
References stm::tools::local::xLvdsPacket< ContextT >::fcs_.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.59 stm::tools::LvdsPacket< ContextT >::Aich Struct Reference 306
12.58.5.11 template<class ContextT> const LvdsPacket< ContextT >::parent_type &stm::tools::LvdsPacket< ContextT >::parent () [inline]
Returns the packet’s parent.
Definition at line 416 of file xlvdspacket.hpp.
References stm::tools::local::xLvdsPacket< ContextT >::parent_.
The documentation for this class was generated from the following files:
• lvdspacket.hpp• xlvdspacket.hpp
12.59 stm::tools::LvdsPacket< ContextT >::Aich Struct Reference
#include <lvdspacket.hpp>
12.59.1 Detailed Description
template<class ContextT> struct stm::tools::LvdsPacket< ContextT >::Aich
LVDS packet Aich values.
Definition at line 172 of file lvdspacket.hpp.
Public Types
• enum {
Zero = 0,
Plus = 2,
Minus = 3,
PayloadLength = 4 }
12.59.2 Member Enumeration Documentation
12.59.2.1 template<class ContextT> anonymous enum
Enumerator:
ZeroPlusMinusPayloadLength
Definition at line 174 of file lvdspacket.hpp.
The documentation for this struct was generated from the following file:
• lvdspacket.hpp
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.60 stm::tools::LvdsPacket< ContextT >::DataType Struct Reference 307
12.60 stm::tools::LvdsPacket< ContextT >::DataType Struct Reference
#include <lvdspacket.hpp>
12.60.1 Detailed Description
template<class ContextT> struct stm::tools::LvdsPacket< ContextT >::DataType
LVDS packet data type values.
Definition at line 137 of file lvdspacket.hpp.
Public Types
• enum {
DlTpc0 = 0,
DlTpc1 = 1,
Aich = 2,
AmplNoOffs = 3,
Amplitude = 4,
Ue = 5,
UeCm0 = 6,
UeCm0Scr = 7,
UeCm1 = 8,
Rsv = 9,
DtxCtrl = 10,
Hho = 12 }
12.60.2 Member Enumeration Documentation
12.60.2.1 template<class ContextT> anonymous enum
Enumerator:
DlTpc0DlTpc1AichAmplNoOffsAmplitudeUeUeCm0UeCm0ScrUeCm1RsvDtxCtrl
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.61 stm::tools::LvdsPacket< ContextT >::Priority Struct Reference 308
Hho
Definition at line 139 of file lvdspacket.hpp.
The documentation for this struct was generated from the following file:
• lvdspacket.hpp
12.61 stm::tools::LvdsPacket< ContextT >::Priority Struct Reference
#include <lvdspacket.hpp>
12.61.1 Detailed Description
template<class ContextT> struct stm::tools::LvdsPacket< ContextT >::Priority
LVDS packet priority values.
Definition at line 157 of file lvdspacket.hpp.
Public Types
• enum {
DlTpc0 = 0,
DlTpc1 = 0,
Aich = 2,
AmplNoOffs = 1,
Amplitude = 1,
Ue = 3,
DtxCtrl = 3 }
12.61.2 Member Enumeration Documentation
12.61.2.1 template<class ContextT> anonymous enum
Enumerator:
DlTpc0DlTpc1AichAmplNoOffsAmplitudeUeDtxCtrl
Definition at line 159 of file lvdspacket.hpp.
The documentation for this struct was generated from the following file:
• lvdspacket.hpp
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.62 stm::smartptr::MakeMultirange< Policy > Struct Template Reference 309
12.62 stm::smartptr::MakeMultirange< Policy > Struct Template Reference
#include <smartptraids.hpp>
12.62.1 Detailed Description
template<class Policy> struct stm::smartptr::MakeMultirange< Policy >
Class template serving as wrapper of template parameter Policy to ensure the multirange policy property.
Definition at line 174 of file smartptraids.hpp.
Public Types
• typedef Policy::surjective surjectiveSurjective policy type being the same as that of the tempalte type prameter Policy.
• typedef boost::mpl::true_ multirangeMultirange policy type being boost::mpl::true_.
12.62.2 Member Typedef Documentation
12.62.2.1 template<class Policy> typedef Policy::surjective stm::smartptr::MakeMultirange<Policy >::surjective
Surjective policy type being the same as that of the tempalte type prameter Policy.
Definition at line 178 of file smartptraids.hpp.
12.62.2.2 template<class Policy> typedef boost::mpl::true_ stm::smartptr::MakeMultirange<Policy >::multirange
Multirange policy type being boost::mpl::true_.
Definition at line 181 of file smartptraids.hpp.
The documentation for this struct was generated from the following file:
• smartptraids.hpp
12.63 stm::smartptr::MakeSurjective< Policy > Struct Template Reference
#include <smartptraids.hpp>
12.63.1 Detailed Description
template<class Policy> struct stm::smartptr::MakeSurjective< Policy >
Class template serving as wrapper of template parameter Policy to ensure the surjective policy property.
Definition at line 159 of file smartptraids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.64 stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange > ClassTemplate Reference 310
Public Types
• typedef boost::mpl::true_ surjectiveSurjective policy type being boost::mpl::true_.
• typedef Policy::multirange multirangeMultirange policy type being the same as that of the tempalte type prameter Policy.
12.63.2 Member Typedef Documentation
12.63.2.1 template<class Policy> typedef boost::mpl::true_ stm::smartptr::MakeSurjective< Pol-icy >::surjective
Surjective policy type being boost::mpl::true_.
Definition at line 162 of file smartptraids.hpp.
12.63.2.2 template<class Policy> typedef Policy::multirange stm::smartptr::MakeSurjective<Policy >::multirange
Multirange policy type being the same as that of the tempalte type prameter Policy.
Definition at line 166 of file smartptraids.hpp.
The documentation for this struct was generated from the following file:
• smartptraids.hpp
12.64 stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted,multirange > Class Template Reference
#include <smartptrxaids.hpp>
Inheritance diagram for stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange>:
stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange >
stm::smartptr::local::mapped_ptr< T, Compare, Allocator, Policy::surjective::value, Policy::multirange::value >< T, Compare, Allocator, Policy::surjective::value, Policy::multirange::value >
stm::smartptr::local::mapped_ptr< T, Compare, Allocator, stm::smartptr::MakeMultirange< Policy >::surjective::value, stm::smartptr::MakeMultirange< Policy >::multirange::value >< T, Compare, Allocator, stm::smartptr::MakeMultirange< Policy >::surjective::value, stm::smartptr::MakeMultirange< Policy >::multirange::value >
stm::smartptr::injective_ptr< T, Compare, Allocator, Policy >
stm::smartptr::injective_set< T, Compare, Allocator, stm::smartptr::MakeMultirange< Policy > >::accessor
stm::smartptr::injective_ptr< T, Compare, Allocator, stm::smartptr::MakeMultirange< Policy > >
< T, Compare, Allocator, stm::smartptr::MakeMultirange< Policy > >
Collaboration diagram for stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multi-range >:
stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange >
T
ptr_
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.64 stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange > ClassTemplate Reference 311
12.64.1 Detailed Description
template<class T, class Compare, class Allocator, bool refcounted, bool multirange> classstm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange >
stm::smartptr::injective_ptr implementation base class template.
Definition at line 199 of file smartptrxaids.hpp.
Public Types
• typedef mapped_ptr< T, Compare, Allocator, refcounted, multirange > mapped_ptr_impl• typedef repository_type< T, Compare, Allocator, refcounted, multirange > repository
Public Member Functions
• mapped_ptr (rangeid_type rangeid=rangeid_type())• mapped_ptr (const mapped_ptr_impl &other)• mapped_ptr (const T &value, rangeid_type rangeid=rangeid_type(), bool store=true)• ∼mapped_ptr ()• void swap (mapped_ptr< T, Compare, Allocator, refcounted, multirange > &other)• stm::dword id () const• refcount_type getrefcount () const• template<class ArchiveT>
void save (ArchiveT &ar, const unsigned int version) const• template<class ArchiveT>
void load (ArchiveT &ar, const unsigned int version)• template<class ArchiveT>
void serialize (ArchiveT &ar, const unsigned int version)
Static Public Member Functions
• static void init ()
Public Attributes
• const T ∗ ptr_• stm::dword id_
Static Public Attributes
• static repository_type< T, Compare, Allocator, refcounted, multirange > ∗ repository_ = NULLThe static repository holding all accessors of all ranges.
Friends
• class boost::serialization::access
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.64 stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange > ClassTemplate Reference 312
Classes
• class rangeid_type
12.64.2 Member Typedef Documentation
12.64.2.1 template<class T, class Compare, class Allocator, bool refcounted, boolmultirange> typedef mapped_ptr< T, Compare, Allocator, refcounted, multirange >stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange >::mapped_-ptr_impl
Reimplemented in stm::smartptr::injective_ptr< T, Compare, Allocator, Policy >, andstm::smartptr::injective_ptr< T, Compare, Allocator, stm::smartptr::MakeMultirange< Policy > >.
Definition at line 211 of file smartptrxaids.hpp.
12.64.2.2 template<class T, class Compare, class Allocator, bool refcounted, boolmultirange> typedef repository_type< T, Compare, Allocator, refcounted, multirange >stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange >::repository
Reimplemented in stm::smartptr::injective_ptr< T, Compare, Allocator, Policy >, andstm::smartptr::injective_ptr< T, Compare, Allocator, stm::smartptr::MakeMultirange< Policy > >.
Definition at line 220 of file smartptrxaids.hpp.
12.64.3 Constructor & Destructor Documentation
12.64.3.1 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange >::mapped_ptr(rangeid_type rangeid = rangeid_type ()) [inline]
Definition at line 1303 of file smartptrxaids.hpp.
12.64.3.2 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange >::mapped_ptr(const mapped_ptr_impl & other) [inline]
Definition at line 1327 of file smartptrxaids.hpp.
References StmDebugAidsVerify.
12.64.3.3 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange >::mapped_ptr(const T & value, rangeid_type rangeid = rangeid_type (), bool store = true) [inline]
Definition at line 1356 of file smartptrxaids.hpp.
References stm::smartptr::local::item_type< T, Compare >::ptr.
12.64.3.4 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange >::∼mapped_-ptr () [inline]
Definition at line 1443 of file smartptrxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.64 stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange > ClassTemplate Reference 313
References stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange>::getrefcount(), stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange>::id_, stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange >::ptr_,stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange >::repository_, andStmDebugAidsVerify.
12.64.4 Member Function Documentation
12.64.4.1 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>void stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange >::swap(mapped_ptr< T, Compare, Allocator, refcounted, multirange > & other) [inline]
Definition at line 1471 of file smartptrxaids.hpp.
References stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange >::id_-, stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange >::ptr_, andstm::smartptr::swap().
Referenced by stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, false >::load().
12.64.4.2 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>stm::dword stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange>::id () const [inline]
Definition at line 248 of file smartptrxaids.hpp.
12.64.4.3 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>refcount_type stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange>::getrefcount () const [inline]
Definition at line 1491 of file smartptrxaids.hpp.
References StmDebugAidsVerify.
Referenced by stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, false >::∼mapped_-ptr(), and stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange>::∼mapped_ptr().
12.64.4.4 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>void stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange >::init ()[inline, static]
Definition at line 1521 of file smartptrxaids.hpp.
References stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange>::repository_, and StmDebugAidsVerify.
12.64.4.5 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>template<class ArchiveT> void stm::smartptr::local::mapped_ptr< T, Compare, Allocator, ref-counted, multirange >::save (ArchiveT & ar, const unsigned int version) const [inline]
Definition at line 1545 of file smartptrxaids.hpp.
12.64.4.6 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>template<class ArchiveT> void stm::smartptr::local::mapped_ptr< T, Compare, Allocator, ref-
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.64 stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange > ClassTemplate Reference 314
counted, multirange >::load (ArchiveT & ar, const unsigned int version) [inline]
Definition at line 1570 of file smartptrxaids.hpp.
References stm::smartptr::local::item_type< T, Compare >::ptr, and stm::swap().
12.64.4.7 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>template<class ArchiveT> void stm::smartptr::local::mapped_ptr< T, Compare, Allocator, ref-counted, multirange >::serialize (ArchiveT & ar, const unsigned int version) [inline]
Definition at line 1655 of file smartptrxaids.hpp.
12.64.5 Friends And Related Function Documentation
12.64.5.1 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>friend class boost::serialization::access [friend]
Reimplemented in stm::smartptr::injective_ptr< T, Compare, Allocator, Policy >, andstm::smartptr::injective_ptr< T, Compare, Allocator, stm::smartptr::MakeMultirange< Policy > >.
Definition at line 201 of file smartptrxaids.hpp.
12.64.6 Member Data Documentation
12.64.6.1 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>const T∗ stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange>::ptr_
Definition at line 266 of file smartptrxaids.hpp.
Referenced by stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, false>::load(), stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, false >::save(),stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, false >::swap(),stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange >::swap(),stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, false >::∼mapped_ptr(), andstm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange >::∼mapped_ptr().
12.64.6.2 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>stm::dword stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange>::id_
Definition at line 267 of file smartptrxaids.hpp.
Referenced by stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange>::swap(), and stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange>::∼mapped_ptr().
12.64.6.3 template<class T, class Compare, class Allocator, bool refcounted, boolmultirange> repository_type< T, Compare, Allocator, refcounted, multirange > ∗stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange >::repository_= NULL [inline, static]
The static repository holding all accessors of all ranges.
Definition at line 270 of file smartptrxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.65 stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange>::rangeid_type Class Reference 315
Referenced by stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, false>::init(), stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange>::init(), stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, false >::load(),stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, false >::∼mapped_ptr(), andstm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange >::∼mapped_ptr().
The documentation for this class was generated from the following file:
• smartptrxaids.hpp
12.65 stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted,multirange >::rangeid_type Class Reference
#include <smartptrxaids.hpp>
12.65.1 Detailed Description
template<class T, class Compare, class Allocator, bool refcounted, bool multirange> classstm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange >::rangeid_-type
Definition at line 222 of file smartptrxaids.hpp.
Public Member Functions
• rangeid_type (stm::dword id=0)• operator stm::dword () const
Private Attributes
• stm::dword id_
12.65.2 Constructor & Destructor Documentation
12.65.2.1 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange >::rangeid_-type::rangeid_type (stm::dword id = 0) [inline, explicit]
Definition at line 225 of file smartptrxaids.hpp.
12.65.3 Member Function Documentation
12.65.3.1 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange >::rangeid_-type::operator stm::dword () const [inline]
Definition at line 229 of file smartptrxaids.hpp.
References stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange>::rangeid_type::id_.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.66 stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, false > ClassTemplate Reference 316
12.65.4 Member Data Documentation
12.65.4.1 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>stm::dword stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange>::rangeid_type::id_ [private]
Definition at line 235 of file smartptrxaids.hpp.
Referenced by stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, false >::rangeid_-type::operator stm::dword(), and stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted,multirange >::rangeid_type::operator stm::dword().
The documentation for this class was generated from the following file:
• smartptrxaids.hpp
12.66 stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted,false > Class Template Reference
#include <smartptrxaids.hpp>
Collaboration diagram for stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, false >:
stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, false >
stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, false > repository_
T
ptr_
12.66.1 Detailed Description
template<class T, class Compare, class Allocator, bool refcounted> classstm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, false >
Definition at line 879 of file smartptrxaids.hpp.
Public Types
• typedef mapped_ptr< T, Compare, Allocator, refcounted, false > mapped_ptr_impl• typedef repository_type< T, Compare, Allocator, refcounted, false > repository
Public Member Functions
• mapped_ptr (rangeid_type rangeid=rangeid_type())• mapped_ptr (const mapped_ptr_impl &other)• mapped_ptr (const T &value, rangeid_type rangeid=rangeid_type(), bool store=true)• ∼mapped_ptr ()• void swap (mapped_ptr< T, Compare, Allocator, refcounted, false > &other)• stm::dword id () const• refcount_type getrefcount () const• template<class ArchiveT>
void save (ArchiveT &ar, const unsigned int version) const
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.66 stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, false > ClassTemplate Reference 317
• template<class ArchiveT>
void load (ArchiveT &ar, const unsigned int version)• template<class ArchiveT>
void serialize (ArchiveT &ar, const unsigned int version)
Static Public Member Functions
• static void init ()
Public Attributes
• const T ∗ ptr_
Static Public Attributes
• static repository_type< T, Compare, Allocator, refcounted, false > ∗ repository_ = NULLThe static repository holding all accessors of all ranges.
Friends
• class boost::serialization::access
Classes
• class rangeid_type
12.66.2 Member Typedef Documentation
12.66.2.1 template<class T, class Compare, class Allocator, bool refcounted> typedef mapped_-ptr< T, Compare, Allocator, refcounted, false > stm::smartptr::local::mapped_ptr< T, Compare,Allocator, refcounted, false >::mapped_ptr_impl
Definition at line 891 of file smartptrxaids.hpp.
12.66.2.2 template<class T, class Compare, class Allocator, bool refcounted> typedef repository_-type< T, Compare, Allocator, refcounted, false > stm::smartptr::local::mapped_ptr< T, Compare,Allocator, refcounted, false >::repository
Definition at line 900 of file smartptrxaids.hpp.
12.66.3 Constructor & Destructor Documentation
12.66.3.1 template<class T, class Compare, class Allocator, bool refcounted>stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, false >::mapped_ptr(rangeid_type rangeid = rangeid_type ()) [inline]
Definition at line 1690 of file smartptrxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.66 stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, false > ClassTemplate Reference 318
12.66.3.2 template<class T, class Compare, class Allocator, bool refcounted>stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, false >::mapped_ptr(const mapped_ptr_impl & other) [inline]
Definition at line 1712 of file smartptrxaids.hpp.
References StmDebugAidsVerify.
12.66.3.3 template<class T, class Compare, class Allocator, bool refcounted>stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, false >::mapped_ptr(const T & value, rangeid_type rangeid = rangeid_type (), bool store = true) [inline]
Definition at line 1738 of file smartptrxaids.hpp.
12.66.3.4 template<class T, class Compare, class Allocator, bool refcounted>stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, false >::∼mapped_ptr ()[inline]
Definition at line 1794 of file smartptrxaids.hpp.
References stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange>::getrefcount(), stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange>::ptr_, stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange >::repository_,and StmDebugAidsVerify.
12.66.4 Member Function Documentation
12.66.4.1 template<class T, class Compare, class Allocator, bool refcounted> voidstm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, false >::swap (mapped_-ptr< T, Compare, Allocator, refcounted, false > & other) [inline]
Definition at line 1821 of file smartptrxaids.hpp.
References stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange >::ptr_, andstm::smartptr::swap().
12.66.4.2 template<class T, class Compare, class Allocator, bool refcounted> stm::dwordstm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, false >::id () const[inline]
Definition at line 928 of file smartptrxaids.hpp.
12.66.4.3 template<class T, class Compare, class Allocator, bool refcounted> refcount_typestm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, false >::getrefcount () const[inline]
Definition at line 1839 of file smartptrxaids.hpp.
References StmDebugAidsVerify.
12.66.4.4 template<class T, class Compare, class Allocator, bool refcounted> voidstm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, false >::init () [inline,static]
Definition at line 1868 of file smartptrxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.66 stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, false > ClassTemplate Reference 319
References stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange>::repository_.
12.66.4.5 template<class T, class Compare, class Allocator, bool refcounted> template<classArchiveT> void stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, false>::save (ArchiveT & ar, const unsigned int version) const [inline]
Definition at line 1888 of file smartptrxaids.hpp.
References stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange >::ptr_.
12.66.4.6 template<class T, class Compare, class Allocator, bool refcounted> template<classArchiveT> void stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, false>::load (ArchiveT & ar, const unsigned int version) [inline]
Definition at line 1912 of file smartptrxaids.hpp.
References stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange >::ptr_-, stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange >::repository_, andstm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange >::swap().
12.66.4.7 template<class T, class Compare, class Allocator, bool refcounted> template<classArchiveT> void stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, false>::serialize (ArchiveT & ar, const unsigned int version) [inline]
Definition at line 1976 of file smartptrxaids.hpp.
12.66.5 Friends And Related Function Documentation
12.66.5.1 template<class T, class Compare, class Allocator, bool refcounted> friend classboost::serialization::access [friend]
Definition at line 881 of file smartptrxaids.hpp.
12.66.6 Member Data Documentation
12.66.6.1 template<class T, class Compare, class Allocator, bool refcounted> const T∗stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, false >::ptr_
Definition at line 946 of file smartptrxaids.hpp.
12.66.6.2 template<class T, class Compare, class Allocator, bool refcounted> repository_type< T,Compare, Allocator, refcounted, false > ∗ stm::smartptr::local::mapped_ptr< T, Compare, Alloca-tor, refcounted, false >::repository_ = NULL [inline, static]
The static repository holding all accessors of all ranges.
Definition at line 949 of file smartptrxaids.hpp.
The documentation for this class was generated from the following file:
• smartptrxaids.hpp
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.67 stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, false>::rangeid_type Class Reference 320
12.67 stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted,false >::rangeid_type Class Reference
#include <smartptrxaids.hpp>
12.67.1 Detailed Description
template<class T, class Compare, class Allocator, bool refcounted> classstm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, false >::rangeid_type
Definition at line 902 of file smartptrxaids.hpp.
Public Member Functions
• rangeid_type (stm::dword id=0)• operator stm::dword () const
Private Attributes
• stm::dword id_
12.67.2 Constructor & Destructor Documentation
12.67.2.1 template<class T, class Compare, class Allocator, bool refcounted>stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, false >::rangeid_-type::rangeid_type (stm::dword id = 0) [inline, explicit]
Definition at line 905 of file smartptrxaids.hpp.
12.67.3 Member Function Documentation
12.67.3.1 template<class T, class Compare, class Allocator, bool refcounted>stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, false >::rangeid_-type::operator stm::dword () const [inline]
Definition at line 909 of file smartptrxaids.hpp.
References stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange>::rangeid_type::id_.
12.67.4 Member Data Documentation
12.67.4.1 template<class T, class Compare, class Allocator, bool refcounted> stm::dwordstm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, false >::rangeid_type::id_[private]
Definition at line 915 of file smartptrxaids.hpp.
The documentation for this class was generated from the following file:
• smartptrxaids.hpp
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.68 stm::tools::McBspMessage< ContextT > Class Template Reference 321
12.68 stm::tools::McBspMessage< ContextT > Class Template Reference
#include <mcbspmsg.hpp>
Inheritance diagram for stm::tools::McBspMessage< ContextT >:
stm::tools::McBspMessage< ContextT >
stm::tools::BaseMessage< ContextT >
stm::byte_iterator_range stm::tools::local::xBaseMessage< ContextT >
stm::tools::local::xMcBspMessage< ContextT >
Collaboration diagram for stm::tools::McBspMessage< ContextT >:
stm::tools::McBspMessage< ContextT >
stm::tools::BaseMessage< ContextT >
stm::byte_iterator_range
stm::tools::local::xBaseMessage< ContextT >
body_
stm::tools::MsgTimestamp
timestamp_
stm::tools::local::xMsgTimestamp
stm::tools::local::xMcBspMessage< ContextT >
12.68.1 Detailed Description
template<class ContextT> class stm::tools::McBspMessage< ContextT >
McBSP message scanning from a BaseMessage’s byte_iterator_range.
ContextT shall be a specialization of BaseMessageContext or be publicly derived therefrom. If ContextTis a specialization of BinMessageContext (which is publicly derived from a BaseMessageContext special-ization) or is publicly derived therefrom, ContextT is also a BinMessage<ContextT> factory and the typeMcBspMessage<ContextT> can be registered as BinMessage<ContextT> type known to that factory.
Definition at line 112 of file mcbspmsg.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.68 stm::tools::McBspMessage< ContextT > Class Template Reference 322
Public Types
• typedef ContextT context_typeContext type of the messages to be scanned.
• typedef BaseMessage< ContextT > basemessage_typeBase type of this McBspMessage.
Public Member Functions
• McBspMessage (const byte ∗first, const byte ∗last, context_type &context, dwordflags=basemessage_type::NoFlags) throw (std::exception)
Construct a McBspMessage object from the range [first, last) read from context.
• const std::string & type () constReturn the message type string.
Static Public Member Functions
• static const std::string & Type ()Return the static message type string.
Private Types
• typedef local::xMcBspMessage< ContextT > McBspMessageImplImplementation.
12.68.2 Member Typedef Documentation
12.68.2.1 template<class ContextT> typedef local::xMcBspMessage<ContextT>stm::tools::McBspMessage< ContextT >::McBspMessageImpl [private]
Implementation.
Definition at line 117 of file mcbspmsg.hpp.
12.68.2.2 template<class ContextT> typedef ContextT stm::tools::McBspMessage< ContextT>::context_type
Context type of the messages to be scanned.
Reimplemented from stm::tools::BaseMessage< ContextT >.
Definition at line 121 of file mcbspmsg.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.68 stm::tools::McBspMessage< ContextT > Class Template Reference 323
12.68.2.3 template<class ContextT> typedef BaseMessage<ContextT>stm::tools::McBspMessage< ContextT >::basemessage_type
Base type of this McBspMessage.
Reimplemented from stm::tools::BaseMessage< ContextT >.
Definition at line 124 of file mcbspmsg.hpp.
12.68.3 Constructor & Destructor Documentation
12.68.3.1 template<class ContextT> stm::tools::McBspMessage< ContextT >::McBspMessage(const byte ∗ first, const byte ∗ last, context_type & context, dword flags = basemessage_-type::NoFlags) throw (std::exception) [inline]
Construct a McBspMessage object from the range [first, last) read from context.
If a McBsp message (optionally preceded by a 4 or 5 byte FPGA timestamp) begins with first and fitscompletely into the range [first, last), the constructor succeeds. Then the method status() returns BaseMes-sage::NoError, the method begin() returns first, the method end() returns a byte pointer to the byte after theMcBSP end word of the message and the method body() returns the byte range consisting of the message’sbody excluding any padding bytes.
Else if the flags bit BaseMessage::ThrowOnError is not set, status () returns BaseMessage::OutOfSyncor BaseMessage::ConsistencyError, begin() returns first, end() returns a byte pointer to the next plausiblebegin of a McBSP message and body() returns the offended byte range which may be empty. If the flagsbit BaseMessage::ThrowOnError is set, the construcor throws std::runtime_error in these cases.
On other errors the constructor throws std::logic_error, if one of the arguments supplied is wrong, orstd::range_error, if a McBsp message potentially begins with first, but does not fit completely into therange [first, last).
Definition at line 354 of file xmcbspmsg.hpp.
References stm::tools::local::xMcBspMessage< ContextT >::Identification::bfn(),stm::tools::local::xMcBspMessage< ContextT >::Identification::bodyLength(),stm::tools::local::xMcBspMessage< ContextT >::Identification::chip(),stm::tools::local::xMcBspMessage< ContextT >::Identification::clear(),stm::tools::local::xMcBspMessage< ContextT >::Identification::size(),stm::tools::local::xMcBspMessage< ContextT >::Identification::slot(), and StmDebugAidsVerify.
12.68.4 Member Function Documentation
12.68.4.1 template<class ContextT> const std::string & stm::tools::McBspMessage< ContextT>::type () const [inline, virtual]
Return the message type string.
Implements the pure virtual method basemessage_type::type().
Implements stm::tools::BaseMessage< ContextT >.
Definition at line 472 of file xmcbspmsg.hpp.
References stm::tools::local::xMcBspMessage< ContextT >::type_.
12.68.4.2 template<class ContextT> const std::string & stm::tools::McBspMessage< ContextT>::Type () [inline, static]
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.69 stm::tools::MsgTimestamp Class Reference 324
Return the static message type string.
Definition at line 480 of file xmcbspmsg.hpp.
References stm::tools::local::xMcBspMessage< ContextT >::type_.
The documentation for this class was generated from the following files:
• mcbspmsg.hpp• xmcbspmsg.hpp
12.69 stm::tools::MsgTimestamp Class Reference
#include <msgtimestamp.hpp>
Inheritance diagram for stm::tools::MsgTimestamp:
stm::tools::MsgTimestamp
stm::tools::local::xMsgTimestamp
Collaboration diagram for stm::tools::MsgTimestamp:
stm::tools::MsgTimestamp
stm::tools::local::xMsgTimestamp
12.69.1 Detailed Description
Message timestamp type.
Definition at line 105 of file msgtimestamp.hpp.
Public Types
• enum {
Invalid = MsgTimestampImpl::Invalid,
Udp = MsgTimestampImpl::Udp,
Fpga = MsgTimestampImpl::Fpga }Timestamp status.
Public Member Functions
• MsgTimestamp ()The default constructor constructs an invalid object.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.69 stm::tools::MsgTimestamp Class Reference 325
• void assign (word bfn, dword boardTimeSec, word boardTimeMs, dword seqNo)Assign UDP timing data.
• void assign (word bfn, byte slot, word chip, bool hsTadsib=false)Assign FPGA or hsTADSIB FPGA timing data.
• bool valid () constReturn true, if this MsgTimestamp is valid, else false.
• bool isUdp () constReturn true, if this MsgTimestamp represents UDP timing data, else false.
• bool isFpga () constReturn true, if this MsgTimestamp represents FPGA or hsTADSIB FPGA.
• byte status () constReturn the status of this MsgTimestamp.
• word bfn () constReturn the BFN of this MsgTimestamp.
• byte slot () constReturn the slot of this MsgTimestamp.
• word chip () constReturn the chip of this MsgTimestamp.
• dword boardTimeSec () constReturn the board time seconds of this MsgTimestamp.
• word boardTimeMs () constReturn the board time milliseconds of this MsgTimestamp.
• dword seqNo () constReturn the sequence number of this MsgTimestamp.
• bool hsTadsib () constReturn true, if this MsgTimestamp represents hsTADSIB FPGA timing data, else false.
12.69.2 Member Enumeration Documentation
12.69.2.1 anonymous enum
Timestamp status.
Enumerator:
InvalidUdpFpga
Definition at line 109 of file msgtimestamp.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.69 stm::tools::MsgTimestamp Class Reference 326
12.69.3 Constructor & Destructor Documentation
12.69.3.1 stm::tools::MsgTimestamp::MsgTimestamp () [inline]
The default constructor constructs an invalid object.
Definition at line 201 of file xmsgtimestamp.hpp.
12.69.4 Member Function Documentation
12.69.4.1 void stm::tools::MsgTimestamp::assign (word bfn, dword boardTimeSec, word board-TimeMs, dword seqNo) [inline]
Assign UDP timing data.
Definition at line 206 of file xmsgtimestamp.hpp.
Referenced by stm::tools::local::xBaseMessage< ContextT >::setTimestamp().
12.69.4.2 void stm::tools::MsgTimestamp::assign (word bfn, byte slot, word chip, bool hsTadsib =false) [inline]
Assign FPGA or hsTADSIB FPGA timing data.
Definition at line 226 of file xmsgtimestamp.hpp.
12.69.4.3 bool stm::tools::MsgTimestamp::valid () const [inline]
Return true, if this MsgTimestamp is valid, else false.
Definition at line 245 of file xmsgtimestamp.hpp.
References Invalid, and stm::tools::local::xMsgTimestamp::status_.
12.69.4.4 bool stm::tools::MsgTimestamp::isUdp () const [inline]
Return true, if this MsgTimestamp represents UDP timing data, else false.
Definition at line 251 of file xmsgtimestamp.hpp.
References stm::tools::local::xMsgTimestamp::status_, and Udp.
12.69.4.5 bool stm::tools::MsgTimestamp::isFpga () const [inline]
Return true, if this MsgTimestamp represents FPGA or hsTADSIB FPGA.
Definition at line 257 of file xmsgtimestamp.hpp.
References Fpga, and stm::tools::local::xMsgTimestamp::status_.
12.69.4.6 byte stm::tools::MsgTimestamp::status () const [inline]
Return the status of this MsgTimestamp.
Definition at line 263 of file xmsgtimestamp.hpp.
References stm::tools::local::xMsgTimestamp::status_.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.69 stm::tools::MsgTimestamp Class Reference 327
12.69.4.7 word stm::tools::MsgTimestamp::bfn () const [inline]
Return the BFN of this MsgTimestamp.
Definition at line 269 of file xmsgtimestamp.hpp.
References stm::tools::local::xMsgTimestamp::bfn_.
12.69.4.8 byte stm::tools::MsgTimestamp::slot () const [inline]
Return the slot of this MsgTimestamp.
Meaningful only for UDP timing data.
Definition at line 275 of file xmsgtimestamp.hpp.
References stm::tools::local::xMsgTimestamp::slot_.
12.69.4.9 word stm::tools::MsgTimestamp::chip () const [inline]
Return the chip of this MsgTimestamp.
Meaningful only for UDP timing data.
Definition at line 281 of file xmsgtimestamp.hpp.
References stm::tools::local::xMsgTimestamp::chip_.
12.69.4.10 dword stm::tools::MsgTimestamp::boardTimeSec () const [inline]
Return the board time seconds of this MsgTimestamp.
Meaningful only for FPGA or hsTADSIB FPGA timing data.
Definition at line 287 of file xmsgtimestamp.hpp.
References stm::tools::local::xMsgTimestamp::boardTimeSec_.
12.69.4.11 word stm::tools::MsgTimestamp::boardTimeMs () const [inline]
Return the board time milliseconds of this MsgTimestamp.
Meaningful only for FPGA or hsTADSIB FPGA timing data.
Definition at line 293 of file xmsgtimestamp.hpp.
References stm::tools::local::xMsgTimestamp::boardTimeMs_.
12.69.4.12 dword stm::tools::MsgTimestamp::seqNo () const [inline]
Return the sequence number of this MsgTimestamp.
Meaningful only for FPGA or hsTADSIB FPGA timing data.
Definition at line 299 of file xmsgtimestamp.hpp.
References stm::tools::local::xMsgTimestamp::seqNo_.
12.69.4.13 bool stm::tools::MsgTimestamp::hsTadsib () const [inline]
Return true, if this MsgTimestamp represents hsTADSIB FPGA timing data, else false.
Definition at line 305 of file xmsgtimestamp.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.70 Node Class Reference 328
References stm::tools::local::xMsgTimestamp::hsTadsib_.
The documentation for this class was generated from the following files:
• msgtimestamp.hpp• xmsgtimestamp.hpp
12.70 Node Class Reference
Collaboration diagram for Node:
Node
Slot
slot_
12.70.1 Detailed Description
Examples:
smartptrtest.cpp.
Definition at line 236 of file smartptrtest.cpp.
Public Types
• typedef NodeSet::accessor Ptr
Public Member Functions
• Node (const Slot &root)• Node (Ptr parent, stm::dword index)• const Slot & slot () const• stm::dword offset () const• bool operator< (const Node &other) const
Private Attributes
• Ptr parent_• stm::dword index_• Slot slot_• stm::dword offset_
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.70 Node Class Reference 329
12.70.2 Member Typedef Documentation
12.70.2.1 typedef NodeSet::accessor Node::Ptr
Examples:
smartptrtest.cpp.
Definition at line 239 of file smartptrtest.cpp.
12.70.3 Constructor & Destructor Documentation
12.70.3.1 Node::Node (const Slot & root) [inline]
Examples:
smartptrtest.cpp.
Definition at line 241 of file smartptrtest.cpp.
12.70.3.2 Node::Node (Ptr parent, stm::dword index) [inline]
Definition at line 247 of file smartptrtest.cpp.
References Slot::child(), Slot::disp(), index_, offset(), offset_, parent_, slot(), slot_, and StmDe-bugAidsVerify.
12.70.4 Member Function Documentation
12.70.4.1 const Slot& Node::slot () const [inline]
Examples:
smartptrtest.cpp.
Definition at line 256 of file smartptrtest.cpp.
References slot_.
Referenced by Node(), and operator<().
12.70.4.2 stm::dword Node::offset () const [inline]
Examples:
smartptrtest.cpp.
Definition at line 261 of file smartptrtest.cpp.
References offset_.
Referenced by Node(), and operator<().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.70 Node Class Reference 330
12.70.4.3 bool Node::operator< (const Node & other) const [inline]
Examples:
smartptrtest.cpp.
Definition at line 266 of file smartptrtest.cpp.
References offset(), and slot().
12.70.5 Member Data Documentation
12.70.5.1 Ptr Node::parent_ [private]
Examples:
smartptrtest.cpp.
Definition at line 275 of file smartptrtest.cpp.
Referenced by Node().
12.70.5.2 stm::dword Node::index_ [private]
Examples:
smartptrtest.cpp.
Definition at line 276 of file smartptrtest.cpp.
Referenced by Node().
12.70.5.3 Slot Node::slot_ [private]
Examples:
smartptrtest.cpp.
Definition at line 277 of file smartptrtest.cpp.
Referenced by Node(), and slot().
12.70.5.4 stm::dword Node::offset_ [private]
Examples:
smartptrtest.cpp.
Definition at line 278 of file smartptrtest.cpp.
Referenced by Node(), and offset().
The documentation for this class was generated from the following file:
• smartptrtest.cpp
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.71 stm::nospace< CharT > Struct Template Reference 331
12.71 stm::nospace< CharT > Struct Template Reference
#include <divaids.hpp>
12.71.1 Detailed Description
template<typename CharT> struct stm::nospace< CharT >
Unary predicate functor template determining if a CharT object is no white space as defined by the currentlocale.
Definition at line 1351 of file divaids.hpp.
Public Member Functions
• bool operator() (CharT c) constPredicate function call operator.
12.71.2 Member Function Documentation
12.71.2.1 template<typename CharT> bool stm::nospace< CharT >::operator() (CharT c) const[inline]
Predicate function call operator.
Definition at line 3375 of file divxaids.hpp.
The documentation for this struct was generated from the following files:
• divaids.hpp• divxaids.hpp
12.72 stm::numpstring Class Reference
#include <filesysaids.hpp>
Inheritance diagram for stm::numpstring:
stm::numpstring
stm::pstring
Collaboration diagram for stm::numpstring:
stm::numpstring
stm::pstring
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.73 Operation Struct Reference 332
12.72.1 Detailed Description
Class to represent a file system name with a case unsensitive order relation on Windows systems else witha case case sensitive order relation collating numerically correct.
This means that trailing numbers in path names yield their logical order: eg. xyz9 < xyz10, and xyz001 <xyz2.
Definition at line 203 of file filesysaids.hpp.
Public Member Functions
• numpstring (const std::string &path=std::string())Constructs a numpstring representing path.
• numpstring (const char ∗path)Constructs a numpstring representing path.
12.72.2 Constructor & Destructor Documentation
12.72.2.1 stm::numpstring::numpstring (const std::string & path = std::string ())[inline]
Constructs a numpstring representing path.
Definition at line 1293 of file filesysxaids.hpp.
12.72.2.2 stm::numpstring::numpstring (const char ∗ path) [inline]
Constructs a numpstring representing path.
Definition at line 1296 of file filesysxaids.hpp.
The documentation for this class was generated from the following files:
• filesysaids.hpp• filesysxaids.hpp
12.73 Operation Struct Reference
Collaboration diagram for Operation:
Operation
stm::path< NameT >
dir
12.73.1 Detailed Description
Examples:
smartptrtest.cpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.73 Operation Struct Reference 333
Definition at line 286 of file smartptrtest.cpp.
Public Member Functions
• Operation ()
Public Attributes
• bool loadOnly• stm::dword type• stm::dword mode• stm::dword archive• stm::path dir
Classes
• struct Archive• struct Mode• struct Type
12.73.2 Constructor & Destructor Documentation
12.73.2.1 Operation::Operation () [inline]
Examples:
smartptrtest.cpp.
Definition at line 319 of file smartptrtest.cpp.
12.73.3 Member Data Documentation
12.73.3.1 bool Operation::loadOnly
Examples:
smartptrtest.cpp.
Definition at line 327 of file smartptrtest.cpp.
Referenced by main(), testptr(), and testset().
12.73.3.2 stm::dword Operation::type
Examples:
smartptrtest.cpp.
Definition at line 328 of file smartptrtest.cpp.
Referenced by main().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.74 Operation::Archive Struct Reference 334
12.73.3.3 stm::dword Operation::mode
Examples:
smartptrtest.cpp.
Definition at line 329 of file smartptrtest.cpp.
Referenced by main().
12.73.3.4 stm::dword Operation::archive
Examples:
smartptrtest.cpp.
Definition at line 330 of file smartptrtest.cpp.
Referenced by main(), testptr(), and testset().
12.73.3.5 stm::path Operation::dir
Examples:
smartptrtest.cpp.
Definition at line 331 of file smartptrtest.cpp.
Referenced by main(), testptr(), and testset().
The documentation for this struct was generated from the following file:
• smartptrtest.cpp
12.74 Operation::Archive Struct Reference
12.74.1 Detailed Description
Definition at line 308 of file smartptrtest.cpp.
Public Types
• enum {
Txt = 0x00000001,
Bin = 0x00000002,
Xml = 0x00000004,
All = Txt | Bin | Xml }
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.75 Operation::Mode Struct Reference 335
12.74.2 Member Enumeration Documentation
12.74.2.1 anonymous enum
Enumerator:
TxtBinXmlAll
Definition at line 310 of file smartptrtest.cpp.
The documentation for this struct was generated from the following file:
• smartptrtest.cpp
12.75 Operation::Mode Struct Reference
12.75.1 Detailed Description
Definition at line 298 of file smartptrtest.cpp.
Public Types
• enum {
Inj = 0x00000001,
Bij = 0x00000002,
All = Inj | Bij }
12.75.2 Member Enumeration Documentation
12.75.2.1 anonymous enum
Enumerator:
InjBijAll
Definition at line 300 of file smartptrtest.cpp.
The documentation for this struct was generated from the following file:
• smartptrtest.cpp
12.76 Operation::Type Struct Reference
12.76.1 Detailed Description
Definition at line 288 of file smartptrtest.cpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.77 stm::path< NameT > Class Template Reference 336
Public Types
• enum {
Ptr = 0x00000001,
Set = 0x00000002,
All = Ptr | Set }
12.76.2 Member Enumeration Documentation
12.76.2.1 anonymous enum
Enumerator:
PtrSetAll
Definition at line 290 of file smartptrtest.cpp.
The documentation for this struct was generated from the following file:
• smartptrtest.cpp
12.77 stm::path< NameT > Class Template Reference
#include <filesysaids.hpp>
12.77.1 Detailed Description
template<class NameT = pstring> class stm::path< NameT >
Class template path refining boost::filesystem::path.
NameT shall be convertable to std::string thus representing the path’s character representation.
Examples:
smartptrtest.cpp.
Definition at line 253 of file filesysaids.hpp.
Public Types
• typedef NameT name_typeTemplate type parameter NameT.
• typedef boost::filesystem::path basePublic base class.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.77 stm::path< NameT > Class Template Reference 337
Public Member Functions
• path ()Construct an empty path object.
• path (const boost::filesystem::path &src)Construct a path object from src.
• path (const std::string &src)Construct a path object from src.
• path (const char ∗src)Construct a path object from src.
• path (const std::string &src, name_check checker)Construct a path object from src with name check function checker.
• path (const char ∗src, name_check checker)Construct a path object from src with name check function checker.
• const name_type string () constReturns this path’s character representation as name_type object which is convertible to std::string.
• std::string head () constIf this path is not empty, the method returns ∗begin(), else an empty std::string.
• path< NameT > tail_path () constIf this path is not empty, the method retuns a path object consisting of this path with stripped off the head()component, else the empty path.
• bool has_head () constReturns true, if head() is not empty, else false.
• bool has_tail_path () constReturns true, if tail_path() is not empty, else false.
• path< NameT > operator- (const base &stem) constIf stem is the initial part of this path, return a path<NameT> object consisting of this path stripped offstem, else return the empty path.
• path< NameT > relative_to_directory (const base &source) constIf this path is empty, the empty path object is returned.
• template<class DataT>
int recurse (DataT &parent) constThe member function template recurse handles this path, and if it is a directory and recursion is not switchedoff, recursively all items of the tree spanned by this directory.
• template<class DataT>
int recurse (typename DataT::env_type &env) const
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.77 stm::path< NameT > Class Template Reference 338
The member function template recurse handles this path, and if it is a directory and recursion is not switchedoff, recursively all items of the tree spanned by this directory.
• template<class DataT>
int traverse (DataT &parent, const path< NameT > &route) constThe member function template traverse handles this path, and then if the normalized route r consists of thecomponents r1, .
• template<class DataT>
int traverse (typename DataT::env_type &env, const path< NameT > &route) constThe member function template traverse handles this path, and then if the normalized route r consists of thecomponents r1, .
Classes
• class dirdataAbstract base class template of directory data created for each directory the recusion handles.
• class recursionenvType of or public base class of the global recursion environment used by the methods recurse() and tra-verse().
12.77.2 Member Typedef Documentation
12.77.2.1 template<class NameT = pstring> typedef NameT stm::path< NameT >::name_type
Template type parameter NameT.
Definition at line 257 of file filesysaids.hpp.
12.77.2.2 template<class NameT = pstring> typedef boost::filesystem::path stm::path< NameT>::base
Public base class.
Definition at line 260 of file filesysaids.hpp.
12.77.3 Constructor & Destructor Documentation
12.77.3.1 template<class NameT> stm::path< NameT >::path () [inline]
Construct an empty path object.
Definition at line 1337 of file filesysxaids.hpp.
12.77.3.2 template<class NameT> stm::path< NameT >::path (const boost::filesystem::path<NameT > & src) [inline]
Construct a path object from src.
Definition at line 1342 of file filesysxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.77 stm::path< NameT > Class Template Reference 339
12.77.3.3 template<class NameT> stm::path< NameT >::path (const std::string & src)[inline]
Construct a path object from src.
Definition at line 1347 of file filesysxaids.hpp.
12.77.3.4 template<class NameT> stm::path< NameT >::path (const char ∗ src) [inline]
Construct a path object from src.
Definition at line 1353 of file filesysxaids.hpp.
12.77.3.5 template<class NameT> stm::path< NameT >::path (const std::string & src, name_-check checker) [inline]
Construct a path object from src with name check function checker.
Definition at line 1359 of file filesysxaids.hpp.
12.77.3.6 template<class NameT> stm::path< NameT >::path (const char ∗ src, name_checkchecker) [inline]
Construct a path object from src with name check function checker.
Definition at line 1365 of file filesysxaids.hpp.
12.77.4 Member Function Documentation
12.77.4.1 template<class NameT> const path< NameT >::name_type stm::path< NameT>::string () const [inline]
Returns this path’s character representation as name_type object which is convertible to std::string.
Definition at line 1371 of file filesysxaids.hpp.
Referenced by stm::path< NameT >::relative_to_directory(), testptr(), and testset().
12.77.4.2 template<class NameT> std::string stm::path< NameT >::head () const [inline]
If this path is not empty, the method returns ∗begin(), else an empty std::string.
Definition at line 1378 of file filesysxaids.hpp.
Referenced by stm::path< NameT >::traverse().
12.77.4.3 template<class NameT> path< NameT > stm::path< NameT >::tail_path () const[inline]
If this path is not empty, the method retuns a path object consisting of this path with stripped off the head()component, else the empty path.
Definition at line 1385 of file filesysxaids.hpp.
Referenced by stm::path< NameT >::traverse().
12.77.4.4 template<class NameT> bool stm::path< NameT >::has_head () const [inline]
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.77 stm::path< NameT > Class Template Reference 340
Returns true, if head() is not empty, else false.
Definition at line 1400 of file filesysxaids.hpp.
Referenced by stm::path< NameT >::traverse().
12.77.4.5 template<class NameT> bool stm::path< NameT >::has_tail_path () const [inline]
Returns true, if tail_path() is not empty, else false.
Definition at line 1407 of file filesysxaids.hpp.
12.77.4.6 template<class NameT> path< NameT > stm::path< NameT >::operator- (const base& stem) const [inline]
If stem is the initial part of this path, return a path<NameT> object consisting of this path stripped offstem, else return the empty path.
Definition at line 1414 of file filesysxaids.hpp.
12.77.4.7 template<class NameT> path< NameT > stm::path< NameT >::relative_to_directory(const base & source) const [inline]
If this path is empty, the empty path object is returned.
If the completed forms of this path and source have the same root directory, a non-empty normalized pathobject result is returned such that source / result designates the same file system element as this path, wheresource is assumed to be a directory. Else the completed form of this path is returned.
Definition at line 1428 of file filesysxaids.hpp.
References stm::path< NameT >::string().
12.77.4.8 template<class NameT> template<class DataT> int stm::path< NameT >::recurse(DataT & parent) const [inline]
The member function template recurse handles this path, and if it is a directory and recursion is not switchedoff, recursively all items of the tree spanned by this directory.
It is an error, if this path does not exist.
Provided EnvT is publicly derived from path<NameT>::recursionenv and DataT is publicly derived frompath<NameT>::dirdata<DataT, EnvT>, then EnvT is the same type as DataT::env_type and is the type ofthe recursion environment. The argument parent describes the directory data of this path’s parent directoryand shall be obtained by the constructor
DataT parent (env);
The recursion environment env shall be obtained by the constructor
EnvT env (root, flags);
where the constructor argument root is this path.
After successful return the results of the execution are contained in the directory data parent and in therecursion environment accessible through parent.env ().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.77 stm::path< NameT > Class Template Reference 341
On success 0 is returned, else a value < 0. If -1 is returned, the variable errno reflects the error’s cause.
Definition at line 1451 of file filesysxaids.hpp.
References stm::path< NameT >::recursionenv::DoNotRecurse, and stm::path< NameT>::recursionenv::FollowDirLinks.
Referenced by stm::path< NameT >::recurse().
12.77.4.9 template<class NameT> template<class DataT> int stm::path< NameT >::recurse(typename DataT::env_type & env) const [inline]
The member function template recurse handles this path, and if it is a directory and recursion is not switchedoff, recursively all items of the tree spanned by this directory.
It is an error, if this path does not exist.
Provided EnvT is publicly derived from path<NameT>::recursionenv and DataT is publicly derived frompath<NameT>::dirdata<DataT, EnvT>, then EnvT is the same type as DataT::env_type and is the type ofthe recursion environment. The argument env of this type shall be obtained by the constructor
EnvT env (root, flags);
where the constructor argument root is this path.
After successful return the results of the execution are contained in the recursion environment env.
On success 0 is returned, else a value < 0. If -1 is returned, the variable errno reflects the error’s cause.
Definition at line 1483 of file filesysxaids.hpp.
References stm::path< NameT >::recurse().
12.77.4.10 template<class NameT> template<class DataT> int stm::path< NameT >::traverse(DataT & parent, const path< NameT > & route) const [inline]
The member function template traverse handles this path, and then if the normalized route r consists of thecomponents r1, .
.., rn, successively the paths ∗this / r1, ∗this / r1 / r2, ..., ∗this / r1 / ... / rn.
It is an error, if r.has_root_path() is true, or if r.head() == ’.’ or r.head() == ’..’ holds, whereas it is notrequired that this path or any of the composed paths exist.
Provided EnvT is publicly derived from path<NameT>::recursionenv and DataT is publicly derived frompath<NameT>::dirdata<DataT, EnvT>, then EnvT is the same type as DataT::env_type and is the type ofthe recursion environment. The argument parent describes the directory data of this path’s parent directoryand shall be obtained by the constructor
DataT parent (env);
The recursion environment env shall be obtained by the constructor
EnvT env (root, flags);
where the constructor argument root is this path.
After successful return the results of the execution are contained in the directory data parent and in therecursion environment accessible through parent.env ().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.78 stm::path< NameT >::dirdata< DataT, EnvT > Class Template Reference 342
On success 0 is returned, else a value < 0. If -1 is returned, the variable errno reflects the error’s cause.
Definition at line 1493 of file filesysxaids.hpp.
References stm::path< NameT >::has_head(), stm::path< NameT >::head(), stm::path< NameT >::tail_-path(), and stm::path< NameT >::traverse().
Referenced by stm::path< NameT >::traverse().
12.77.4.11 template<class NameT> template<class DataT> int stm::path< NameT >::traverse(typename DataT::env_type & env, const path< NameT > & route) const [inline]
The member function template traverse handles this path, and then if the normalized route r consists of thecomponents r1, .
.., rn, successively the paths ∗this / r1, ∗this / r1 / r2, ..., ∗this / r1 / ... / rn.
It is an error, if r.has_root_path() is true, or if r.head() == ’.’ or r.head() == ’..’ holds, whereas it is notrequired that this path or any of the composed paths exist.
Provided EnvT is publicly derived from path<NameT>::recursionenv and DataT is publicly derived frompath<NameT>::dirdata<DataT, EnvT>, then EnvT is the same type as DataT::env_type and is the type ofthe recursion environment. The argument env of this type shall be obtained by the constructor
EnvT env (root, flags);
where the constructor argument root is this path.
After successful return the results of the execution are contained in the recursion environment env.
On success 0 is returned, else a value < 0. If -1 is returned, the variable errno reflects the error’s cause.
Definition at line 1521 of file filesysxaids.hpp.
References stm::path< NameT >::traverse().
The documentation for this class was generated from the following files:
• filesysaids.hpp• filesysxaids.hpp
12.78 stm::path< NameT >::dirdata< DataT, EnvT > Class Template Reference
#include <filesysaids.hpp>
Inheritance diagram for stm::path< NameT >::dirdata< DataT, EnvT >:
stm::path< NameT >::dirdata< DataT, EnvT >
stm::local::xdirdata< DataT, EnvT >
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.78 stm::path< NameT >::dirdata< DataT, EnvT > Class Template Reference 343
Collaboration diagram for stm::path< NameT >::dirdata< DataT, EnvT >:
stm::path< NameT >::dirdata< DataT, EnvT >
stm::local::xdirdata< DataT, EnvT >
DataT
parent_
EnvT
env_
12.78.1 Detailed Description
template<class NameT = pstring>template<class DataT, class EnvT = recursionenv> classstm::path< NameT >::dirdata< DataT, EnvT >
Abstract base class template of directory data created for each directory the recusion handles.
The template parameter DataT is the class that will be publicly derived from dirdata<DataT, EnvT> andthe template parameter EnvT is the global recursion environment recursionenv or a class publicly derivedtherefrom. So the intended usage is
class EnvT : public stm::path::recursionenv {...};class DataT : public stm::path::dirdata<DataT, EnvT> {...};
Definition at line 301 of file filesysaids.hpp.
Public Types
• typedef DataT data_typeTemplate type parameter DataT.
• typedef EnvT env_typeTemplate type parameter EnvT.
Public Member Functions
• dirdata (EnvT &env)This user applicable constructor creates directory data for the parent directory of the recursion root deter-mined by the recursion environment env.
• dirdata (const path< NameT > &dirpath, DataT &parent)This constructor is used by the methods recurse() and traverse() internally for each directoy dirpath handled.
• virtual ∼dirdata ()=0This pure virtual destructor shall be implemented by each derived class DataT and shall evaluate anyinteresting data and integrate them into the directory data of its parent directory and into the recursionenvironment accessible by the methods parent() and env(), respectively.
• virtual int operator() (const path< NameT > &entry)=0
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.78 stm::path< NameT >::dirdata< DataT, EnvT > Class Template Reference 344
This pure virtual function call operator shall be implemented by each derived class DataT and is called foreach entry handled by the recursion process (directories as well as plain files).
• const path< NameT > & dirpath () constReturns the directory path of the directory data object.
• DataT ∗ parent ()If not NULL, the method returns a pointer to the dirdata object’s parent directory data.
• EnvT & env ()Returns the recursion environment of the directory data object.
Private Types
• typedef local::xdirdata< DataT, EnvT > implImplementation.
12.78.2 Member Typedef Documentation
12.78.2.1 template<class NameT = pstring> template<class DataT, class EnvT = recursionenv>typedef local::xdirdata<DataT, EnvT> stm::path< NameT >::dirdata< DataT, EnvT >::impl[private]
Implementation.
Reimplemented from stm::local::xdirdata< DataT, EnvT >.
Definition at line 305 of file filesysaids.hpp.
12.78.2.2 template<class NameT = pstring> template<class DataT, class EnvT = recursionenv>typedef DataT stm::path< NameT >::dirdata< DataT, EnvT >::data_type
Template type parameter DataT.
Definition at line 309 of file filesysaids.hpp.
12.78.2.3 template<class NameT = pstring> template<class DataT, class EnvT = recursionenv>typedef EnvT stm::path< NameT >::dirdata< DataT, EnvT >::env_type
Template type parameter EnvT.
Definition at line 312 of file filesysaids.hpp.
12.78.3 Constructor & Destructor Documentation
12.78.3.1 template<class NameT> template<class DataT, class EnvT> stm::path< NameT>::dirdata< DataT, EnvT >::dirdata (EnvT & env) [inline]
This user applicable constructor creates directory data for the parent directory of the recursion root deter-mined by the recursion environment env.
This dirdata object shall be supplied as argument of the methods recurse() and traverse(). Each derivedclass DataT shall have a constructor with the same signature
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.78 stm::path< NameT >::dirdata< DataT, EnvT > Class Template Reference 345
DataT (EnvT &env);
which shall initialize its base class dirdata<DataT, EnvT> using this base class constructor.
Definition at line 1565 of file filesysxaids.hpp.
12.78.3.2 template<class NameT> template<class DataT, class EnvT> stm::path< NameT>::dirdata< DataT, EnvT >::dirdata (const path< NameT > & dirpath, DataT & parent)[inline]
This constructor is used by the methods recurse() and traverse() internally for each directoy dirpath handled.
Each derived class DataT shall have a constructor with the same signature
DataT (const path<NameT> &dirpath, DataT &parent);
which shall initialize its base class dirdata<DataT, EnvT> using this base class constructor.
Moreover, when initializing its DataT object the DataT constructor may access the recursion environmentaccessible through the method env().
Definition at line 1574 of file filesysxaids.hpp.
12.78.3.3 template<class NameT = pstring> template<class DataT, class EnvT = recursionenv>virtual stm::path< NameT >::dirdata< DataT, EnvT >::∼dirdata () [pure virtual]
This pure virtual destructor shall be implemented by each derived class DataT and shall evaluate anyinteresting data and integrate them into the directory data of its parent directory and into the recursionenvironment accessible by the methods parent() and env(), respectively.
12.78.4 Member Function Documentation
12.78.4.1 template<class NameT = pstring> template<class DataT, class EnvT = recursionenv>virtual int stm::path< NameT >::dirdata< DataT, EnvT >::operator() (const path< NameT > &entry) [pure virtual]
This pure virtual function call operator shall be implemented by each derived class DataT and is called foreach entry handled by the recursion process (directories as well as plain files).
According to entry, the operator may update its DataT object, the directory data of its parent directory andthe recursion environment accessible through the methods parent() and env(), respectively. On success theoperator shall return >= 0. If entry is to be excluded from being handled, it shall return a value > 0. Ifentry is a directory, the recursive descent into this directory does not happen in this case.
On error the operator shall return < 0, and if it returns -1, the variable errno shall reflect the error’s cause.
12.78.4.2 template<class NameT> template<class DataT, class EnvT> const path< NameT > &stm::path< NameT >::dirdata< DataT, EnvT >::dirpath () const [inline]
Returns the directory path of the directory data object.
Definition at line 1584 of file filesysxaids.hpp.
References stm::local::xdirdata< DataT, EnvT >::dirpath_.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.79 stm::path< NameT >::recursionenv Class Reference 346
12.78.4.3 template<class NameT> template<class DataT, class EnvT> DataT ∗ stm::path<NameT >::dirdata< DataT, EnvT >::parent () [inline]
If not NULL, the method returns a pointer to the dirdata object’s parent directory data.
Definition at line 1592 of file filesysxaids.hpp.
References stm::local::xdirdata< DataT, EnvT >::parent_.
12.78.4.4 template<class NameT> template<class DataT, class EnvT> EnvT & stm::path<NameT >::dirdata< DataT, EnvT >::env () [inline]
Returns the recursion environment of the directory data object.
Definition at line 1600 of file filesysxaids.hpp.
References stm::local::xdirdata< DataT, EnvT >::env_.
The documentation for this class was generated from the following files:
• filesysaids.hpp• filesysxaids.hpp
12.79 stm::path< NameT >::recursionenv Class Reference
#include <filesysaids.hpp>
Inheritance diagram for stm::path< NameT >::recursionenv:
stm::path< NameT >::recursionenv
stm::local::xrecursionenv
Collaboration diagram for stm::path< NameT >::recursionenv:
stm::path< NameT >::recursionenv
stm::local::xrecursionenv
12.79.1 Detailed Description
template<class NameT = pstring> class stm::path< NameT >::recursionenv
Type of or public base class of the global recursion environment used by the methods recurse() and tra-verse().
Definition at line 264 of file filesysaids.hpp.
Orable flag bits
No flags.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.79 stm::path< NameT >::recursionenv Class Reference 347
• static const dword NoFlags = 0x00000000• static const dword FollowDirLinks = impl::FollowDirLinks
Follow symbolic directory links.
• static const dword DoNotRecurse = impl::DoNotRecurseSuppress directory tree recursion.
Public Member Functions
• recursionenv (const path< NameT > &root, dword flags=NoFlags)Construct the global recursion environment for this path as root of the recursion.
• const path< NameT > & root () constReturns the recusion root.
• dword flags () constReturns the recursion environment flags.
12.79.2 Constructor & Destructor Documentation
12.79.2.1 template<class NameT> stm::path< NameT >::recursionenv::recursionenv (constpath< NameT > & root, dword flags = NoFlags) [inline]
Construct the global recursion environment for this path as root of the recursion.
Definition at line 1538 of file filesysxaids.hpp.
12.79.3 Member Function Documentation
12.79.3.1 template<class NameT> const path< NameT > & stm::path< NameT>::recursionenv::root () const [inline]
Returns the recusion root.
Definition at line 1546 of file filesysxaids.hpp.
References stm::local::xrecursionenv::root_.
12.79.3.2 template<class NameT> dword stm::path< NameT >::recursionenv::flags () const[inline]
Returns the recursion environment flags.
Definition at line 1553 of file filesysxaids.hpp.
References stm::local::xrecursionenv::flags_.
12.79.4 Member Data Documentation
12.79.4.1 template<class NameT = pstring> const dword stm::path< NameT>::recursionenv::NoFlags = 0x00000000 [static]
Definition at line 271 of file filesysaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.80 stm::smartptr::local::pcomp< T, Compare > Struct Template Reference 348
12.79.4.2 template<class NameT = pstring> const dword stm::path< NameT>::recursionenv::FollowDirLinks = impl::FollowDirLinks [static]
Follow symbolic directory links.
Reimplemented from stm::local::xrecursionenv.
Definition at line 274 of file filesysaids.hpp.
Referenced by stm::path< NameT >::recurse().
12.79.4.3 template<class NameT = pstring> const dword stm::path< NameT>::recursionenv::DoNotRecurse = impl::DoNotRecurse [static]
Suppress directory tree recursion.
Reimplemented from stm::local::xrecursionenv.
Definition at line 277 of file filesysaids.hpp.
Referenced by stm::path< NameT >::recurse().
The documentation for this class was generated from the following files:
• filesysaids.hpp• filesysxaids.hpp
12.80 stm::smartptr::local::pcomp< T, Compare > Struct Template Reference
#include <smartptrxaids.hpp>
12.80.1 Detailed Description
template<class T, class Compare> struct stm::smartptr::local::pcomp< T, Compare >
Definition at line 279 of file smartptrxaids.hpp.
Public Member Functions
• bool operator() (const T ∗p1, const T ∗p2) const
12.80.2 Member Function Documentation
12.80.2.1 template<class T, class Compare> bool stm::smartptr::local::pcomp< T, Compare>::operator() (const T ∗ p1, const T ∗ p2) const [inline]
Definition at line 282 of file smartptrxaids.hpp.
The documentation for this struct was generated from the following file:
• smartptrxaids.hpp
12.81 stm::smartptr::local::pointee_type< T > Class Template Reference
#include <smartptrxaids.hpp>
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.81 stm::smartptr::local::pointee_type< T > Class Template Reference 349
Collaboration diagram for stm::smartptr::local::pointee_type< T >:
stm::smartptr::local::pointee_type< T >
T
value_
12.81.1 Detailed Description
template<class T> class stm::smartptr::local::pointee_type< T >
Definition at line 295 of file smartptrxaids.hpp.
Public Member Functions
• pointee_type (const T &value=T())
Private Member Functions
• template<class Archive>void serialize (Archive &ar, const unsigned int version)
Private Attributes
• T value_
Friends
• class boost::serialization::access
12.81.2 Constructor & Destructor Documentation
12.81.2.1 template<class T> stm::smartptr::local::pointee_type< T >::pointee_type (const T &value = T ()) [inline, explicit]
Definition at line 300 of file smartptrxaids.hpp.
12.81.3 Member Function Documentation
12.81.3.1 template<class T> template<class Archive> void stm::smartptr::local::pointee_type<T >::serialize (Archive & ar, const unsigned int version) [inline, private]
Definition at line 306 of file smartptrxaids.hpp.
12.81.4 Friends And Related Function Documentation
12.81.4.1 template<class T> friend class boost::serialization::access [friend]
Definition at line 297 of file smartptrxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.82 stm::smartptr::policy< Flags > Struct Template Reference 350
12.81.5 Member Data Documentation
12.81.5.1 template<class T> T stm::smartptr::local::pointee_type< T >::value_ [private]
Definition at line 312 of file smartptrxaids.hpp.
The documentation for this class was generated from the following file:
• smartptrxaids.hpp
12.82 stm::smartptr::policy< Flags > Struct Template Reference
#include <smartptraids.hpp>
12.82.1 Detailed Description
template<stm::dword Flags = 0> struct stm::smartptr::policy< Flags >
Class template serving as Policy template parameter for class templates injective_ptr and injective_set.
Definition at line 143 of file smartptraids.hpp.
Public Types
• typedef boost::mpl::bool_<(Flags &Surjective)==Surjective > surjectiveSurjective policy type being boost::mpl::true_ or boost::mpl::false_ depending on the value of thestm::smartptr::Surjective policy flag.
• typedef boost::mpl::bool_<(Flags &Multirange)==Multirange > multirangeMultirange policy type being boost::mpl::true_ or boost::mpl::false_ depending on the value of thestm::smartptr::Multirange policy flag.
12.82.2 Member Typedef Documentation
12.82.2.1 template<stm::dword Flags = 0> typedef boost::mpl::bool_<(Flags & Surjective) ==Surjective> stm::smartptr::policy< Flags >::surjective
Surjective policy type being boost::mpl::true_ or boost::mpl::false_ depending on the value of thestm::smartptr::Surjective policy flag.
Definition at line 147 of file smartptraids.hpp.
12.82.2.2 template<stm::dword Flags = 0> typedef boost::mpl::bool_<(Flags & Multirange) ==Multirange> stm::smartptr::policy< Flags >::multirange
Multirange policy type being boost::mpl::true_ or boost::mpl::false_ depending on the value of thestm::smartptr::Multirange policy flag.
Definition at line 151 of file smartptraids.hpp.
The documentation for this struct was generated from the following file:
• smartptraids.hpp
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.83 stm::tools::PrintkBinMessage< ContextT > Class Template Reference 351
12.83 stm::tools::PrintkBinMessage< ContextT > Class Template Reference
#include <printkbinmsg.hpp>
Inheritance diagram for stm::tools::PrintkBinMessage< ContextT >:
stm::tools::PrintkBinMessage< ContextT >
stm::tools::BaseMessage< ContextT >
stm::byte_iterator_range
stm::tools::local::xBaseMessage< ContextT >
stm::tools::local::xPrintkBinMessage< ContextT >
Collaboration diagram for stm::tools::PrintkBinMessage< ContextT >:
stm::tools::PrintkBinMessage< ContextT >
stm::tools::BaseMessage< ContextT >stm::byte_iterator_range
stm::tools::local::xBaseMessage< ContextT >
body_
stm::tools::MsgTimestamptimestamp_
stm::tools::local::xMsgTimestamp stm::tools::local::xPrintkBinMessage< ContextT >
12.83.1 Detailed Description
template<class ContextT> class stm::tools::PrintkBinMessage< ContextT >
PrintkBin message scanning from a the BaseMessage’s byte_iterator_range.
ContextT shall be a specialization of BaseMessageContext or be publicly derived therefrom. If ContextTis a specialization of BinMessageContext (which is publicly derived from a BaseMessageContext special-ization) or is publicly derived therefrom, ContextT is also a BinMessage<ContextT> factory and the typePrintkBinMessage<ContextT> can be registered as BinMessage<ContextT> type known to that factory.
Definition at line 113 of file printkbinmsg.hpp.
Public Types
• typedef ContextT context_typeContext type of the messages to be scanned.
• typedef BaseMessage< ContextT > basemessage_typeBase type of this PrintkBinMessage.
Public Member Functions
• PrintkBinMessage (const byte ∗first, const byte ∗last, context_type &context, dwordflags=basemessage_type::NoFlags) throw (std::exception)
Construct a PrintkBinMessage object from the range [first, last) read from context.
• const std::string & type () constReturn the message type string.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.83 stm::tools::PrintkBinMessage< ContextT > Class Template Reference 352
Static Public Member Functions
• static const std::string & Type ()Return the static message type string.
Private Types
• typedef local::xPrintkBinMessage< ContextT > PrintkBinMessageImplImplementation.
12.83.2 Member Typedef Documentation
12.83.2.1 template<class ContextT> typedef local::xPrintkBinMessage<ContextT>stm::tools::PrintkBinMessage< ContextT >::PrintkBinMessageImpl [private]
Implementation.
Definition at line 118 of file printkbinmsg.hpp.
12.83.2.2 template<class ContextT> typedef ContextT stm::tools::PrintkBinMessage< ContextT>::context_type
Context type of the messages to be scanned.
Reimplemented from stm::tools::BaseMessage< ContextT >.
Definition at line 122 of file printkbinmsg.hpp.
12.83.2.3 template<class ContextT> typedef BaseMessage<ContextT>stm::tools::PrintkBinMessage< ContextT >::basemessage_type
Base type of this PrintkBinMessage.
Reimplemented from stm::tools::BaseMessage< ContextT >.
Definition at line 125 of file printkbinmsg.hpp.
12.83.3 Constructor & Destructor Documentation
12.83.3.1 template<class ContextT> stm::tools::PrintkBinMessage< ContextT>::PrintkBinMessage (const byte ∗ first, const byte ∗ last, context_type & context, dwordflags = basemessage_type::NoFlags) throw (std::exception) [inline]
Construct a PrintkBinMessage object from the range [first, last) read from context.
If a PrintkBin message characterized by its preceding sync word and its 6 or 12 byte timestamp beginswith first and fits completely into the range [first, last), the constructor succeeds. Then the method status()returns BaseMessage::NoError, the method begin() returns first, the method end() returns a byte pointerto the byte after the possibly padded end of the message and the method body() returns the byte rangeconsisting of the message’s body excluding any padding bytes.
Else if the flag bit BaseMessage::ThrowOnError is not set, status() returns BaseMessage::OutOfSync orBaseMessage::ConsistencyError, begin() returns first, end() returns a byte pointer to the next plausible
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.84 stm::pstring Class Reference 353
begin of a PrintkBin message and body() returns the offended byte range which may be empty. If the flagsbit BaseMessage::ThrowOnError is set, the construcor throws std::runtime_error in these cases.
On other errors the constructor throws std::logic_error, if one of the arguments supplied is wrong, orstd::range_error, if a PrintkBin message potentially begins with first, but does not fit completely into therange [first, last).
Definition at line 373 of file xprintkbinmsg.hpp.
References stm::tools::local::xPrintkBinMessage< ContextT >::Identification::addBodyLength(),stm::tools::local::xPrintkBinMessage< ContextT >::Identification::bfn(),stm::tools::local::xPrintkBinMessage< ContextT >::Identification::boardTimeMs(),stm::tools::local::xPrintkBinMessage< ContextT >::Identification::boardTimeSec(),stm::tools::local::xPrintkBinMessage< ContextT >::Identification::bodyLength(),stm::tools::local::xPrintkBinMessage< ContextT >::Identification::clear(),stm::tools::local::xPrintkBinMessage< ContextT >::Identification::seqNo(),stm::tools::local::xPrintkBinMessage< ContextT >::Identification::size(), and StmDebugAidsVerify.
12.83.4 Member Function Documentation
12.83.4.1 template<class ContextT> const std::string & stm::tools::PrintkBinMessage< ContextT>::type () const [inline, virtual]
Return the message type string.
Implements the pure virtual method basemessage_type::type().
Implements stm::tools::BaseMessage< ContextT >.
Definition at line 531 of file xprintkbinmsg.hpp.
References stm::tools::local::xPrintkBinMessage< ContextT >::type_.
12.83.4.2 template<class ContextT> const std::string & stm::tools::PrintkBinMessage< ContextT>::Type () [inline, static]
Return the static message type string.
Definition at line 539 of file xprintkbinmsg.hpp.
References stm::tools::local::xPrintkBinMessage< ContextT >::type_.
The documentation for this class was generated from the following files:
• printkbinmsg.hpp• xprintkbinmsg.hpp
12.84 stm::pstring Class Reference
#include <filesysaids.hpp>
Inheritance diagram for stm::pstring:
stm::pstring
stm::numpstring
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.84 stm::pstring Class Reference 354
12.84.1 Detailed Description
Class to represent a std::string with a case unsensitive order relation on Windows systems else with a casesensitive order relation used for file system element naming.
Definition at line 150 of file filesysaids.hpp.
Public Member Functions
• pstring (const std::string &path=std::string())Constructs a pstring representing path.
• pstring (const char ∗path)Constructs a pstring representing path.
• bool isContainedIn (const std::string &dir) constReturn true, if this pstring object designates the same file system element than that dir designates, or if thefile system element designated by dir is a directory and this pstring object designates a file system elementcontained in the tree spanned by the directory designated by dir.
• bool designatesSame (const std::string &other) constReturn true, if this pstring object designates the same file system element than that other designates.
• std::string limitedPath (size_t sizeLimitHint) constReturn a string designating this pstring object’s name limited to sizeLimitHint characters, if possible.
Static Public Attributes
• static const char nativeSeparator = ’/’Native path separator. This is ’\’ on Windows and ’/’ else.
• static const char ∗ allowedSeparators = "/"Allowed path separators. This os "\\/" on Windows and "/" else.
12.84.2 Constructor & Destructor Documentation
12.84.2.1 stm::pstring::pstring (const std::string & path = std::string ()) [inline]
Constructs a pstring representing path.
Definition at line 1229 of file filesysxaids.hpp.
12.84.2.2 stm::pstring::pstring (const char ∗ path) [inline]
Constructs a pstring representing path.
Definition at line 1232 of file filesysxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.85 stm::readablefile< NameT > Class Template Reference 355
12.84.3 Member Function Documentation
12.84.3.1 bool stm::pstring::isContainedIn (const std::string & dir) const
Return true, if this pstring object designates the same file system element than that dir designates, or if thefile system element designated by dir is a directory and this pstring object designates a file system elementcontained in the tree spanned by the directory designated by dir.
Definition at line 139 of file filesysaids.cpp.
12.84.3.2 bool stm::pstring::designatesSame (const std::string & other) const
Return true, if this pstring object designates the same file system element than that other designates.
Definition at line 160 of file filesysaids.cpp.
Referenced by stm::designateSame().
12.84.3.3 std::string stm::pstring::limitedPath (size_t sizeLimitHint) const
Return a string designating this pstring object’s name limited to sizeLimitHint characters, if possible.
Definition at line 181 of file filesysaids.cpp.
References PsepChars.
12.84.4 Member Data Documentation
12.84.4.1 const char stm::pstring::nativeSeparator = ’/’ [static]
Native path separator. This is ’\’ on Windows and ’/’ else.
Definition at line 154 of file filesysaids.hpp.
12.84.4.2 const char ∗ stm::pstring::allowedSeparators = "/" [static]
Allowed path separators. This os "\\/" on Windows and "/" else.
Definition at line 157 of file filesysaids.hpp.
Referenced by stm::tools::CtExceptions::add().
The documentation for this class was generated from the following files:
• filesysaids.hpp• filesysxaids.hpp• filesysaids.cpp
12.85 stm::readablefile< NameT > Class Template Reference
#include <filesysaids.hpp>
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.85 stm::readablefile< NameT > Class Template Reference 356
Inheritance diagram for stm::readablefile< NameT >:
stm::readablefile< NameT >
stm::local::xreadablefile
Collaboration diagram for stm::readablefile< NameT >:
stm::readablefile< NameT >
stm::local::xreadablefile
12.85.1 Detailed Description
template<class NameT = pstring> class stm::readablefile< NameT >
Class template representing a file named by its NameT subobject which is guaranteed to be accessible forreading and holding its size at the time of definition.
NameT shall be default and copy constructable, assignable and convertable to std::string thus representingthe file’s name.
Definition at line 564 of file filesysaids.hpp.
Public Types
• typedef NameT name_typeTemplate type parameter NameT.
Public Member Functions
• readablefile () throw ()Construct an unnamed readablefile object.
• readablefile (const std::string &path) throw (std::runtime_error)Construct a readablefile object named path.
• readablefile (const char ∗path) throw (std::runtime_error)Construct a readablefile object named path.
• void swap (readablefile< NameT > &other) throw ()Swaps this readablefile ond other.
• void clear () throw ()Makes this readablefile empty.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.85 stm::readablefile< NameT > Class Template Reference 357
• void setpath (const std::string &path) throw (std::runtime_error)Set this readablefile object’s name to path.
• void setpath (const char ∗path) throw (std::runtime_error)Set this readablefile object’s name to path.
• size_t fileSize () const throw (std::runtime_error)Return the object’s file size. Throw if the object is unnamed.
• bool isTextfile (size_t checksize=std::string::npos, const std::locale &loc=std::locale()) const throw(std::runtime_error)
Returns true, if the first min(checksize, fileSize ()) bytes of the file designated by this readablefile object arewhitespace or printable in the locale loc.
12.85.2 Member Typedef Documentation
12.85.2.1 template<class NameT = pstring> typedef NameT stm::readablefile< NameT >::name_-type
Template type parameter NameT.
Definition at line 570 of file filesysaids.hpp.
12.85.3 Constructor & Destructor Documentation
12.85.3.1 template<class NameT> stm::readablefile< NameT >::readablefile () throw ()[inline]
Construct an unnamed readablefile object.
Definition at line 1611 of file filesysxaids.hpp.
12.85.3.2 template<class NameT> stm::readablefile< NameT >::readablefile (const std::string &path) throw (std::runtime_error) [inline]
Construct a readablefile object named path.
Throw if path is not accessible for reading.
Definition at line 1618 of file filesysxaids.hpp.
References stm::local::xreadablefile::fsize_.
12.85.3.3 template<class NameT> stm::readablefile< NameT >::readablefile (const char ∗ path)throw (std::runtime_error) [inline]
Construct a readablefile object named path.
Throw if path is not accessible for reading.
Definition at line 1641 of file filesysxaids.hpp.
References stm::local::xreadablefile::fsize_.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.85 stm::readablefile< NameT > Class Template Reference 358
12.85.4 Member Function Documentation
12.85.4.1 template<class NameT> void stm::readablefile< NameT >::swap (readablefile< NameT> & other) throw () [inline]
Swaps this readablefile ond other.
Definition at line 1664 of file filesysxaids.hpp.
References stm::local::xreadablefile::fsize_, and stm::smartptr::swap().
Referenced by stm::readablefile< NameT >::clear(), stm::readablefile< NameT >::setpath(), andstm::swap().
12.85.4.2 template<class NameT> void stm::readablefile< NameT >::clear () throw ()[inline]
Makes this readablefile empty.
Definition at line 1673 of file filesysxaids.hpp.
References stm::readablefile< NameT >::swap().
12.85.4.3 template<class NameT> void stm::readablefile< NameT >::setpath (const std::string &path) throw (std::runtime_error) [inline]
Set this readablefile object’s name to path.
Throw if path is not accessible for reading.
Definition at line 1682 of file filesysxaids.hpp.
References stm::readablefile< NameT >::swap().
12.85.4.4 template<class NameT> void stm::readablefile< NameT >::setpath (const char ∗ path)throw (std::runtime_error) [inline]
Set this readablefile object’s name to path.
Throw if path is not accessible for reading.
Definition at line 1691 of file filesysxaids.hpp.
References stm::readablefile< NameT >::swap().
12.85.4.5 template<class NameT> size_t stm::readablefile< NameT >::fileSize () const throw(std::runtime_error) [inline]
Return the object’s file size. Throw if the object is unnamed.
Definition at line 1700 of file filesysxaids.hpp.
References stm::local::xreadablefile::fsize_.
12.85.4.6 template<class NameT> bool stm::readablefile< NameT >::isTextfile (size_t checksize =std::string::npos, const std::locale & loc = std::locale ()) const throw (std::runtime_-error) [inline]
Returns true, if the first min(checksize, fileSize ()) bytes of the file designated by this readablefile objectare whitespace or printable in the locale loc.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.86 stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, multirange >Class Template Reference 359
Definition at line 1715 of file filesysxaids.hpp.
References stm::local::xreadablefile::fsize_.
The documentation for this class was generated from the following files:
• filesysaids.hpp• filesysxaids.hpp
12.86 stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted,multirange > Class Template Reference
#include <smartptrxaids.hpp>
Collaboration diagram for stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, mul-tirange >:
stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, multirange >
stm::integral_set< IntegralRangeT, RangeSetT >
definedids_availableids_
stm::local::xIntegral_set< IntegralRangeT, RangeSetT >
12.86.1 Detailed Description
template<class T, class Compare, class Allocator, bool refcounted, bool multirange> classstm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, multirange >
Definition at line 587 of file smartptrxaids.hpp.
Public Types
• typedef base::template nth_index< 1 >::type by_ptr• typedef boost::iterator_range< range_iterator > range_type• typedef std::map< stm::dword, range_type, std::less< stm::dword >, typename Allocator::template
rebind< stm::dword >::other > range_map• typedef integral_set< integral_range< stm::dword > > rangeid_set
Public Member Functions
• repository_type ()Default constructor.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.86 stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, multirange >Class Template Reference 360
• ∼repository_type ()Destructor.
• void remove (typename base::iterator it, bool noUpdateRange=false)• void updateRange (stm::dword id)• stm::dword defineRange ()
Returns a new range id, i.e.
• void defineRange (stm::dword id)• void undefineRange (stm::dword id)• const range_type & range (stm::dword id) const• bool rangeEmpty (stm::dword id) const• bool rangeDefined (stm::dword id) const• bool rangeAvailable (stm::dword id) const
Public Attributes
• rangeid_set definedids_Set containing all currently defined range ids.
• rangeid_set availableids_Set containing all available range ids.
• range_map ranges_Map of defined range IDs to its ranges. Such a range may be empty.
• const by_ptr & rep_by_ptr_Repository index reference for order by pointer.
Private Types
• typedef boost::multi_index_container< item_descr< T, Compare, refcounted, multirange>, boost::multi_index::indexed_by< boost::multi_index::ordered_unique< boost::multi_-index::member< item_descr< T, Compare, refcounted, multirange >, item_type< T, Compare>,&item_descr< T, Compare, refcounted, multirange >::item > >, boost::multi_index::ordered_-non_unique< boost::multi_index::const_mem_fun< item_descr< T, Compare, refcounted,multirange >, const T ∗,&item_descr< T, Compare, refcounted, multirange >::ptr >, pcomp<T, Compare > > >, typename Allocator::template rebind< item_descr< T, Compare, refcounted,multirange > >::other > base
Classes
• class range_iterator
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.86 stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, multirange >Class Template Reference 361
12.86.2 Member Typedef Documentation
12.86.2.1 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>typedef boost::multi_index_container< item_descr<T, Compare, refcounted, multirange>,boost::multi_index::indexed_by < boost::multi_index::ordered_unique < boost::multi_-index::member < item_descr<T, Compare, refcounted, multirange>, item_type<T, Compare>,&item_descr<T, Compare, refcounted, multirange>::item > >, boost::multi_index::ordered_-non_unique < boost::multi_index::const_mem_fun < item_descr<T, Compare, refcounted,multirange>, const T ∗, &item_descr<T, Compare, refcounted, multirange>::ptr >, pcomp<T,Compare> > >, typename Allocator::template rebind < item_descr<T, Compare, refcounted,multirange> >::other > stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted,multirange >::base [private]
Definition at line 649 of file smartptrxaids.hpp.
12.86.2.2 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>typedef base::template nth_index<1>::type stm::smartptr::local::repository_type< T, Compare,Allocator, refcounted, multirange >::by_ptr
Definition at line 652 of file smartptrxaids.hpp.
12.86.2.3 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>typedef boost::iterator_range<range_iterator> stm::smartptr::local::repository_type< T, Com-pare, Allocator, refcounted, multirange >::range_type
Definition at line 702 of file smartptrxaids.hpp.
12.86.2.4 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>typedef std::map< stm::dword, range_type, std::less<stm::dword>, typename Allocator::templaterebind<stm::dword>::other > stm::smartptr::local::repository_type< T, Compare, Allocator, ref-counted, multirange >::range_map
Definition at line 709 of file smartptrxaids.hpp.
12.86.2.5 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>typedef integral_set<integral_range <stm::dword> > stm::smartptr::local::repository_type< T,Compare, Allocator, refcounted, multirange >::rangeid_set
Definition at line 710 of file smartptrxaids.hpp.
12.86.3 Constructor & Destructor Documentation
12.86.3.1 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, multirange>::repository_type () [inline]
Default constructor.
Definition at line 713 of file smartptrxaids.hpp.
12.86.3.2 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, multirange>::∼repository_type () [inline]
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.86 stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, multirange >Class Template Reference 362
Destructor.
Definition at line 720 of file smartptrxaids.hpp.
12.86.4 Member Function Documentation
12.86.4.1 template<class T, class Compare, class Allocator, bool refcounted, bool multirange> voidstm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, multirange >::remove(typename base::iterator it, bool noUpdateRange = false) [inline]
Definition at line 730 of file smartptrxaids.hpp.
References stm::smartptr::local::item_type< T, Compare >::id, stm::smartptr::local::item_type< T, Com-pare >::ptr, and StmDebugAidsVerify.
12.86.4.2 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>void stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, multirange>::updateRange (stm::dword id) [inline]
Definition at line 755 of file smartptrxaids.hpp.
References StmDebugAidsVerify.
12.86.4.3 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>stm::dword stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, multirange>::defineRange () [inline]
Returns a new range id, i.e.
an id available as range id and inserts this new id into definedids_.
Definition at line 769 of file smartptrxaids.hpp.
References StmDebugAidsVerify.
12.86.4.4 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>void stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, multirange>::defineRange (stm::dword id) [inline]
Definition at line 784 of file smartptrxaids.hpp.
References StmDebugAidsVerify.
12.86.4.5 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>void stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, multirange>::undefineRange (stm::dword id) [inline]
Definition at line 798 of file smartptrxaids.hpp.
References StmDebugAidsVerify.
12.86.4.6 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>const range_type& stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, mul-tirange >::range (stm::dword id) const [inline]
Definition at line 828 of file smartptrxaids.hpp.
References StmDebugAidsVerify.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.86 stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, multirange >Class Template Reference 363
12.86.4.7 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>bool stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, multirange>::rangeEmpty (stm::dword id) const [inline]
Definition at line 838 of file smartptrxaids.hpp.
12.86.4.8 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>bool stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, multirange>::rangeDefined (stm::dword id) const [inline]
Definition at line 847 of file smartptrxaids.hpp.
12.86.4.9 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>bool stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, multirange>::rangeAvailable (stm::dword id) const [inline]
Definition at line 852 of file smartptrxaids.hpp.
12.86.5 Member Data Documentation
12.86.5.1 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>rangeid_set stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, multirange>::definedids_
Set containing all currently defined range ids.
Definition at line 858 of file smartptrxaids.hpp.
12.86.5.2 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>rangeid_set stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, multirange>::availableids_
Set containing all available range ids.
Definition at line 861 of file smartptrxaids.hpp.
12.86.5.3 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>range_map stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, multirange>::ranges_
Map of defined range IDs to its ranges. Such a range may be empty.
Definition at line 864 of file smartptrxaids.hpp.
12.86.5.4 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>const by_ptr& stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, multi-range >::rep_by_ptr_
Repository index reference for order by pointer.
Definition at line 867 of file smartptrxaids.hpp.
The documentation for this class was generated from the following file:
• smartptrxaids.hpp
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.87 stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, multirange>::range_iterator Class Reference 364
12.87 stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted,multirange >::range_iterator Class Reference
#include <smartptrxaids.hpp>
12.87.1 Detailed Description
template<class T, class Compare, class Allocator, bool refcounted, bool multirange> classstm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, multirange >::range_-iterator
Definition at line 654 of file smartptrxaids.hpp.
Public Member Functions
• range_iterator ()• range_iterator (const baseit &it)• range_iterator & operator++ ()• range_iterator operator++ (int ignore)• bool operator== (const range_iterator &other) const• bool operator!= (const range_iterator &other) const• const T & operator ∗ () const• const T ∗ operator→ () const
Private Types
• typedef base::const_iterator baseit
12.87.2 Member Typedef Documentation
12.87.2.1 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>typedef base::const_iterator stm::smartptr::local::repository_type< T, Compare, Allocator, ref-counted, multirange >::range_iterator::baseit [private]
Definition at line 657 of file smartptrxaids.hpp.
12.87.3 Constructor & Destructor Documentation
12.87.3.1 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, multirange >::range_-iterator::range_iterator () [inline]
Definition at line 660 of file smartptrxaids.hpp.
12.87.3.2 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, multirange >::range_-iterator::range_iterator (const baseit & it) [inline]
Definition at line 664 of file smartptrxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.88 stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, false > ClassTemplate Reference 365
12.87.4 Member Function Documentation
12.87.4.1 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>range_iterator& stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, mul-tirange >::range_iterator::operator++ () [inline]
Definition at line 668 of file smartptrxaids.hpp.
12.87.4.2 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>range_iterator stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, multi-range >::range_iterator::operator++ (int ignore) [inline]
Definition at line 674 of file smartptrxaids.hpp.
12.87.4.3 template<class T, class Compare, class Allocator, bool refcounted, bool multirange> boolstm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, multirange >::range_-iterator::operator== (const range_iterator & other) const [inline]
Definition at line 679 of file smartptrxaids.hpp.
12.87.4.4 template<class T, class Compare, class Allocator, bool refcounted, bool multirange> boolstm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, multirange >::range_-iterator::operator!= (const range_iterator & other) const [inline]
Definition at line 686 of file smartptrxaids.hpp.
12.87.4.5 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>const T& stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, multirange>::range_iterator::operator ∗ () const [inline]
Definition at line 691 of file smartptrxaids.hpp.
12.87.4.6 template<class T, class Compare, class Allocator, bool refcounted, bool multirange>const T∗ stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, multirange>::range_iterator::operator→ () const [inline]
Definition at line 696 of file smartptrxaids.hpp.
The documentation for this class was generated from the following file:
• smartptrxaids.hpp
12.88 stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted,false > Class Template Reference
#include <smartptrxaids.hpp>
12.88.1 Detailed Description
template<class T, class Compare, class Allocator, bool refcounted> classstm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, false >
Definition at line 1053 of file smartptrxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.88 stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, false > ClassTemplate Reference 366
Public Types
• typedef boost::iterator_range< range_iterator > range_type
Public Member Functions
• repository_type ()Default constructor.
• ∼repository_type ()Destructor.
• void remove (typename base::iterator it, bool noUpdateRange=false)• void updateRange ()• stm::dword defineRange ()• void undefineRange (stm::dword id)• const range_type & range (stm::dword id) const• bool rangeEmpty (stm::dword id) const• bool rangeDefined (stm::dword id) const• bool rangeAvailable (stm::dword id) const
Public Attributes
• range_type range_Default range.
Private Types
• typedef boost::multi_index_container< item_descr< T, Compare, refcounted, false >,boost::multi_index::indexed_by< boost::multi_index::ordered_unique< boost::multi_-index::member< item_descr< T, Compare, refcounted, false >, const T ∗,&item_descr< T,Compare, refcounted, false >::ptr >, pcomp< T, Compare > > >, typename Allocator::templaterebind< item_descr< T, Compare, refcounted, false > >::other > base
Classes
• class range_iterator
12.88.2 Member Typedef Documentation
12.88.2.1 template<class T, class Compare, class Allocator, bool refcounted> typedefboost::multi_index_container< item_descr<T, Compare, refcounted, false>, boost::multi_-index::indexed_by < boost::multi_index::ordered_unique < boost::multi_index::member <item_descr<T, Compare, refcounted, false>, const T ∗, &item_descr<T, Compare, refcounted,false>::ptr >, pcomp<T, Compare> > >, typename Allocator::template rebind < item_descr<T,Compare, refcounted, false> >::other > stm::smartptr::local::repository_type< T, Compare,Allocator, refcounted, false >::base [private]
Definition at line 1097 of file smartptrxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.88 stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, false > ClassTemplate Reference 367
12.88.2.2 template<class T, class Compare, class Allocator, bool refcounted> typedefboost::iterator_range<range_iterator> stm::smartptr::local::repository_type< T, Compare,Allocator, refcounted, false >::range_type
Definition at line 1148 of file smartptrxaids.hpp.
12.88.3 Constructor & Destructor Documentation
12.88.3.1 template<class T, class Compare, class Allocator, bool refcounted>stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, false >::repository_type() [inline]
Default constructor.
Definition at line 1151 of file smartptrxaids.hpp.
12.88.3.2 template<class T, class Compare, class Allocator, bool refcounted>stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, false >::∼repository_-type () [inline]
Destructor.
Definition at line 1156 of file smartptrxaids.hpp.
12.88.4 Member Function Documentation
12.88.4.1 template<class T, class Compare, class Allocator, bool refcounted> voidstm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, false >::remove(typename base::iterator it, bool noUpdateRange = false) [inline]
Definition at line 1166 of file smartptrxaids.hpp.
References StmDebugAidsVerify.
12.88.4.2 template<class T, class Compare, class Allocator, bool refcounted> voidstm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, false >::updateRange ()[inline]
Definition at line 1183 of file smartptrxaids.hpp.
12.88.4.3 template<class T, class Compare, class Allocator, bool refcounted> stm::dwordstm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, false >::defineRange ()[inline]
Definition at line 1189 of file smartptrxaids.hpp.
12.88.4.4 template<class T, class Compare, class Allocator, bool refcounted> voidstm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, false >::undefineRange(stm::dword id) [inline]
Definition at line 1195 of file smartptrxaids.hpp.
12.88.4.5 template<class T, class Compare, class Allocator, bool refcounted> const range_-type& stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, false >::range
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.89 stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, false>::range_iterator Class Reference 368
(stm::dword id) const [inline]
Definition at line 1208 of file smartptrxaids.hpp.
12.88.4.6 template<class T, class Compare, class Allocator, bool refcounted> boolstm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, false >::rangeEmpty(stm::dword id) const [inline]
Definition at line 1217 of file smartptrxaids.hpp.
12.88.4.7 template<class T, class Compare, class Allocator, bool refcounted> boolstm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, false >::rangeDefined(stm::dword id) const [inline]
Definition at line 1226 of file smartptrxaids.hpp.
12.88.4.8 template<class T, class Compare, class Allocator, bool refcounted> boolstm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, false >::rangeAvailable(stm::dword id) const [inline]
Definition at line 1231 of file smartptrxaids.hpp.
12.88.5 Member Data Documentation
12.88.5.1 template<class T, class Compare, class Allocator, bool refcounted> range_typestm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, false >::range_
Default range.
Definition at line 1237 of file smartptrxaids.hpp.
The documentation for this class was generated from the following file:
• smartptrxaids.hpp
12.89 stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted,false >::range_iterator Class Reference
#include <smartptrxaids.hpp>
12.89.1 Detailed Description
template<class T, class Compare, class Allocator, bool refcounted> classstm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, false >::range_iterator
Definition at line 1100 of file smartptrxaids.hpp.
Public Member Functions
• range_iterator ()• range_iterator (const baseit &it)• range_iterator & operator++ ()
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.89 stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, false>::range_iterator Class Reference 369
• range_iterator operator++ (int ignore)• bool operator== (const range_iterator &other) const• bool operator!= (const range_iterator &other) const• const T & operator ∗ () const• const T ∗ operator→ () const
Private Types
• typedef base::const_iterator baseit
12.89.2 Member Typedef Documentation
12.89.2.1 template<class T, class Compare, class Allocator, bool refcounted> typedef base::const_-iterator stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, false >::range_-iterator::baseit [private]
Definition at line 1103 of file smartptrxaids.hpp.
12.89.3 Constructor & Destructor Documentation
12.89.3.1 template<class T, class Compare, class Allocator, bool refcounted>stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, false >::range_-iterator::range_iterator () [inline]
Definition at line 1106 of file smartptrxaids.hpp.
12.89.3.2 template<class T, class Compare, class Allocator, bool refcounted>stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, false >::range_-iterator::range_iterator (const baseit & it) [inline]
Definition at line 1110 of file smartptrxaids.hpp.
12.89.4 Member Function Documentation
12.89.4.1 template<class T, class Compare, class Allocator, bool refcounted> range_iterator&stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, false >::range_-iterator::operator++ () [inline]
Definition at line 1114 of file smartptrxaids.hpp.
12.89.4.2 template<class T, class Compare, class Allocator, bool refcounted> range_iteratorstm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, false >::range_-iterator::operator++ (int ignore) [inline]
Definition at line 1120 of file smartptrxaids.hpp.
12.89.4.3 template<class T, class Compare, class Allocator, bool refcounted> boolstm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, false >::range_-iterator::operator== (const range_iterator & other) const [inline]
Definition at line 1125 of file smartptrxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.90 stm::scoped_lock Class Reference 370
12.89.4.4 template<class T, class Compare, class Allocator, bool refcounted> boolstm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, false >::range_-iterator::operator!= (const range_iterator & other) const [inline]
Definition at line 1132 of file smartptrxaids.hpp.
12.89.4.5 template<class T, class Compare, class Allocator, bool refcounted> const T&stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, false >::range_-iterator::operator ∗ () const [inline]
Definition at line 1137 of file smartptrxaids.hpp.
12.89.4.6 template<class T, class Compare, class Allocator, bool refcounted> const T∗stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, false >::range_-iterator::operator→ () const [inline]
Definition at line 1142 of file smartptrxaids.hpp.
The documentation for this class was generated from the following file:
• smartptrxaids.hpp
12.90 stm::scoped_lock Class Reference
#include <divaids.hpp>
Inheritance diagram for stm::scoped_lock:
stm::scoped_lock
stm::local::xscoped_lock
Collaboration diagram for stm::scoped_lock:
stm::scoped_lock
stm::local::xscoped_lock
12.90.1 Detailed Description
Scoped lock class.
Locks across the threads of the current process.
Definition at line 1111 of file divaids.hpp.
Public Member Functions
• scoped_lock (StmMutex mutex)
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.90 stm::scoped_lock Class Reference 371
Throws:
std::logic_error, if mutex is invalid.
• scoped_lock (StmMutex mutex, int64 absTimeMs)Throws:
std::range_error on timeout.
• ∼scoped_lock ()
Friends
• bool local::xcondition::wait_ (scoped_lock &, int64)
12.90.2 Constructor & Destructor Documentation
12.90.2.1 stm::scoped_lock::scoped_lock (StmMutex mutex) [inline, explicit]
Throws:
std::logic_error, if mutex is invalid.
Definition at line 2971 of file divxaids.hpp.
References stm::local::xscoped_lock::mutex_, and stmMutexLock().
12.90.2.2 stm::scoped_lock::scoped_lock (StmMutex mutex, int64 absTimeMs) [inline]
Throws:
std::range_error on timeout.
Throws:
std::logic_error, if mutex is invalid.
Definition at line 2989 of file divxaids.hpp.
References stm::local::xscoped_lock::mutex_, and stmMutexTimedLock().
12.90.2.3 stm::scoped_lock::∼scoped_lock () [inline]
Definition at line 3014 of file divxaids.hpp.
References stm::local::xscoped_lock::mutex_, and stmMutexUnlock().
12.90.3 Friends And Related Function Documentation
12.90.3.1 bool local::xcondition::wait_ (scoped_lock &, int64) [friend]
The documentation for this class was generated from the following files:
• divaids.hpp• divxaids.hpp
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.91 Slot Class Reference 372
12.91 Slot Class Reference
12.91.1 Detailed Description
Examples:
smartptrtest.cpp.
Definition at line 206 of file smartptrtest.cpp.
Public Member Functions
• Slot (stm::dword disp=0)• Slot child (stm::dword index) const• stm::dword disp (stm::dword index) const• bool operator< (const Slot &other) const
Private Attributes
• std::vector< Slot > children_• stm::dword disp_
12.91.2 Constructor & Destructor Documentation
12.91.2.1 Slot::Slot (stm::dword disp = 0) [inline]
Examples:
smartptrtest.cpp.
Definition at line 209 of file smartptrtest.cpp.
12.91.3 Member Function Documentation
12.91.3.1 Slot Slot::child (stm::dword index) const [inline]
Examples:
smartptrtest.cpp.
Definition at line 213 of file smartptrtest.cpp.
References children_.
Referenced by Node::Node().
12.91.3.2 stm::dword Slot::disp (stm::dword index) const [inline]
Examples:
smartptrtest.cpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.92 stm::space< CharT > Struct Template Reference 373
Definition at line 218 of file smartptrtest.cpp.
References children_.
Referenced by Node::Node().
12.91.3.3 bool Slot::operator< (const Slot & other) const [inline]
Examples:
smartptrtest.cpp.
Definition at line 223 of file smartptrtest.cpp.
References children_, and disp_.
12.91.4 Member Data Documentation
12.91.4.1 std::vector<Slot> Slot::children_ [private]
Examples:
smartptrtest.cpp.
Definition at line 232 of file smartptrtest.cpp.
Referenced by child(), disp(), and operator<().
12.91.4.2 stm::dword Slot::disp_ [private]
Examples:
smartptrtest.cpp.
Definition at line 233 of file smartptrtest.cpp.
Referenced by operator<().
The documentation for this class was generated from the following file:
• smartptrtest.cpp
12.92 stm::space< CharT > Struct Template Reference
#include <divaids.hpp>
12.92.1 Detailed Description
template<typename CharT> struct stm::space< CharT >
Unary predicate functor template determining if a CharT object is a white space as defined by the currentlocale.
Definition at line 1340 of file divaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.93 basic_ostringstream Class Reference 374
Public Member Functions
• bool operator() (CharT c) constPredicate function call operator.
12.92.2 Member Function Documentation
12.92.2.1 template<typename CharT> bool stm::space< CharT >::operator() (CharT c) const[inline]
Predicate function call operator.
Definition at line 3368 of file divxaids.hpp.
The documentation for this struct was generated from the following files:
• divaids.hpp• divxaids.hpp
12.93 basic_ostringstream Class Reference
Inheritance diagram for basic_ostringstream:
basic_ostringstream
stm::basic_logger< std::string, stdIndent, lineLength, lockingPolicy >
stm::basic_logger< std::wstring, stdIndent, lineLength, lockingPolicy >
stm::logger< stdIndent, lineLength, errorConsole, lockingPolicy >
stm::wlogger< stdIndent, lineLength, errorConsole, lockingPolicy >
The documentation for this class was generated from the following file:
• loggeraids.hpp
12.94 map Class Reference
Inheritance diagram for map:
map
stm::local::xinputrange< std::set< InputFileT >, bufSize >
stm::inputrange< std::set< InputFileT >, bufSize >
stm::inputseq< InputFileT, bufSize >
The documentation for this class was generated from the following file:
• filesysxaids.hpp
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.95 Sudoku Class Reference 375
12.95 Sudoku Class Reference
12.95.1 Detailed Description
Sudoku model.
Examples:
sudoku.cpp.
Definition at line 193 of file sudoku.cpp.
Public Types
• enum {
FirstSolution,
RandomSolution,
UniqueSolution }
Public Member Functions
• Sudoku (bool silent=false)• int generate (stm::word dim)• int read (FILE ∗input)• int test () const
Test the sudoku.
• int solve (stm::dword solution=FirstSolution)Solve this sudoku and replace it with the solution or with its uniquely determined part.
• int write (FILE ∗output) const
Private Types
• typedef boost::shared_ptr< State > StatePtr
Private Member Functions
• int init ()
Private Attributes
• StatePtr state• bool silent• stm::word n• stm::word n2• stm::word n3• stm::word n4• std::vector< std::vector< stm::word > > row• std::vector< std::vector< stm::word > > col• std::vector< std::vector< stm::word > > sub
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.95 Sudoku Class Reference 376
Friends
• class State
Classes
• class StateSudoku state.
12.95.2 Member Typedef Documentation
12.95.2.1 typedef boost::shared_ptr<State> Sudoku::StatePtr [private]
Examples:
sudoku.cpp.
Definition at line 243 of file sudoku.cpp.
12.95.3 Member Enumeration Documentation
12.95.3.1 anonymous enum
Enumerator:
FirstSolutionRandomSolutionUniqueSolution
Definition at line 196 of file sudoku.cpp.
12.95.4 Constructor & Destructor Documentation
12.95.4.1 Sudoku::Sudoku (bool silent = false)
Examples:
sudoku.cpp.
Definition at line 399 of file sudoku.cpp.
12.95.5 Member Function Documentation
12.95.5.1 int Sudoku::generate (stm::word dim)
Examples:
sudoku.cpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.95 Sudoku Class Reference 377
Definition at line 414 of file sudoku.cpp.
References init(), n, and state.
Referenced by main().
12.95.5.2 int Sudoku::read (FILE ∗ input)
Examples:
sudoku.cpp.
Definition at line 426 of file sudoku.cpp.
References init(), n, state, stmDstrDel(), stmDstrLen(), stmDvecFree, StmFgdAppend, StmFgdPreserveNl,and stmFgetDstr().
Referenced by main().
12.95.5.3 int Sudoku::test () const
Test the sudoku.
Returns:
-1, if this is no valid sudoku.The number of undefined positions of this sudoku.
Examples:
sudoku.cpp.
Definition at line 519 of file sudoku.cpp.
References state.
Referenced by main().
12.95.5.4 int Sudoku::solve (stm::dword solution = FirstSolution)
Solve this sudoku and replace it with the solution or with its uniquely determined part.
Parameters:
solution • If FirstSolution and there is more than one solution, choose the first one.• If RandomSolution and there is more than one solution, choose a random one.• If UniqueSolution and there is more than one solution, set this Sudoku to the uniquely de-
termined solution part.
Returns:
-2, if solution or this Sudoku is not valid.-1, if the result a valid sudoku, but not the only possible solution.0, if the result is the only possible valid solution.The number of undefined positions, if the sudoku could not be solved.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.95 Sudoku Class Reference 378
Examples:
sudoku.cpp.
Definition at line 533 of file sudoku.cpp.
References state, and UniqueSolution.
Referenced by main().
12.95.5.5 int Sudoku::write (FILE ∗ output) const
Examples:
sudoku.cpp.
Definition at line 544 of file sudoku.cpp.
References n, n2, n3, state, and StmDebugAidsVerify.
Referenced by main().
12.95.5.6 int Sudoku::init () [private]
Examples:
sudoku.cpp.
Definition at line 490 of file sudoku.cpp.
References col, n, n2, n3, n4, row, and sub.
Referenced by generate(), and read().
12.95.6 Friends And Related Function Documentation
12.95.6.1 friend class State [friend]
Examples:
sudoku.cpp.
Definition at line 241 of file sudoku.cpp.
12.95.7 Member Data Documentation
12.95.7.1 StatePtr Sudoku::state [private]
Examples:
sudoku.cpp.
Definition at line 247 of file sudoku.cpp.
Referenced by generate(), read(), solve(), test(), and write().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.95 Sudoku Class Reference 379
12.95.7.2 bool Sudoku::silent [private]
Examples:
sudoku.cpp.
Definition at line 249 of file sudoku.cpp.
Referenced by Sudoku::State::generate(), and main().
12.95.7.3 stm::word Sudoku::n [private]
Examples:
sudoku.cpp.
Definition at line 250 of file sudoku.cpp.
Referenced by generate(), Sudoku::State::getSub(), init(), read(), and write().
12.95.7.4 stm::word Sudoku::n2 [private]
Examples:
sudoku.cpp.
Definition at line 251 of file sudoku.cpp.
Referenced by Sudoku::State::define(), Sudoku::State::getCol(), Sudoku::State::getRow(), Su-doku::State::init(), init(), Sudoku::State::read(), Sudoku::State::solve(), Sudoku::State::test(), andwrite().
12.95.7.5 stm::word Sudoku::n3 [private]
Examples:
sudoku.cpp.
Definition at line 252 of file sudoku.cpp.
Referenced by init(), and write().
12.95.7.6 stm::word Sudoku::n4 [private]
Examples:
sudoku.cpp.
Definition at line 253 of file sudoku.cpp.
Referenced by Sudoku::State::generate(), Sudoku::State::init(), init(), Sudoku::State::read(), Su-doku::State::solve(), Sudoku::State::State(), and Sudoku::State::test().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.96 Sudoku::State Class Reference 380
12.95.7.7 std::vector<std::vector<stm::word> > Sudoku::row [private]
Examples:
sudoku.cpp.
Definition at line 254 of file sudoku.cpp.
Referenced by Sudoku::State::define(), Sudoku::State::init(), init(), and Sudoku::State::test().
12.95.7.8 std::vector<std::vector<stm::word> > Sudoku::col [private]
Examples:
sudoku.cpp.
Definition at line 255 of file sudoku.cpp.
Referenced by Sudoku::State::define(), Sudoku::State::init(), init(), and Sudoku::State::test().
12.95.7.9 std::vector<std::vector<stm::word> > Sudoku::sub [private]
Examples:
sudoku.cpp.
Definition at line 256 of file sudoku.cpp.
Referenced by Sudoku::State::define(), Sudoku::State::init(), init(), and Sudoku::State::test().
The documentation for this class was generated from the following file:
• sudoku.cpp
12.96 Sudoku::State Class Reference
Collaboration diagram for Sudoku::State:
Sudoku::State
Sudoku
sudoku
12.96.1 Detailed Description
Sudoku state.
Examples:
sudoku.cpp.
Definition at line 262 of file sudoku.cpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.96 Sudoku::State Class Reference 381
Private Member Functions
• State (const Sudoku &sudoku)• int solve (stm::dword solution)
Solve sudoku and replace it with the solution or with its uniquely determined part.
• int read (const char ∗input)• bool test () const• void init ()
Initialize u and pot from sudoku and a.
• int generate ()• stm::word getRow (stm::word k) const• stm::word getCol (stm::word k) const• stm::word getSub (stm::word k) const• bool define (stm::byte el, stm::word k)
Set position k of sudoku to el, if possible.
• void undefine (stm::word k)Unset position k of sudoku.
• void restore (State &other)
Static Private Member Functions
• static stm::word randomVal (stm::word limit)Random number generation.
Private Attributes
• const Sudoku & sudoku• stm::word u• std::vector< stm::byte > a• std::vector< std::set< stm::byte > > pot
Friends
• class Sudoku
12.96.2 Constructor & Destructor Documentation
12.96.2.1 Sudoku::State::State (const Sudoku & sudoku) [inline, private]
Examples:
sudoku.cpp.
Definition at line 267 of file sudoku.cpp.
References a, init(), Sudoku::n4, and pot.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.96 Sudoku::State Class Reference 382
12.96.3 Member Function Documentation
12.96.3.1 int Sudoku::State::solve (stm::dword solution) [private]
Solve sudoku and replace it with the solution or with its uniquely determined part.
Parameters:
solution • If Sudoku::FirstSolution and there is more than one solution, choose the first one.• If Sudoku::RandomSolution and there is more than one solution, choose a random one.• If Sudoku::UniqueSolution and there is more than one solution, set sudoku to the uniquely
determined solution part.
Returns:
-2, if solution or sudoku is not valid.-1, if the result a valid sudoku, but not the only possible solution.0, if the result is the only possible valid solution.The number of undefined positions, if the sudoku could not be solved.
Examples:
sudoku.cpp.
Definition at line 707 of file sudoku.cpp.
References define(), Sudoku::n2, Sudoku::n4, pot, Sudoku::RandomSolution, randomVal(), restore(),solve(), StmDebugAidsVerify, sudoku, test(), u, and Sudoku::UniqueSolution.
Referenced by generate(), and solve().
12.96.3.2 int Sudoku::State::read (const char ∗ input) [private]
Examples:
sudoku.cpp.
Definition at line 579 of file sudoku.cpp.
References a, init(), Sudoku::n2, Sudoku::n4, sudoku, and test().
12.96.3.3 bool Sudoku::State::test () const [private]
Examples:
sudoku.cpp.
Definition at line 665 of file sudoku.cpp.
References a, Sudoku::col, getCol(), getRow(), getSub(), Sudoku::n2, Sudoku::n4, Sudoku::row, Su-doku::sub, and sudoku.
Referenced by generate(), read(), and solve().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.96 Sudoku::State Class Reference 383
12.96.3.4 void Sudoku::State::init () [private]
Initialize u and pot from sudoku and a.
Effects:
Computes the number u of undefined positions and the vector of potential position sets pot.
Examples:
sudoku.cpp.
Definition at line 613 of file sudoku.cpp.
References a, Sudoku::col, getCol(), getRow(), getSub(), Sudoku::n2, Sudoku::n4, pot, Sudoku::row,StmDebugAidsVerify, Sudoku::sub, sudoku, and u.
Referenced by read(), State(), and undefine().
12.96.3.5 int Sudoku::State::generate () [private]
Examples:
sudoku.cpp.
Definition at line 833 of file sudoku.cpp.
References a, define(), Sudoku::n4, Sudoku::RandomSolution, randomVal(), Sudoku::silent, solve(),StmDebugAidsVerify, sudoku, test(), u, and undefine().
Referenced by main().
12.96.3.6 stm::word Sudoku::State::getRow (stm::word k) const [inline, private]
Examples:
sudoku.cpp.
Definition at line 308 of file sudoku.cpp.
References Sudoku::n2, and sudoku.
Referenced by define(), getSub(), init(), and test().
12.96.3.7 stm::word Sudoku::State::getCol (stm::word k) const [inline, private]
Examples:
sudoku.cpp.
Definition at line 313 of file sudoku.cpp.
References Sudoku::n2, and sudoku.
Referenced by define(), getSub(), init(), and test().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.96 Sudoku::State Class Reference 384
12.96.3.8 stm::word Sudoku::State::getSub (stm::word k) const [inline, private]
Examples:
sudoku.cpp.
Definition at line 318 of file sudoku.cpp.
References getCol(), getRow(), Sudoku::n, and sudoku.
Referenced by define(), init(), and test().
12.96.3.9 bool Sudoku::State::define (stm::byte el, stm::word k) [private]
Set position k of sudoku to el, if possible.
Parameters:
el The element value to set.
k The position index.
Requires:
el is element of pos [k].
a [k] == 0.
Note:
If el cannot be set, sudoku is not changed.
Returns:
True, if el could be set and pot could be updated accordingly, else false.
Examples:
sudoku.cpp.
Definition at line 900 of file sudoku.cpp.
References a, Sudoku::col, getCol(), getRow(), getSub(), Sudoku::n2, pot, restore(), Sudoku::row, StmDe-bugAidsVerify, Sudoku::sub, sudoku, and u.
Referenced by generate(), and solve().
12.96.3.10 void Sudoku::State::undefine (stm::word k) [private]
Unset position k of sudoku.
Parameters:
k The element value to unset.
Requires:
pos [k] is empty.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.96 Sudoku::State Class Reference 385
a [k] != 0.
Effects:
Unsets position k of sudoku and updates pot accordingly.
Examples:
sudoku.cpp.
Definition at line 958 of file sudoku.cpp.
References a, init(), pot, StmDebugAidsVerify, and u.
Referenced by generate().
12.96.3.11 void Sudoku::State::restore (State & other) [inline, private]
Examples:
sudoku.cpp.
Definition at line 352 of file sudoku.cpp.
References a, pot, and u.
Referenced by define(), and solve().
12.96.3.12 static stm::word Sudoku::State::randomVal (stm::word limit) [inline, static,private]
Random number generation.
Parameters:
← limit Upper limit for result.
Requires:
limit > 0
Returns:
A pseudo-random number n in the range [0, limit).
Examples:
sudoku.cpp.
Definition at line 366 of file sudoku.cpp.
References StmDebugAidsVerify.
Referenced by generate(), and solve().
12.96.4 Friends And Related Function Documentation
12.96.4.1 friend class Sudoku [friend]
Definition at line 264 of file sudoku.cpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.97 stm::system_condition Class Reference 386
12.96.5 Member Data Documentation
12.96.5.1 const Sudoku& Sudoku::State::sudoku [private]
Examples:
sudoku.cpp.
Definition at line 372 of file sudoku.cpp.
Referenced by define(), generate(), getCol(), getRow(), getSub(), init(), main(), read(), solve(), and test().
12.96.5.2 stm::word Sudoku::State::u [private]
Examples:
sudoku.cpp.
Definition at line 374 of file sudoku.cpp.
Referenced by define(), generate(), init(), main(), restore(), solve(), and undefine().
12.96.5.3 std::vector<stm::byte> Sudoku::State::a [private]
Examples:
sudoku.cpp.
Definition at line 375 of file sudoku.cpp.
Referenced by define(), generate(), init(), read(), restore(), State(), test(), and undefine().
12.96.5.4 std::vector<std::set<stm::byte> > Sudoku::State::pot [private]
Examples:
sudoku.cpp.
Definition at line 376 of file sudoku.cpp.
Referenced by define(), init(), restore(), solve(), State(), and undefine().
The documentation for this class was generated from the following file:
• sudoku.cpp
12.97 stm::system_condition Class Reference
#include <divaids.hpp>
Inheritance diagram for stm::system_condition:
stm::system_condition
stm::local::xsystem_condition
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.97 stm::system_condition Class Reference 387
Collaboration diagram for stm::system_condition:
stm::system_condition
stm::local::xsystem_condition
12.97.1 Detailed Description
System condition class.
Definition at line 1059 of file divaids.hpp.
Public Member Functions
• system_condition (const std::string &name)Throws:
std::logic_error on error.
• ∼system_condition ()• void signal ()
Throws:
std::logic_error on error.
• void broadcast ()Throws:
std::logic_error on error.
• void wait (system_scoped_lock &lock)Throws:
std::logic_error on error.
• bool timed_wait (system_scoped_lock &lock, int64 absTimeMs)Throws:
std::logic_error on error.
12.97.2 Constructor & Destructor Documentation
12.97.2.1 stm::system_condition::system_condition (const std::string & name) [inline,explicit]
Throws:
std::logic_error on error.
Definition at line 2893 of file divxaids.hpp.
References stm::local::xsystem_condition::cond_.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.97 stm::system_condition Class Reference 388
12.97.2.2 stm::system_condition::∼system_condition () [inline]
Definition at line 2910 of file divxaids.hpp.
References stm::local::xsystem_condition::cond_, and stmNamedConditionDestroy().
12.97.3 Member Function Documentation
12.97.3.1 void stm::system_condition::signal () [inline]
Throws:
std::logic_error on error.
Definition at line 2916 of file divxaids.hpp.
References stm::local::xsystem_condition::cond_, and stmNamedConditionSignal().
12.97.3.2 void stm::system_condition::broadcast () [inline]
Throws:
std::logic_error on error.
Definition at line 2933 of file divxaids.hpp.
References stm::local::xsystem_condition::cond_, and stmNamedConditionBroadcast().
12.97.3.3 void stm::system_condition::wait (system_scoped_lock & lock) [inline]
Throws:
std::logic_error on error.
Definition at line 2950 of file divxaids.hpp.
References stm::local::xsystem_condition::wait_().
12.97.3.4 bool stm::system_condition::timed_wait (system_scoped_lock & lock, int64 absTimeMs)[inline]
Throws:
std::logic_error on error.
Definition at line 2958 of file divxaids.hpp.
References stm::local::xsystem_condition::wait_().
The documentation for this class was generated from the following files:
• divaids.hpp• divxaids.hpp
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.98 stm::system_scoped_lock Class Reference 389
12.98 stm::system_scoped_lock Class Reference
#include <divaids.hpp>
Inheritance diagram for stm::system_scoped_lock:
stm::system_scoped_lock
stm::local::xsystem_scoped_lock
Collaboration diagram for stm::system_scoped_lock:
stm::system_scoped_lock
stm::local::xsystem_scoped_lock
12.98.1 Detailed Description
System scoped lock class.
Locks across all processes running on the system.
Definition at line 1135 of file divaids.hpp.
Public Member Functions
• system_scoped_lock (StmNamedMutex mutex)Throws:
std::logic_error, if mutex is invalid.
• system_scoped_lock (StmNamedMutex mutex, int64 absTimeMs)Throws:
std::range_error on timeout.
• ∼system_scoped_lock ()
Friends
• bool local::xsystem_condition::wait_ (system_scoped_lock &, int64)
12.98.2 Constructor & Destructor Documentation
12.98.2.1 stm::system_scoped_lock::system_scoped_lock (StmNamedMutex mutex) [inline,explicit]
Throws:
std::logic_error, if mutex is invalid.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.99 TestPtr< Policy > Struct Template Reference 390
Definition at line 3024 of file divxaids.hpp.
References stm::local::xsystem_scoped_lock::mutex_, and stmNamedMutexLock().
12.98.2.2 stm::system_scoped_lock::system_scoped_lock (StmNamedMutex mutex, int64 ab-sTimeMs) [inline]
Throws:
std::range_error on timeout.
Throws:
std::logic_error, if mutex is invalid.
Definition at line 3042 of file divxaids.hpp.
References stm::local::xsystem_scoped_lock::mutex_, and stmNamedMutexTimedLock().
12.98.2.3 stm::system_scoped_lock::∼system_scoped_lock () [inline]
Definition at line 3067 of file divxaids.hpp.
References stm::local::xsystem_scoped_lock::mutex_, and stmNamedMutexUnlock().
12.98.3 Friends And Related Function Documentation
12.98.3.1 bool local::xsystem_condition::wait_ (system_scoped_lock &, int64) [friend]
The documentation for this class was generated from the following files:
• divaids.hpp• divxaids.hpp
12.99 TestPtr< Policy > Struct Template Reference
12.99.1 Detailed Description
template<class Policy> struct TestPtr< Policy >
Examples:
smartptrtest.cpp.
Definition at line 336 of file smartptrtest.cpp.
Public Types
• typedef stm::injective< stm::dword, std::less< stm::dword >, std::allocator< stm::dword >, Policy>::ptr DwordPtr
• typedef stm::injective< std::string, std::less< std::string >, std::allocator< std::string >, Policy>::ptr StrPtr
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.99 TestPtr< Policy > Struct Template Reference 391
Public Member Functions
• TestPtr ()• TestPtr (stm::dword dw0, stm::dword dw1, const std::string &str0, const std::string &str1)• template<class ArchiveT>
void save (const std::string &file) const• template<class ArchiveT>
void load (const std::string &file)• void tell (const std::string &title) const• bool operator== (const TestPtr &other)
Public Attributes
• DwordPtr dwptr0• DwordPtr dwptr1• StrPtr strptr0• StrPtr strptr1• StrPtr strptr2
12.99.2 Member Typedef Documentation
12.99.2.1 template<class Policy> typedef stm::injective< stm::dword, std::less<stm::dword>,std::allocator<stm::dword>, Policy >::ptr TestPtr< Policy >::DwordPtr
Examples:
smartptrtest.cpp.
Definition at line 344 of file smartptrtest.cpp.
12.99.2.2 template<class Policy> typedef stm::injective< std::string, std::less<std::string>,std::allocator<std::string>, Policy >::ptr TestPtr< Policy >::StrPtr
Examples:
smartptrtest.cpp.
Definition at line 352 of file smartptrtest.cpp.
12.99.3 Constructor & Destructor Documentation
12.99.3.1 template<class Policy> TestPtr< Policy >::TestPtr () [inline]
Examples:
smartptrtest.cpp.
Definition at line 354 of file smartptrtest.cpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.99 TestPtr< Policy > Struct Template Reference 392
12.99.3.2 template<class Policy> TestPtr< Policy >::TestPtr (stm::dword dw0, stm::dword dw1,const std::string & str0, const std::string & str1) [inline]
Definition at line 357 of file smartptrtest.cpp.
References TestPtr< Policy >::strptr0, and TestPtr< Policy >::strptr2.
12.99.4 Member Function Documentation
12.99.4.1 template<class Policy> template<class ArchiveT> void TestPtr< Policy >::save (conststd::string & file) const [inline]
Examples:
smartptrtest.cpp.
Definition at line 372 of file smartptrtest.cpp.
References TestPtr< Policy >::dwptr0, TestPtr< Policy >::dwptr1, TestPtr< Policy >::strptr0, TestPtr<Policy >::strptr1, and TestPtr< Policy >::strptr2.
12.99.4.2 template<class Policy> template<class ArchiveT> void TestPtr< Policy >::load (conststd::string & file) [inline]
Examples:
smartptrtest.cpp.
Definition at line 385 of file smartptrtest.cpp.
References TestPtr< Policy >::dwptr0, TestPtr< Policy >::dwptr1, TestPtr< Policy >::strptr0, TestPtr<Policy >::strptr1, and TestPtr< Policy >::strptr2.
12.99.4.3 template<class Policy> void TestPtr< Policy >::tell (const std::string & title) const[inline]
Examples:
smartptrtest.cpp.
Definition at line 397 of file smartptrtest.cpp.
References TestPtr< Policy >::dwptr0, TestPtr< Policy >::dwptr1, StmDebugAidsVerify, TestPtr< Policy>::strptr0, TestPtr< Policy >::strptr1, and TestPtr< Policy >::strptr2.
Referenced by testptr().
12.99.4.4 template<class Policy> bool TestPtr< Policy >::operator== (const TestPtr< Policy > &other) [inline]
Examples:
smartptrtest.cpp.
Definition at line 492 of file smartptrtest.cpp.
References TestPtr< Policy >::dwptr0, TestPtr< Policy >::dwptr1, TestPtr< Policy >::strptr0, TestPtr<Policy >::strptr1, and TestPtr< Policy >::strptr2.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.99 TestPtr< Policy > Struct Template Reference 393
12.99.5 Member Data Documentation
12.99.5.1 template<class Policy> DwordPtr TestPtr< Policy >::dwptr0
Examples:
smartptrtest.cpp.
Definition at line 502 of file smartptrtest.cpp.
Referenced by TestPtr< Policy >::load(), TestPtr< Policy >::operator==(), TestPtr< Policy >::save(), andTestPtr< Policy >::tell().
12.99.5.2 template<class Policy> DwordPtr TestPtr< Policy >::dwptr1
Examples:
smartptrtest.cpp.
Definition at line 503 of file smartptrtest.cpp.
Referenced by TestPtr< Policy >::load(), TestPtr< Policy >::operator==(), TestPtr< Policy >::save(), andTestPtr< Policy >::tell().
12.99.5.3 template<class Policy> StrPtr TestPtr< Policy >::strptr0
Examples:
smartptrtest.cpp.
Definition at line 504 of file smartptrtest.cpp.
Referenced by TestPtr< Policy >::load(), TestPtr< Policy >::operator==(), TestPtr< Policy >::save(),TestPtr< Policy >::tell(), and TestPtr< Policy >::TestPtr().
12.99.5.4 template<class Policy> StrPtr TestPtr< Policy >::strptr1
Examples:
smartptrtest.cpp.
Definition at line 505 of file smartptrtest.cpp.
Referenced by TestPtr< Policy >::load(), TestPtr< Policy >::operator==(), TestPtr< Policy >::save(), andTestPtr< Policy >::tell().
12.99.5.5 template<class Policy> StrPtr TestPtr< Policy >::strptr2
Examples:
smartptrtest.cpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.100 TestSet< Policy > Struct Template Reference 394
Definition at line 506 of file smartptrtest.cpp.
Referenced by TestPtr< Policy >::load(), TestPtr< Policy >::operator==(), TestPtr< Policy >::save(),TestPtr< Policy >::tell(), and TestPtr< Policy >::TestPtr().
The documentation for this struct was generated from the following file:
• smartptrtest.cpp
12.100 TestSet< Policy > Struct Template Reference
12.100.1 Detailed Description
template<class Policy> struct TestSet< Policy >
Examples:
smartptrtest.cpp.
Definition at line 515 of file smartptrtest.cpp.
Public Types
• typedef stm::injective< stm::dword, std::less< stm::dword >, std::allocator< stm::dword >, Policy>::set DwordSet
• typedef stm::injective< std::string, std::less< std::string >, std::allocator< std::string >, Policy>::set StrSet
Public Member Functions
• TestSet ()• void define (stm::dword dw0=0, stm::dword dw1=0, const std::string &str0=std::string(), const
std::string &str1=std::string())• template<class ArchiveT>
void save (const std::string &file) const• template<class ArchiveT>
void load (const std::string &file)• void tell (const std::string &title) const• bool operator== (const TestSet &other)
Public Attributes
• DwordSet dwset• StrSet strset• DwordSet::accessor dwptr0• DwordSet::accessor dwptr1• StrSet::accessor strptr0• StrSet::accessor strptr1
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.100 TestSet< Policy > Struct Template Reference 395
12.100.2 Member Typedef Documentation
12.100.2.1 template<class Policy> typedef stm::injective< stm::dword, std::less<stm::dword>,std::allocator<stm::dword>, Policy >::set TestSet< Policy >::DwordSet
Examples:
smartptrtest.cpp.
Definition at line 523 of file smartptrtest.cpp.
12.100.2.2 template<class Policy> typedef stm::injective< std::string, std::less<std::string>,std::allocator<std::string>, Policy >::set TestSet< Policy >::StrSet
Examples:
smartptrtest.cpp.
Definition at line 531 of file smartptrtest.cpp.
12.100.3 Constructor & Destructor Documentation
12.100.3.1 template<class Policy> TestSet< Policy >::TestSet () [inline]
Examples:
smartptrtest.cpp.
Definition at line 533 of file smartptrtest.cpp.
12.100.4 Member Function Documentation
12.100.4.1 template<class Policy> void TestSet< Policy >::define (stm::dword dw0 = 0,stm::dword dw1 = 0, const std::string & str0 = std::string (), const std::string & str1 =std::string ()) [inline]
Examples:
smartptrtest.cpp.
Definition at line 543 of file smartptrtest.cpp.
References TestSet< Policy >::dwptr0, TestSet< Policy >::dwptr1, TestSet< Policy >::dwset, StmDe-bugAidsVerify, TestSet< Policy >::strptr0, TestSet< Policy >::strptr1, and TestSet< Policy >::strset.
Referenced by testset().
12.100.4.2 template<class Policy> template<class ArchiveT> void TestSet< Policy >::save (conststd::string & file) const [inline]
Examples:
smartptrtest.cpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.100 TestSet< Policy > Struct Template Reference 396
Definition at line 572 of file smartptrtest.cpp.
References TestSet< Policy >::dwptr0, TestSet< Policy >::dwptr1, TestSet< Policy >::strptr0, andTestSet< Policy >::strptr1.
12.100.4.3 template<class Policy> template<class ArchiveT> void TestSet< Policy >::load (conststd::string & file) [inline]
Examples:
smartptrtest.cpp.
Definition at line 584 of file smartptrtest.cpp.
References TestSet< Policy >::dwptr0, TestSet< Policy >::dwptr1, TestSet< Policy >::strptr0, andTestSet< Policy >::strptr1.
12.100.4.4 template<class Policy> void TestSet< Policy >::tell (const std::string & title) const[inline]
Examples:
smartptrtest.cpp.
Definition at line 595 of file smartptrtest.cpp.
References TestSet< Policy >::dwptr0, TestSet< Policy >::dwptr1, TestSet< Policy >::dwset, StmDe-bugAidsVerify, TestSet< Policy >::strptr0, TestSet< Policy >::strptr1, and TestSet< Policy >::strset.
Referenced by testset().
12.100.4.5 template<class Policy> bool TestSet< Policy >::operator== (const TestSet< Policy >& other) [inline]
Examples:
smartptrtest.cpp.
Definition at line 677 of file smartptrtest.cpp.
References TestSet< Policy >::dwptr0, TestSet< Policy >::dwptr1, TestSet< Policy >::strptr0, andTestSet< Policy >::strptr1.
12.100.5 Member Data Documentation
12.100.5.1 template<class Policy> DwordSet TestSet< Policy >::dwset
Examples:
smartptrtest.cpp.
Definition at line 686 of file smartptrtest.cpp.
Referenced by TestSet< Policy >::define(), and TestSet< Policy >::tell().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.100 TestSet< Policy > Struct Template Reference 397
12.100.5.2 template<class Policy> StrSet TestSet< Policy >::strset
Examples:
smartptrtest.cpp.
Definition at line 687 of file smartptrtest.cpp.
Referenced by TestSet< Policy >::define(), and TestSet< Policy >::tell().
12.100.5.3 template<class Policy> DwordSet::accessor TestSet< Policy >::dwptr0
Examples:
smartptrtest.cpp.
Definition at line 688 of file smartptrtest.cpp.
Referenced by TestSet< Policy >::define(), TestSet< Policy >::load(), TestSet< Policy >::operator==(),TestSet< Policy >::save(), TestSet< Policy >::tell(), and testset().
12.100.5.4 template<class Policy> DwordSet::accessor TestSet< Policy >::dwptr1
Examples:
smartptrtest.cpp.
Definition at line 689 of file smartptrtest.cpp.
Referenced by TestSet< Policy >::define(), TestSet< Policy >::load(), TestSet< Policy >::operator==(),TestSet< Policy >::save(), TestSet< Policy >::tell(), and testset().
12.100.5.5 template<class Policy> StrSet::accessor TestSet< Policy >::strptr0
Examples:
smartptrtest.cpp.
Definition at line 690 of file smartptrtest.cpp.
Referenced by TestSet< Policy >::define(), TestSet< Policy >::load(), TestSet< Policy >::operator==(),TestSet< Policy >::save(), TestSet< Policy >::tell(), and testset().
12.100.5.6 template<class Policy> StrSet::accessor TestSet< Policy >::strptr1
Examples:
smartptrtest.cpp.
Definition at line 691 of file smartptrtest.cpp.
Referenced by TestSet< Policy >::define(), TestSet< Policy >::load(), TestSet< Policy >::operator==(),TestSet< Policy >::save(), TestSet< Policy >::tell(), and testset().
The documentation for this struct was generated from the following file:
• smartptrtest.cpp
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.101 stm::wlogger< stdIndent, lineLength, errorConsole, lockingPolicy > Class TemplateReference 398
12.101 stm::wlogger< stdIndent, lineLength, errorConsole, lockingPolicy > ClassTemplate Reference
#include <loggeraids.hpp>
Inheritance diagram for stm::wlogger< stdIndent, lineLength, errorConsole, lockingPolicy >:
stm::wlogger< stdIndent, lineLength, errorConsole, lockingPolicy >stm::basic_logger< std::wstring, stdIndent, lineLength, lockingPolicy >
stm::logger_base
stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >
std::basic_ostringstream< std::wstring ::value_type, std::wstring ::traits_type, std::wstring ::allocator_type >
stm::local::basic_xlogger< std::wstring, lockingPolicy >
stm::local::basic_xlogger< StringT, lockingPolicy >< std::wstring, lockingPolicy >
< std::wstring, stdIndent, lineLength, lockingPolicy >
Collaboration diagram for stm::wlogger< stdIndent, lineLength, errorConsole, lockingPolicy >:
stm::wlogger< stdIndent, lineLength, errorConsole, lockingPolicy >stm::basic_logger< std::wstring, stdIndent, lineLength, lockingPolicy >
stm::logger_base
stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >
std::basic_ostringstream< std::wstring ::value_type, std::wstring ::traits_type, std::wstring ::allocator_type >
stm::local::basic_xlogger< std::wstring, lockingPolicy >
stm::local::basic_xlogger< StringT, lockingPolicy >::Stream output
stm::local::basic_xlogger< StringT, lockingPolicy >output
stm::local::basic_xlogger< StringT, lockingPolicy >::Fmtfmt
< std::wstring, lockingPolicy >
< std::wstring, stdIndent, lineLength, lockingPolicy >
12.101.1 Detailed Description
template<word stdIndent = 4, word lineLength = 79, bool errorConsole = false, word lockingPolicy= logger_base::NoLocking> class stm::wlogger< stdIndent, lineLength, errorConsole, lockingPolicy>
Class template to manage formatted logging on a std::wstring based output stream (normally a log file) andoptionally on a second std::wstring based stream (normally a console, by default std::wcout, if templateparameter errorConsole is false (the default), or else std::wcerr).
Since wlogger is indirectly derived from a std::wostringstream, data insertion into wlogger objects is easilypossible. On construction the base class std::wostingstream object is default constructed and then initializedto use uppercase letters for hexadecimal numbers and to use right adjusted fixed point notation for floatingpoint numbers. If formatted printig to a stream is done, the default value for indentation is given by thetemplate parameter stdIndent and the default line length is given by the template parameter lineLength.
According to the template parameter lockingPolicy either no locking is possible (logger_base::NoLocking)or an unnamed mutex (see Abstract Data Type StmMutex) for logger_base::ProcessLocking or anamed mutex (see Abstract Data Type StmNamedMutex) for logger_base::SystemLocking is used bystm::wlogger::locker to perform locking across all threads of the calling process or across all threads ofthe system, respectively. The mutex name for system-wide locking has to be supplied to the constructor ofstm::wlogger.
Definition at line 515 of file loggeraids.hpp.
Public Member Functions
• wlogger (bool enableStream=false, std::wostream &stream=errorConsole?std::wcerr:std::wcout,const std::string &mutexName=std::string())
Construct a wlogger object to print on stream (default the standard console), if enableStream is true (defaultfalse).
• wlogger (bool enableStream, const std::string &mutexName)Construct a logger object to print on stream (default the standard console), if enableStream is true.
• wlogger (std::ostream &stream, const std::string &mutexName)
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.102 stm::tools::local::xArgList Class Reference 399
Construct a logger object to print on stream.
• wlogger (std::wostream &stream, bool enableConsole=false, const std::string &mutex-Name=std::string())
Construct a wlogger object to print on stream and on the standard console, if enableConsole is true (defaultfalse).
• wlogger (std::wostream &stream, std::wostream &console, const std::string &mutex-Name=std::string())
Construct a wlogger object to print on stream and on console.
• void setConsole ()Configure this wlogger object to print on the standard console.
12.101.2 Constructor & Destructor Documentation
12.101.2.1 template<word stdIndent, word lineLength, bool errorConsole, word lockingPolicy>stm::wlogger< stdIndent, lineLength, errorConsole, lockingPolicy >::wlogger (bool enableStream= false, std::wostream & stream = errorConsole ? std::wcerr : std::wcout, conststd::string & mutexName = std::string ()) [inline]
Construct a wlogger object to print on stream (default the standard console), if enableStream is true (defaultfalse).
mutexName is the name of the mutex used for system-wide locking, if applicable. If for system-widelocking mutexName is empty, the standard name ’StmLoggerLock’ is used.
Definition at line 1271 of file loggerxaids.hpp.
References stm::basic_logger< std::string, stdIndent, lineLength, lockingPolicy >::setStream().
The documentation for this class was generated from the following files:
• loggeraids.hpp• loggerxaids.hpp
12.102 stm::tools::local::xArgList Class Reference
#include <xctaids.hpp>
Inheritance diagram for stm::tools::local::xArgList:
stm::tools::local::xArgList
stm::tools::Ct::ArgList
Collaboration diagram for stm::tools::local::xArgList:
stm::tools::local::xArgListstm::tools::Ctct_
stm::tools::local::xCtstm::logger< stdIndent, lineLength, errorConsole, lockingPolicy >logger_
stm::basic_logger< std::string, stdIndent, lineLength, lockingPolicy >
stm::logger_base
stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >
std::basic_ostringstream< std::string ::value_type, std::string ::traits_type, std::string ::allocator_type >
stm::local::basic_xlogger< std::string, lockingPolicy >
stm::local::basic_xlogger< StringT, lockingPolicy >::Stream output
stm::local::basic_xlogger< StringT, lockingPolicy >output
stm::local::basic_xlogger< StringT, lockingPolicy >::Fmtfmt
< std::string, lockingPolicy >
< std::string, stdIndent, lineLength, lockingPolicy >
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.102 stm::tools::local::xArgList Class Reference 400
12.102.1 Detailed Description
stm::tools::Ct::ArgList implementation base class.
Definition at line 145 of file xctaids.hpp.
Protected Types
• typedef xArgList impl
Protected Member Functions
• xArgList (const Ct &ct)
Protected Attributes
• const Ct & ct_
Static Protected Attributes
• static const size_t limit_ = 2048
12.102.2 Member Typedef Documentation
12.102.2.1 typedef xArgList stm::tools::local::xArgList::impl [protected]
Definition at line 148 of file xctaids.hpp.
12.102.3 Constructor & Destructor Documentation
12.102.3.1 stm::tools::local::xArgList::xArgList (const Ct & ct) [inline, protected]
Definition at line 150 of file xctaids.hpp.
12.102.4 Member Data Documentation
12.102.4.1 const Ct& stm::tools::local::xArgList::ct_ [protected]
Definition at line 154 of file xctaids.hpp.
Referenced by stm::tools::Ct::ArgList::exec().
12.102.4.2 const size_t stm::tools::local::xArgList::limit_ = 2048 [static, protected]
Definition at line 155 of file xctaids.hpp.
Referenced by stm::tools::Ct::ArgList::operator+=().
The documentation for this class was generated from the following file:
• xctaids.hpp
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.103 stm::tools::local::xBaseMessage< ContextT > Class Template Reference 401
12.103 stm::tools::local::xBaseMessage< ContextT > Class Template Reference
#include <xbinmsg.hpp>
Inheritance diagram for stm::tools::local::xBaseMessage< ContextT >:
stm::tools::local::xBaseMessage< ContextT >
stm::tools::BaseMessage< ContextT >
stm::tools::McBspMessage< ContextT > stm::tools::PrintkBinMessage< ContextT >
Collaboration diagram for stm::tools::local::xBaseMessage< ContextT >:
stm::tools::local::xBaseMessage< ContextT >
stm::tools::MsgTimestamp
timestamp_
stm::tools::local::xMsgTimestamp
stm::byte_iterator_range
body_
12.103.1 Detailed Description
template<class ContextT> class stm::tools::local::xBaseMessage< ContextT >
stm::tools::BaseMessage implementation base class template.
Definition at line 162 of file xbinmsg.hpp.
Protected Member Functions
• xBaseMessage (context_type &context, dword flags, dword status)• void setTimestamp (word bfn, dword boardTimeSec, word boardTimeMs, dword seqNo)• void setTimestamp (word bfn, byte slot, word chip)
Protected Attributes
• Timestamp timestamp_Timestamp of the binary message.
• dword flags_Flags of the binary message.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.103 stm::tools::local::xBaseMessage< ContextT > Class Template Reference 402
• dword status_Status of the binary message.
• byte_iterator_range body_Byte range of this message’s body exclusive padding bytes.
• context_type & context_Context of the binary message.
Private Types
• typedef ContextT context_type• typedef MsgTimestamp Timestamp
12.103.2 Member Typedef Documentation
12.103.2.1 template<class ContextT> typedef ContextT stm::tools::local::xBaseMessage< Con-textT >::context_type [private]
Reimplemented in stm::tools::BaseMessage< ContextT >, stm::tools::McBspMessage< ContextT >, andstm::tools::PrintkBinMessage< ContextT >.
Definition at line 164 of file xbinmsg.hpp.
12.103.2.2 template<class ContextT> typedef MsgTimestamp stm::tools::local::xBaseMessage<ContextT >::Timestamp [private]
Reimplemented in stm::tools::BaseMessage< ContextT >.
Definition at line 165 of file xbinmsg.hpp.
12.103.3 Constructor & Destructor Documentation
12.103.3.1 template<class ContextT> stm::tools::local::xBaseMessage< ContextT>::xBaseMessage (context_type & context, dword flags, dword status) [inline, protected]
Definition at line 168 of file xbinmsg.hpp.
12.103.4 Member Function Documentation
12.103.4.1 template<class ContextT> void stm::tools::local::xBaseMessage< ContextT>::setTimestamp (word bfn, dword boardTimeSec, word boardTimeMs, dword seqNo) [inline,protected]
Definition at line 175 of file xbinmsg.hpp.
References stm::tools::MsgTimestamp::assign(), and stm::tools::local::xBaseMessage< ContextT>::timestamp_.
Referenced by stm::tools::BaseMessage< ContextT >::setFpgaTimestamp(), andstm::tools::BaseMessage< ContextT >::setUdpTimestamp().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.103 stm::tools::local::xBaseMessage< ContextT > Class Template Reference 403
12.103.4.2 template<class ContextT> void stm::tools::local::xBaseMessage< ContextT>::setTimestamp (word bfn, byte slot, word chip) [inline, protected]
Definition at line 187 of file xbinmsg.hpp.
References stm::tools::MsgTimestamp::assign(), and stm::tools::local::xBaseMessage< ContextT>::timestamp_.
12.103.5 Member Data Documentation
12.103.5.1 template<class ContextT> Timestamp stm::tools::local::xBaseMessage< ContextT>::timestamp_ [protected]
Timestamp of the binary message.
Definition at line 197 of file xbinmsg.hpp.
Referenced by stm::tools::local::xBaseMessage< ContextT >::setTimestamp(), andstm::tools::BaseMessage< ContextT >::timestamp().
12.103.5.2 template<class ContextT> dword stm::tools::local::xBaseMessage< ContextT>::flags_ [protected]
Flags of the binary message.
Definition at line 198 of file xbinmsg.hpp.
Referenced by stm::tools::BaseMessage< ContextT >::flags().
12.103.5.3 template<class ContextT> dword stm::tools::local::xBaseMessage< ContextT>::status_ [protected]
Status of the binary message.
Definition at line 199 of file xbinmsg.hpp.
Referenced by stm::tools::BaseMessage< ContextT >::setStatus(), and stm::tools::BaseMessage< Con-textT >::status().
12.103.5.4 template<class ContextT> byte_iterator_range stm::tools::local::xBaseMessage< Con-textT >::body_ [protected]
Byte range of this message’s body exclusive padding bytes.
Definition at line 200 of file xbinmsg.hpp.
Referenced by stm::tools::BaseMessage< ContextT >::body(), and stm::tools::BaseMessage< ContextT>::setBody().
12.103.5.5 template<class ContextT> context_type& stm::tools::local::xBaseMessage< ContextT>::context_ [protected]
Context of the binary message.
Definition at line 201 of file xbinmsg.hpp.
The documentation for this class was generated from the following file:
• xbinmsg.hpp
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.104 stm::tools::local::xBaseMessageContext< DataT, InputRangeT, ContextT > ClassTemplate Reference 404
12.104 stm::tools::local::xBaseMessageContext< DataT, InputRangeT, ContextT> Class Template Reference
#include <xbinmsg.hpp>
Inheritance diagram for stm::tools::local::xBaseMessageContext< DataT, InputRangeT, ContextT >:
stm::tools::local::xBaseMessageContext< DataT, InputRangeT, ContextT >
stm::tools::BaseMessageContext< DataT, InputRangeT, ContextT >
stm::tools::BinMessageContext< DataT, InputRangeT, ContextT >
Collaboration diagram for stm::tools::local::xBaseMessageContext< DataT, InputRangeT, ContextT >:
stm::tools::local::xBaseMessageContext< DataT, InputRangeT, ContextT >
stm::tools::MsgTimestamp
timestamp_
stm::tools::local::xMsgTimestamp
12.104.1 Detailed Description
template<class DataT, class InputRangeT, class ContextT> classstm::tools::local::xBaseMessageContext< DataT, InputRangeT, ContextT >
stm::tools::BaseMessageContext implementation base class template.
Definition at line 139 of file xbinmsg.hpp.
Protected Member Functions
• xBaseMessageContext (data_type &data, inputrange_type &input)
Protected Attributes
• std::string type_• Timestamp timestamp_• data_type & data_• inputrange_type & input_
Private Types
• typedef DataT data_type• typedef InputRangeT inputrange_type• typedef ContextT context_type• typedef MsgTimestamp Timestamp
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.104 stm::tools::local::xBaseMessageContext< DataT, InputRangeT, ContextT > ClassTemplate Reference 405
12.104.2 Member Typedef Documentation
12.104.2.1 template<class DataT, class InputRangeT, class ContextT> typedef DataTstm::tools::local::xBaseMessageContext< DataT, InputRangeT, ContextT >::data_type[private]
Reimplemented in stm::tools::BaseMessageContext< DataT, InputRangeT, ContextT >, andstm::tools::BinMessageContext< DataT, InputRangeT, ContextT >.
Definition at line 141 of file xbinmsg.hpp.
12.104.2.2 template<class DataT, class InputRangeT, class ContextT> typedef InputRangeTstm::tools::local::xBaseMessageContext< DataT, InputRangeT, ContextT >::inputrange_type[private]
Reimplemented in stm::tools::BaseMessageContext< DataT, InputRangeT, ContextT >, andstm::tools::BinMessageContext< DataT, InputRangeT, ContextT >.
Definition at line 142 of file xbinmsg.hpp.
12.104.2.3 template<class DataT, class InputRangeT, class ContextT> typedef ContextTstm::tools::local::xBaseMessageContext< DataT, InputRangeT, ContextT >::context_type[private]
Reimplemented in stm::tools::BaseMessageContext< DataT, InputRangeT, ContextT >, andstm::tools::BinMessageContext< DataT, InputRangeT, ContextT >.
Definition at line 143 of file xbinmsg.hpp.
12.104.2.4 template<class DataT, class InputRangeT, class ContextT> typedef MsgTimes-tamp stm::tools::local::xBaseMessageContext< DataT, InputRangeT, ContextT >::Timestamp[private]
Reimplemented in stm::tools::BaseMessageContext< DataT, InputRangeT, ContextT >.
Definition at line 144 of file xbinmsg.hpp.
12.104.3 Constructor & Destructor Documentation
12.104.3.1 template<class DataT, class InputRangeT, class ContextT>stm::tools::local::xBaseMessageContext< DataT, InputRangeT, ContextT >::xBaseMessageContext(data_type & data, inputrange_type & input) [inline, protected]
Definition at line 147 of file xbinmsg.hpp.
12.104.4 Member Data Documentation
12.104.4.1 template<class DataT, class InputRangeT, class ContextT> std::stringstm::tools::local::xBaseMessageContext< DataT, InputRangeT, ContextT >::type_-[protected]
Definition at line 153 of file xbinmsg.hpp.
Referenced by stm::tools::BaseMessageContext< DataT, InputRangeT, ContextT >::setType(), andstm::tools::BaseMessageContext< DataT, InputRangeT, ContextT >::type().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.105 stm::tools::local::xBinMessage< ContextT > Class Template Reference 406
12.104.4.2 template<class DataT, class InputRangeT, class ContextT> Timestampstm::tools::local::xBaseMessageContext< DataT, InputRangeT, ContextT >::timestamp_-[protected]
Definition at line 154 of file xbinmsg.hpp.
Referenced by stm::tools::BaseMessageContext< DataT, InputRangeT, ContextT >::setTimestamp(), andstm::tools::BaseMessageContext< DataT, InputRangeT, ContextT >::timestamp().
12.104.4.3 template<class DataT, class InputRangeT, class ContextT> data_type&stm::tools::local::xBaseMessageContext< DataT, InputRangeT, ContextT >::data_-[protected]
Definition at line 155 of file xbinmsg.hpp.
Referenced by stm::tools::BaseMessageContext< DataT, InputRangeT, ContextT >::data().
12.104.4.4 template<class DataT, class InputRangeT, class ContextT> inputrange_-type& stm::tools::local::xBaseMessageContext< DataT, InputRangeT, ContextT >::input_[protected]
Definition at line 156 of file xbinmsg.hpp.
Referenced by stm::tools::BaseMessageContext< DataT, InputRangeT, ContextT >::input().
The documentation for this class was generated from the following file:
• xbinmsg.hpp
12.105 stm::tools::local::xBinMessage< ContextT > Class Template Reference
#include <xbinmsg.hpp>
Inheritance diagram for stm::tools::local::xBinMessage< ContextT >:
stm::tools::local::xBinMessage< ContextT >
stm::tools::BinMessage< ContextT >
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.105 stm::tools::local::xBinMessage< ContextT > Class Template Reference 407
Collaboration diagram for stm::tools::local::xBinMessage< ContextT >:
stm::tools::local::xBinMessage< ContextT >
stm::tools::BaseMessage< ContextT >
message_
stm::byte_iterator_range
stm::tools::local::xBaseMessage< ContextT >
body_
stm::tools::MsgTimestamp
timestamp_
stm::tools::local::xMsgTimestamp
12.105.1 Detailed Description
template<class ContextT> class stm::tools::local::xBinMessage< ContextT >
stm::tools::BinMessage implementation base class template.
Definition at line 397 of file xbinmsg.hpp.
Protected Member Functions
• xBinMessage (const byte ∗first, const byte ∗last, context_type &context, dword flags)
Protected Attributes
• context_type & context_• dword flags_• basemessage_type ∗ message_
Private Types
• typedef ContextT context_type• typedef BaseMessage< ContextT > basemessage_type
12.105.2 Member Typedef Documentation
12.105.2.1 template<class ContextT> typedef ContextT stm::tools::local::xBinMessage< Con-textT >::context_type [private]
Reimplemented in stm::tools::BinMessage< ContextT >.
Definition at line 399 of file xbinmsg.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.106 stm::tools::local::xBinMessageContext< ContextT > Class Template Reference 408
12.105.2.2 template<class ContextT> typedef BaseMessage<ContextT>stm::tools::local::xBinMessage< ContextT >::basemessage_type [private]
Reimplemented in stm::tools::BinMessage< ContextT >.
Definition at line 400 of file xbinmsg.hpp.
12.105.3 Constructor & Destructor Documentation
12.105.3.1 template<class ContextT> stm::tools::local::xBinMessage< ContextT >::xBinMessage(const byte ∗ first, const byte ∗ last, context_type & context, dword flags) [inline,protected]
Definition at line 404 of file xbinmsg.hpp.
12.105.4 Member Data Documentation
12.105.4.1 template<class ContextT> context_type& stm::tools::local::xBinMessage< ContextT>::context_ [protected]
Definition at line 415 of file xbinmsg.hpp.
Referenced by stm::tools::BinMessage< ContextT >::context(), and stm::tools::BinMessage< ContextT>::type().
12.105.4.2 template<class ContextT> dword stm::tools::local::xBinMessage< ContextT>::flags_ [protected]
Definition at line 416 of file xbinmsg.hpp.
Referenced by stm::tools::BinMessage< ContextT >::flags().
12.105.4.3 template<class ContextT> basemessage_type∗ stm::tools::local::xBinMessage< Con-textT >::message_ [protected]
Definition at line 417 of file xbinmsg.hpp.
Referenced by stm::tools::BinMessage< ContextT >::body(), stm::tools::BinMessage< ContextT>::status(), stm::tools::BinMessage< ContextT >::timestamp(), stm::tools::BinMessage< ContextT>::type(), and stm::tools::BinMessage< ContextT >::∼BinMessage().
The documentation for this class was generated from the following file:
• xbinmsg.hpp
12.106 stm::tools::local::xBinMessageContext< ContextT > Class Template Ref-erence
#include <xbinmsg.hpp>
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.106 stm::tools::local::xBinMessageContext< ContextT > Class Template Reference 409
Inheritance diagram for stm::tools::local::xBinMessageContext< ContextT >:
stm::tools::local::xBinMessageContext< ContextT >
stm::tools::BinMessageContext< ContextT >
Collaboration diagram for stm::tools::local::xBinMessageContext< ContextT >:
stm::tools::local::xBinMessageContext< ContextT >
stm::tools::local::xBinMessageGap
gap_
12.106.1 Detailed Description
template<class ContextT> class stm::tools::local::xBinMessageContext< ContextT >
stm::tools::BinMessageContext implementation base class template.
Definition at line 273 of file xbinmsg.hpp.
Protected Types
• typedef ContextT context_typeContext type of the messages to be scanned.
• typedef BaseMessage< ContextT > basemessage_typeCommon base type of all message types registered for the factory.
• typedef basemessage_type ∗(∗ CreateFct )(const byte ∗, const byte ∗, context_type &, dword)Function type of the message create functions.
Protected Member Functions
• xBinMessageContext ()Constructor.
• basemessage_type ∗ createMessage (const byte ∗first, const byte ∗last, context_type &context,dword flags)
Create a message object of one of the message types registered from the range [first, last) read from contextaccording to flags and return a pointer to it.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.106 stm::tools::local::xBinMessageContext< ContextT > Class Template Reference 410
Static Protected Member Functions
• template<template< class > class Message>static basemessage_type ∗ create (const byte ∗first, const byte ∗last, context_type &context, dwordflags)
Member function template allocating a Message<ContextT> message object and returning a pointer to it.
Protected Attributes
• xBinMessageGap gap_Curreent message gap.
• std::set< CreateFct > creation_Set of creation function addresses of the message types registered.
• std::set< CreateFct >::const_iterator crit_If not the past-the-end iterator, iterator referencing the creation function of the message type most recentlycreated.
12.106.2 Member Typedef Documentation
12.106.2.1 template<class ContextT> typedef ContextT stm::tools::local::xBinMessageContext<ContextT >::context_type [protected]
Context type of the messages to be scanned.
Reimplemented in stm::tools::BinMessageContext< DataT, InputRangeT, ContextT >.
Definition at line 277 of file xbinmsg.hpp.
12.106.2.2 template<class ContextT> typedef BaseMessage<ContextT>stm::tools::local::xBinMessageContext< ContextT >::basemessage_type [protected]
Common base type of all message types registered for the factory.
Reimplemented in stm::tools::BinMessageContext< DataT, InputRangeT, ContextT >.
Definition at line 280 of file xbinmsg.hpp.
12.106.2.3 template<class ContextT> typedef basemessage_type∗(∗stm::tools::local::xBinMessageContext< ContextT >::CreateFct)(const byte ∗, const byte ∗,context_type &, dword) [protected]
Function type of the message create functions.
Instances of CreateFct are held in the set creation_.
12.106.3 Constructor & Destructor Documentation
12.106.3.1 template<class ContextT> stm::tools::local::xBinMessageContext< ContextT>::xBinMessageContext () [inline, protected]
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.106 stm::tools::local::xBinMessageContext< ContextT > Class Template Reference 411
Constructor.
Definition at line 287 of file xbinmsg.hpp.
References stm::tools::local::xBinMessageContext< ContextT >::creation_, andstm::tools::local::xBinMessageContext< ContextT >::crit_.
12.106.4 Member Function Documentation
12.106.4.1 template<class ContextT> template<template< class > class Message> staticbasemessage_type∗ stm::tools::local::xBinMessageContext< ContextT >::create (const byte ∗ first,const byte ∗ last, context_type & context, dword flags) [inline, static, protected]
Member function template allocating a Message<ContextT> message object and returning a pointer to it.
The template template parameter Message shall be chosen that Message<ContextT> is publicly derivedfrom BaseMessage<ContextT>.
Definition at line 299 of file xbinmsg.hpp.
12.106.4.2 template<class ContextT> basemessage_type∗ stm::tools::local::xBinMessageContext<ContextT >::createMessage (const byte ∗ first, const byte ∗ last, context_type & context, dwordflags) [inline, protected]
Create a message object of one of the message types registered from the range [first, last) read from contextaccording to flags and return a pointer to it.
Definition at line 313 of file xbinmsg.hpp.
References stm::tools::local::xBinMessageContext< ContextT >::creation_-, stm::tools::local::xBinMessageContext< ContextT >::crit_, stm::tools::local::xBinMessageContext<ContextT >::gap_, stm::tools::local::xBinMessageGap::length_, stm::tools::BaseMessage<ContextT >::NoError, stm::tools::local::xBinMessageGap::offset_, StmDebugAidsVerify, andstm::tools::BaseMessage< ContextT >::ThrowOnError.
12.106.5 Member Data Documentation
12.106.5.1 template<class ContextT> xBinMessageGap stm::tools::local::xBinMessageContext<ContextT >::gap_ [protected]
Curreent message gap.
Definition at line 384 of file xbinmsg.hpp.
Referenced by stm::tools::local::xBinMessageContext< ContextT >::createMessage(), andstm::tools::BinMessageContext< DataT, InputRangeT, ContextT >::gap().
12.106.5.2 template<class ContextT> std::set<CreateFct> stm::tools::local::xBinMessageContext<ContextT >::creation_ [protected]
Set of creation function addresses of the message types registered.
Definition at line 387 of file xbinmsg.hpp.
Referenced by stm::tools::local::xBinMessageContext< ContextT >::createMessage(),stm::tools::BinMessageContext< DataT, InputRangeT, ContextT >::registerMessageType(), andstm::tools::local::xBinMessageContext< ContextT >::xBinMessageContext().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.107 stm::tools::local::xBinMessageGap Class Reference 412
12.106.5.3 template<class ContextT> std::set<CreateFct>::const_iteratorstm::tools::local::xBinMessageContext< ContextT >::crit_ [protected]
If not the past-the-end iterator, iterator referencing the creation function of the message type most recentlycreated.
Definition at line 391 of file xbinmsg.hpp.
Referenced by stm::tools::local::xBinMessageContext< ContextT >::createMessage(), andstm::tools::local::xBinMessageContext< ContextT >::xBinMessageContext().
The documentation for this class was generated from the following file:
• xbinmsg.hpp
12.107 stm::tools::local::xBinMessageGap Class Reference
#include <xbinmsg.hpp>
Inheritance diagram for stm::tools::local::xBinMessageGap:
stm::tools::local::xBinMessageGap
stm::tools::BinMessageContext< DataT, InputRangeT, ContextT >::Gap
12.107.1 Detailed Description
stm::tools::BinMessageContext::Gap implementation base class.
Definition at line 254 of file xbinmsg.hpp.
Protected Types
• typedef xBinMessageGap GapImpl
Protected Member Functions
• xBinMessageGap ()
Protected Attributes
• long long offset_• long long length_
Friends
• class xBinMessageContext
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.108 stm::local::xcondition Class Reference 413
12.107.2 Member Typedef Documentation
12.107.2.1 typedef xBinMessageGap stm::tools::local::xBinMessageGap::GapImpl[protected]
Definition at line 259 of file xbinmsg.hpp.
12.107.3 Constructor & Destructor Documentation
12.107.3.1 stm::tools::local::xBinMessageGap::xBinMessageGap () [inline, protected]
Definition at line 261 of file xbinmsg.hpp.
12.107.4 Friends And Related Function Documentation
12.107.4.1 friend class xBinMessageContext [friend]
Definition at line 256 of file xbinmsg.hpp.
12.107.5 Member Data Documentation
12.107.5.1 long long stm::tools::local::xBinMessageGap::offset_ [protected]
Definition at line 266 of file xbinmsg.hpp.
Referenced by stm::tools::local::xBinMessageContext< ContextT >::createMessage(), andstm::tools::BinMessageContext< DataT, InputRangeT, ContextT >::Gap::offset().
12.107.5.2 long long stm::tools::local::xBinMessageGap::length_ [protected]
Definition at line 267 of file xbinmsg.hpp.
Referenced by stm::tools::local::xBinMessageContext< ContextT >::createMessage(),stm::tools::BinMessageContext< DataT, InputRangeT, ContextT >::Gap::length(), andstm::tools::BinMessageContext< DataT, InputRangeT, ContextT >::Gap::operator bool().
The documentation for this class was generated from the following file:
• xbinmsg.hpp
12.108 stm::local::xcondition Class Reference
#include <divxaids.hpp>
Inheritance diagram for stm::local::xcondition:
stm::local::xcondition
stm::condition
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.109 stm::local::xcrc< RemPolT > Class Template Reference 414
12.108.1 Detailed Description
stm::condition implementation base class.
Definition at line 543 of file divxaids.hpp.
Public Member Functions
• bool wait_ (scoped_lock &lock, int64 absTimeMs)
Protected Member Functions
• xcondition ()
Protected Attributes
• StmCondition cond_
12.108.2 Constructor & Destructor Documentation
12.108.2.1 stm::local::xcondition::xcondition () [inline, protected]
Definition at line 549 of file divxaids.hpp.
12.108.3 Member Data Documentation
12.108.3.1 StmCondition stm::local::xcondition::cond_ [protected]
Definition at line 553 of file divxaids.hpp.
Referenced by stm::condition::broadcast(), stm::condition::condition(), stm::condition::signal(), wait_(),and stm::condition::∼condition().
The documentation for this class was generated from the following file:
• divxaids.hpp
12.109 stm::local::xcrc< RemPolT > Class Template Reference
#include <genxcrc.hpp>
Inheritance diagram for stm::local::xcrc< RemPolT >:
stm::local::xcrc< RemPolT >
stm::crc< RemPolT >
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.109 stm::local::xcrc< RemPolT > Class Template Reference 415
12.109.1 Detailed Description
template<typename RemPolT> class stm::local::xcrc< RemPolT >
stm::crc implementation base class template.
Definition at line 125 of file genxcrc.hpp.
Protected Types
• enum {
ByteLen = CHAR_BIT,
GenPolDegree = sizeof (rempol_type) ∗ ByteLen,
TopByteOffset = GenPolDegree - ByteLen,
TabDim = 1 << ByteLen,
TopCoeffMask = 1 << (GenPolDegree - 1) }• typedef RemPolT rempol_type
Protected Member Functions
• xcrc (rempol_type generatorPolynomial, rempol_type initialRemainderPolynomial, bool reflectIn-put)
Constructor.
• ∼xcrc ()Destructor.
Static Protected Member Functions
• static rempol_type reflect (rempol_type data, size_t bits)
Protected Attributes
• rempol_type tab_ [TabDim]CRC lookup table.
• unsigned char ∗ reflect_Input reflection table.
• const rempol_type generatorPolynomial_CRC generator polynomial of degree GenPolDegree.
• const rempol_type defaultInitialRemainderPolynomial_Default initial remainder polynomial for CRC checks.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.109 stm::local::xcrc< RemPolT > Class Template Reference 416
12.109.2 Member Typedef Documentation
12.109.2.1 template<typename RemPolT> typedef RemPolT stm::local::xcrc< RemPolT>::rempol_type [protected]
Reimplemented in stm::crc< RemPolT >.
Definition at line 128 of file genxcrc.hpp.
12.109.3 Member Enumeration Documentation
12.109.3.1 template<typename RemPolT> anonymous enum [protected]
Enumerator:
ByteLenGenPolDegreeTopByteOffsetTabDimTopCoeffMask
Definition at line 129 of file genxcrc.hpp.
12.109.4 Constructor & Destructor Documentation
12.109.4.1 template<typename RemPolT> stm::local::xcrc< RemPolT >::xcrc (rempol_typegeneratorPolynomial, rempol_type initialRemainderPolynomial, bool reflectInput) [inline,protected]
Constructor.
Definition at line 140 of file genxcrc.hpp.
References stm::local::xcrc< RemPolT >::ByteLen, stm::local::xcrc< RemPolT>::generatorPolynomial_, stm::local::xcrc< RemPolT >::GenPolDegree, stm::local::xcrc< Rem-PolT >::reflect(), stm::local::xcrc< RemPolT >::reflect_, stm::local::xcrc< RemPolT >::tab_,stm::local::xcrc< RemPolT >::TabDim, and stm::local::xcrc< RemPolT >::TopCoeffMask.
12.109.4.2 template<typename RemPolT> stm::local::xcrc< RemPolT >::∼xcrc () [inline,protected]
Destructor.
Definition at line 176 of file genxcrc.hpp.
References stm::local::xcrc< RemPolT >::reflect_.
12.109.5 Member Function Documentation
12.109.5.1 template<typename RemPolT> static rempol_type stm::local::xcrc< RemPolT>::reflect (rempol_type data, size_t bits) [inline, static, protected]
Definition at line 181 of file genxcrc.hpp.
Referenced by stm::local::xcrc< RemPolT >::xcrc().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.110 stm::tools::local::xCt Class Reference 417
12.109.6 Member Data Documentation
12.109.6.1 template<typename RemPolT> rempol_type stm::local::xcrc< RemPolT >::tab_-[TabDim] [protected]
CRC lookup table.
Definition at line 193 of file genxcrc.hpp.
Referenced by stm::local::xcrc< RemPolT >::xcrc().
12.109.6.2 template<typename RemPolT> unsigned char∗ stm::local::xcrc< RemPolT>::reflect_ [protected]
Input reflection table.
Definition at line 196 of file genxcrc.hpp.
Referenced by stm::crc< RemPolT >::inputReflection(), stm::local::xcrc< RemPolT >::xcrc(), andstm::local::xcrc< RemPolT >::∼xcrc().
12.109.6.3 template<typename RemPolT> const rempol_type stm::local::xcrc< RemPolT>::generatorPolynomial_ [protected]
CRC generator polynomial of degree GenPolDegree.
Definition at line 199 of file genxcrc.hpp.
Referenced by stm::crc< RemPolT >::generatorPolynomial(), and stm::local::xcrc< RemPolT >::xcrc().
12.109.6.4 template<typename RemPolT> const rempol_type stm::local::xcrc< RemPolT>::defaultInitialRemainderPolynomial_ [protected]
Default initial remainder polynomial for CRC checks.
Definition at line 202 of file genxcrc.hpp.
Referenced by stm::crc< RemPolT >::defaultInitialRemainderPolynomial().
The documentation for this class was generated from the following file:
• genxcrc.hpp
12.110 stm::tools::local::xCt Class Reference
#include <xctaids.hpp>
Inheritance diagram for stm::tools::local::xCt:
stm::tools::local::xCt
stm::tools::Ct
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.110 stm::tools::local::xCt Class Reference 418
Collaboration diagram for stm::tools::local::xCt:
stm::tools::local::xCtstm::logger< stdIndent, lineLength, errorConsole, lockingPolicy >logger_
stm::basic_logger< std::string, stdIndent, lineLength, lockingPolicy >
stm::logger_base
stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >
std::basic_ostringstream< std::string ::value_type, std::string ::traits_type, std::string ::allocator_type >
stm::local::basic_xlogger< std::string, lockingPolicy >
stm::local::basic_xlogger< StringT, lockingPolicy >::Stream output
stm::local::basic_xlogger< StringT, lockingPolicy >output
stm::local::basic_xlogger< StringT, lockingPolicy >::Fmtfmt
< std::string, lockingPolicy >
< std::string, stdIndent, lineLength, lockingPolicy >
12.110.1 Detailed Description
stm::tools::Ct implementation base class.
Definition at line 160 of file xctaids.hpp.
Protected Types
• typedef xCt impl• typedef logger Logger
Protected Member Functions
• xCt (Logger &logger, int mode)
Protected Attributes
• std::string ciCommentOption_• Logger & logger_• int mode_
12.110.2 Member Typedef Documentation
12.110.2.1 typedef xCt stm::tools::local::xCt::impl [protected]
Definition at line 163 of file xctaids.hpp.
12.110.2.2 typedef logger stm::tools::local::xCt::Logger [protected]
Reimplemented in stm::tools::Ct.
Definition at line 165 of file xctaids.hpp.
12.110.3 Constructor & Destructor Documentation
12.110.3.1 stm::tools::local::xCt::xCt (Logger & logger, int mode) [inline, protected]
Definition at line 167 of file xctaids.hpp.
12.110.4 Member Data Documentation
12.110.4.1 std::string stm::tools::local::xCt::ciCommentOption_ [protected]
Definition at line 172 of file xctaids.hpp.
Referenced by stm::tools::Ct::getCiCommentOption(), and stm::tools::Ct::setCiCommentOption().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.111 stm::tools::local::xCtOperation Class Reference 419
12.110.4.2 Logger& stm::tools::local::xCt::logger_ [mutable, protected]
Definition at line 173 of file xctaids.hpp.
Referenced by stm::tools::Ct::execCommand(), and stm::tools::Ct::logger().
12.110.4.3 int stm::tools::local::xCt::mode_ [protected]
Definition at line 174 of file xctaids.hpp.
Referenced by stm::tools::Ct::execCommand(), stm::tools::Ct::getMode(), and stm::tools::Ct::setMode().
The documentation for this class was generated from the following file:
• xctaids.hpp
12.111 stm::tools::local::xCtOperation Class Reference
#include <xctaids.hpp>
Inheritance diagram for stm::tools::local::xCtOperation:
stm::tools::local::xCtOperation
stm::tools::CtOperation
Collaboration diagram for stm::tools::local::xCtOperation:
stm::tools::local::xCtOperation
stm::tools::Ct ct_stm::tools::local::xCtstm::logger< stdIndent, lineLength, errorConsole, lockingPolicy >logger_
stm::basic_logger< std::string, stdIndent, lineLength, lockingPolicy >
stm::logger_base
stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >
std::basic_ostringstream< std::string ::value_type, std::string ::traits_type, std::string ::allocator_type >
stm::local::basic_xlogger< std::string, lockingPolicy >
stm::local::basic_xlogger< StringT, lockingPolicy >::Stream output
stm::local::basic_xlogger< StringT, lockingPolicy >output
stm::local::basic_xlogger< StringT, lockingPolicy >::Fmtfmt
< std::string, lockingPolicy >
< std::string, stdIndent, lineLength, lockingPolicy >
stm::tools::local::xCtOperation::LabelListlabelList_
12.111.1 Detailed Description
stm::tools::CtOperation implementation base class.
Definition at line 179 of file xctaids.hpp.
Protected Types
• typedef xCtOperation impl• typedef logger Logger
Protected Member Functions
• xCtOperation (Ct &ct, unsigned int timeoutSec)
Protected Attributes
• std::string vobRoot_• std::string currentReplica_
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.111 stm::tools::local::xCtOperation Class Reference 420
• unsigned int mastershipTimeout_• LabelList labelList_ [2]• bool labelsPrepared_• Ct & ct_
Classes
• class LabelList
12.111.2 Member Typedef Documentation
12.111.2.1 typedef xCtOperation stm::tools::local::xCtOperation::impl [protected]
Definition at line 182 of file xctaids.hpp.
12.111.2.2 typedef logger stm::tools::local::xCtOperation::Logger [protected]
Definition at line 184 of file xctaids.hpp.
12.111.3 Constructor & Destructor Documentation
12.111.3.1 stm::tools::local::xCtOperation::xCtOperation (Ct & ct, unsigned int timeoutSec)[inline, protected]
Definition at line 207 of file xctaids.hpp.
12.111.4 Member Data Documentation
12.111.4.1 std::string stm::tools::local::xCtOperation::vobRoot_ [protected]
Definition at line 213 of file xctaids.hpp.
Referenced by stm::tools::CtOperation::getCurrentReplica(), stm::tools::CtOperation::getVobRoot(),stm::tools::CtOperation::isLabel(), stm::tools::CtOperation::prepareLabels(), andstm::tools::CtOperation::setVobRoot().
12.111.4.2 std::string stm::tools::local::xCtOperation::currentReplica_ [mutable,protected]
Definition at line 214 of file xctaids.hpp.
Referenced by stm::tools::CtOperation::getCurrentReplica().
12.111.4.3 unsigned int stm::tools::local::xCtOperation::mastershipTimeout_ [protected]
Definition at line 215 of file xctaids.hpp.
Referenced by stm::tools::CtOperation::getMastershipTimeout(), stm::tools::CtOperation::obtainReplicaMastership(),and stm::tools::CtOperation::setMastershipTimeout().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.112 stm::tools::local::xCtOperation::LabelList Class Reference 421
12.111.4.4 LabelList stm::tools::local::xCtOperation::labelList_[2] [protected]
Definition at line 216 of file xctaids.hpp.
Referenced by stm::tools::CtOperation::addLabels(), stm::tools::CtOperation::label(),stm::tools::CtOperation::labelCount(), and stm::tools::CtOperation::prepareLabels().
12.111.4.5 bool stm::tools::local::xCtOperation::labelsPrepared_ [protected]
Definition at line 217 of file xctaids.hpp.
Referenced by stm::tools::CtOperation::prepareLabels().
12.111.4.6 Ct& stm::tools::local::xCtOperation::ct_ [mutable, protected]
Definition at line 218 of file xctaids.hpp.
Referenced by stm::tools::CtOperation::checkOut(), stm::tools::CtOperation::ct(),stm::tools::CtOperation::label(), stm::tools::CtOperation::obtainReplicaMastership(), andstm::tools::CtOperation::prepareLabels().
The documentation for this class was generated from the following file:
• xctaids.hpp
12.112 stm::tools::local::xCtOperation::LabelList Class Reference
#include <xctaids.hpp>
12.112.1 Detailed Description
Definition at line 186 of file xctaids.hpp.
Public Member Functions
• void prepare (bool replace)• const std::string & getCommand () const
Private Attributes
• std::string command_
12.112.2 Member Function Documentation
12.112.2.1 void stm::tools::local::xCtOperation::LabelList::prepare (bool replace) [inline]
Definition at line 189 of file xctaids.hpp.
Referenced by stm::tools::CtOperation::prepareLabels().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.113 stm::local::xdirdata< DataT, EnvT > Class Template Reference 422
12.112.2.2 const std::string& stm::tools::local::xCtOperation::LabelList::getCommand () const[inline]
Definition at line 198 of file xctaids.hpp.
Referenced by stm::tools::CtOperation::label().
12.112.3 Member Data Documentation
12.112.3.1 std::string stm::tools::local::xCtOperation::LabelList::command_ [private]
Definition at line 204 of file xctaids.hpp.
The documentation for this class was generated from the following file:
• xctaids.hpp
12.113 stm::local::xdirdata< DataT, EnvT > Class Template Reference
#include <filesysxaids.hpp>
Inheritance diagram for stm::local::xdirdata< DataT, EnvT >:
stm::local::xdirdata< DataT, EnvT >
stm::path< DataT, EnvT >::dirdata
Collaboration diagram for stm::local::xdirdata< DataT, EnvT >:
stm::local::xdirdata< DataT, EnvT >
DataT
parent_
EnvT
env_
12.113.1 Detailed Description
template<class DataT, class EnvT> class stm::local::xdirdata< DataT, EnvT >
stm::path::dirdata implementation base class template.
Definition at line 179 of file filesysxaids.hpp.
Protected Types
• typedef xdirdata< DataT, EnvT > impl
Protected Member Functions
• xdirdata (EnvT &env)
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.113 stm::local::xdirdata< DataT, EnvT > Class Template Reference 423
• xdirdata (const boost::filesystem::path &dirpath, DataT &parent)
Protected Attributes
• const boost::filesystem::path & dirpath_• DataT ∗ parent_• EnvT & env_
12.113.2 Member Typedef Documentation
12.113.2.1 template<class DataT, class EnvT> typedef xdirdata<DataT, EnvT>stm::local::xdirdata< DataT, EnvT >::impl [protected]
Reimplemented in stm::path< NameT >::dirdata< DataT, EnvT >.
Definition at line 182 of file filesysxaids.hpp.
12.113.3 Constructor & Destructor Documentation
12.113.3.1 template<class DataT, class EnvT> stm::local::xdirdata< DataT, EnvT >::xdirdata(EnvT & env) [inline, protected]
Definition at line 184 of file filesysxaids.hpp.
12.113.3.2 template<class DataT, class EnvT> stm::local::xdirdata< DataT, EnvT >::xdirdata(const boost::filesystem::path & dirpath, DataT & parent) [inline, protected]
Definition at line 190 of file filesysxaids.hpp.
12.113.4 Member Data Documentation
12.113.4.1 template<class DataT, class EnvT> const boost::filesystem::path&stm::local::xdirdata< DataT, EnvT >::dirpath_ [protected]
Definition at line 196 of file filesysxaids.hpp.
Referenced by stm::path< NameT >::dirdata< DataT, EnvT >::dirpath().
12.113.4.2 template<class DataT, class EnvT> DataT∗ stm::local::xdirdata< DataT, EnvT>::parent_ [protected]
Definition at line 197 of file filesysxaids.hpp.
Referenced by stm::path< NameT >::dirdata< DataT, EnvT >::parent().
12.113.4.3 template<class DataT, class EnvT> EnvT& stm::local::xdirdata< DataT, EnvT>::env_ [protected]
Definition at line 198 of file filesysxaids.hpp.
Referenced by stm::path< NameT >::dirdata< DataT, EnvT >::env().
The documentation for this class was generated from the following file:
• filesysxaids.hpp
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.114 stm::tools::local::xDspMessage< ContextT > Class Template Reference 424
12.114 stm::tools::local::xDspMessage< ContextT > Class Template Reference
#include <xdspmsg.hpp>
Inheritance diagram for stm::tools::local::xDspMessage< ContextT >:
stm::tools::local::xDspMessage< ContextT >
stm::tools::DspMessage< ContextT >
Collaboration diagram for stm::tools::local::xDspMessage< ContextT >:
stm::tools::local::xDspMessage< ContextT >stm::tools::BinMessage< ContextT >parent_
stm::byte_iterator_range
body_
stm::tools::BaseMessage< ContextT >
stm::tools::local::xBaseMessage< ContextT >
body_
stm::tools::local::xBinMessage< ContextT >message_
stm::tools::MsgTimestamptimestamp_
stm::tools::local::xMsgTimestamp
stm::tools::local::xTraceHeader
traceHeader_
12.114.1 Detailed Description
template<class ContextT> class stm::tools::local::xDspMessage< ContextT >
stm::tools::DspMessage implementation base class template.
Definition at line 164 of file xdspmsg.hpp.
Protected Member Functions
• xDspMessage (const parent_type &parent)
Protected Attributes
• xTraceHeader traceHeader_If traceHeader_.size_ > 0, trace header.
• dword status_Status of the DSP message.
• byte_iterator_range body_Byte range consisting of the message’s body excluding Length and OpCode fields.
• const parent_type & parent_
Private Types
• typedef ContextT context_type• typedef BinMessage< ContextT > parent_type
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.114 stm::tools::local::xDspMessage< ContextT > Class Template Reference 425
12.114.2 Member Typedef Documentation
12.114.2.1 template<class ContextT> typedef ContextT stm::tools::local::xDspMessage< Con-textT >::context_type [private]
Reimplemented in stm::tools::DspMessage< ContextT >.
Definition at line 166 of file xdspmsg.hpp.
12.114.2.2 template<class ContextT> typedef BinMessage<ContextT>stm::tools::local::xDspMessage< ContextT >::parent_type [private]
Reimplemented in stm::tools::DspMessage< ContextT >.
Definition at line 167 of file xdspmsg.hpp.
12.114.3 Constructor & Destructor Documentation
12.114.3.1 template<class ContextT> stm::tools::local::xDspMessage< ContextT>::xDspMessage (const parent_type & parent) [inline, protected]
Definition at line 170 of file xdspmsg.hpp.
12.114.4 Member Data Documentation
12.114.4.1 template<class ContextT> xTraceHeader stm::tools::local::xDspMessage< ContextT>::traceHeader_ [protected]
If traceHeader_.size_ > 0, trace header.
Definition at line 176 of file xdspmsg.hpp.
Referenced by stm::tools::DspMessage< ContextT >::traceHeader().
12.114.4.2 template<class ContextT> dword stm::tools::local::xDspMessage< ContextT>::status_ [protected]
Status of the DSP message.
Definition at line 177 of file xdspmsg.hpp.
Referenced by stm::tools::DspMessage< ContextT >::DspMessage(), and stm::tools::DspMessage< Con-textT >::status().
12.114.4.3 template<class ContextT> byte_iterator_range stm::tools::local::xDspMessage< Con-textT >::body_ [protected]
Byte range consisting of the message’s body excluding Length and OpCode fields.
Definition at line 178 of file xdspmsg.hpp.
Referenced by stm::tools::DspMessage< ContextT >::body(), and stm::tools::DspMessage< ContextT>::DspMessage().
12.114.4.4 template<class ContextT> const parent_type& stm::tools::local::xDspMessage< Con-textT >::parent_ [protected]
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.115 stm::local::xfilefind< PathContainerT > Class Template Reference 426
Definition at line 180 of file xdspmsg.hpp.
Referenced by stm::tools::DspMessage< ContextT >::DspMessage(), and stm::tools::DspMessage< Con-textT >::parent().
The documentation for this class was generated from the following file:
• xdspmsg.hpp
12.115 stm::local::xfilefind< PathContainerT > Class Template Reference
#include <filesysxaids.hpp>
Inheritance diagram for stm::local::xfilefind< PathContainerT >:
stm::local::xfilefind< PathContainerT >
stm::filefind< PathContainerT >
12.115.1 Detailed Description
template<class PathContainerT> class stm::local::xfilefind< PathContainerT >
stm::filefind implementation base class template.
Definition at line 805 of file filesysxaids.hpp.
Protected Types
• typedef PathContainerT pathcontainer_type• typedef pathcontainer_type::value_type path_type• typedef xfilefind< PathContainerT > impl
Protected Member Functions
• xfilefind (dword flags, const std::string &stem)• boost::filesystem::path partition (const std::string &spec, std::list< std::string > &parts, dword flags)
const
Static Protected Member Functions
• static void handlePath (pathcontainer_type ∗pathcontainer, const boost::filesystem::path &stem,const boost::filesystem::path &entry, std::list< std::string >::const_iterator part, std::list< std::string>::const_iterator partsEnd, dword flags)
Protected Attributes
• dword flags_• boost::filesystem::path stem_
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.115 stm::local::xfilefind< PathContainerT > Class Template Reference 427
Static Protected Attributes
• static const dword NoDirectories = 0x10000000• static const dword NoPlainFiles = 0x20000000• static const dword StoreRelative = 0x40000000
12.115.2 Member Typedef Documentation
12.115.2.1 template<class PathContainerT> typedef PathContainerT stm::local::xfilefind< Path-ContainerT >::pathcontainer_type [protected]
Reimplemented in stm::filefind< PathContainerT >.
Definition at line 808 of file filesysxaids.hpp.
12.115.2.2 template<class PathContainerT> typedef pathcontainer_type::value_typestm::local::xfilefind< PathContainerT >::path_type [protected]
Reimplemented in stm::filefind< PathContainerT >.
Definition at line 809 of file filesysxaids.hpp.
12.115.2.3 template<class PathContainerT> typedef xfilefind<PathContainerT>stm::local::xfilefind< PathContainerT >::impl [protected]
Reimplemented in stm::filefind< PathContainerT >.
Definition at line 810 of file filesysxaids.hpp.
12.115.3 Constructor & Destructor Documentation
12.115.3.1 template<class PathContainerT> stm::local::xfilefind< PathContainerT >::xfilefind(dword flags, const std::string & stem) [inline, protected]
Definition at line 1059 of file filesysxaids.hpp.
References stm::local::xfilefind< PathContainerT >::stem_.
12.115.4 Member Function Documentation
12.115.4.1 template<class PathContainerT> boost::filesystem::path stm::local::xfilefind< Path-ContainerT >::partition (const std::string & spec, std::list< std::string > & parts, dword flags)const [inline, protected]
Definition at line 1087 of file filesysxaids.hpp.
12.115.4.2 template<class PathContainerT> void stm::local::xfilefind< PathContainerT>::handlePath (pathcontainer_type ∗ pathcontainer, const boost::filesystem::path & stem,const boost::filesystem::path & entry, std::list< std::string >::const_iterator part, std::list<std::string >::const_iterator partsEnd, dword flags) [inline, static, protected]
Definition at line 1112 of file filesysxaids.hpp.
References stm::filespec::matches(), and StmDebugAidsVerify.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.116 stm::local::xfilespec Class Reference 428
12.115.5 Member Data Documentation
12.115.5.1 template<class PathContainerT> const dword stm::local::xfilefind< PathContainerT>::NoDirectories = 0x10000000 [static, protected]
Reimplemented in stm::filefind< PathContainerT >.
Definition at line 812 of file filesysxaids.hpp.
12.115.5.2 template<class PathContainerT> const dword stm::local::xfilefind< PathContainerT>::NoPlainFiles = 0x20000000 [static, protected]
Reimplemented in stm::filefind< PathContainerT >.
Definition at line 813 of file filesysxaids.hpp.
12.115.5.3 template<class PathContainerT> const dword stm::local::xfilefind< PathContainerT>::StoreRelative = 0x40000000 [static, protected]
Reimplemented in stm::filefind< PathContainerT >.
Definition at line 814 of file filesysxaids.hpp.
12.115.5.4 template<class PathContainerT> dword stm::local::xfilefind< PathContainerT>::flags_ [protected]
Definition at line 835 of file filesysxaids.hpp.
Referenced by stm::filefind< PathContainerT >::getFlags().
12.115.5.5 template<class PathContainerT> boost::filesystem::path stm::local::xfilefind< Path-ContainerT >::stem_ [protected]
Definition at line 837 of file filesysxaids.hpp.
Referenced by stm::filefind< PathContainerT >::getStem(), and stm::local::xfilefind< PathContainerT>::xfilefind().
The documentation for this class was generated from the following file:
• filesysxaids.hpp
12.116 stm::local::xfilespec Class Reference
#include <filesysxaids.hpp>
Inheritance diagram for stm::local::xfilespec:
stm::local::xfilespec
stm::filespec
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.116 stm::local::xfilespec Class Reference 429
12.116.1 Detailed Description
stm::filespec implementation base class.
Definition at line 553 of file filesysxaids.hpp.
Bitwise orable flags
• static const dword NoPathSeparators = 0x00010000• static const dword NoRootName = 0x00020000• static const dword MakeAbsolute = 0x00040000• static const dword NoCharClass = 0x00080000• static const dword NoBracketExpr = 0x00100000• static const dword UseExtRegularExpr = 0x00200000• static const dword UseMultipleDirOperator = 0x00400000
Protected Types
• typedef xfilespec impl
Protected Member Functions
• xfilespec (const std::string &fspec, dword flags)
Static Protected Member Functions
• static void partition (std::string &spec, std::list< std::string > &parts, dword flags=0, bool redu-ceParts=false)
If the xfilespec::NoPathSeparators flag is set or the xfilespec::MakeAbsolute flag is reset (the default), thefile system spec supplied shall not be absolute and its directory separator partitioned parts are stored inparts without directory separators.
Protected Attributes
• StmRe reRegular expression designating this xfilespec object.
• std::string fspecFile spec string defining this xfilespec object.
• dword flagsFlags of this xfilespec.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.116 stm::local::xfilespec Class Reference 430
Static Protected Attributes
• static StmReCtrl & reCtrl = rectrl::identity• static StmRe noBracketExprFileSpec = NULL• static StmRe noCharClassFileSpec = NULL• static StmRe fullFileSpec = NULL• static StmRe ereFileSpec = xfilespec::initialize ()• static dword id = 0
Static Private Member Functions
• static StmRe initialize ()Initialize regular expressions.
• static int append (StmMtcFctCmd cmd, StmQreMtc qreMtc)Append matched string.
• static int iappend (StmMtcFctCmd cmd, StmQreMtc qreMtc)Append matched string converted to lower case for WIN32.
• static int appChar (StmMtcFctCmd cmd, StmQreMtc qreMtc)Append matched char if any, escaped if necessary and converted to lower case for WIN32.
• static int appDot (StmMtcFctCmd cmd, StmQreMtc qreMtc)Handle ’?’.
• static int appDotSeq (StmMtcFctCmd cmd, StmQreMtc qreMtc)Handle ’∗’.
• static int starStarOp (StmMtcFctCmd cmd, StmQreMtc qreMtc)Handle ’∗∗’.
• static int appCirc (StmMtcFctCmd cmd, StmQreMtc qreMtc)Append ’∧’.
• static int bracketExpr (StmMtcFctCmd cmd, StmReMtc reMtc)Check, if at least one element was matched and handle directory separators.
• static int ereBracketExpr (StmMtcFctCmd cmd, StmReMtc reMtc)Check, if at least one element was matched.
• static int charClassExpr (StmMtcFctCmd cmd, StmReMtc reMtc)Handle char classes.
• static int collSymb (StmMtcFctCmd cmd, StmReMtc reMtc)Handle collation symbols.
• static int checkLeadingDot (StmMtcFctCmd cmd, StmReMtc reMtc)Check, if at least one element was matched and handle leading dot of filename expansion patterns.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.116 stm::local::xfilespec Class Reference 431
Friends
• class xfilefind
Classes
• struct EnvEnvironment for regular expression creation.
• struct RollbackRollback data for regular expression creation.
12.116.2 Member Typedef Documentation
12.116.2.1 typedef xfilespec stm::local::xfilespec::impl [protected]
Definition at line 558 of file filesysxaids.hpp.
12.116.3 Constructor & Destructor Documentation
12.116.3.1 stm::local::xfilespec::xfilespec (const std::string & fspec, dword flags) [inline,protected]
Definition at line 617 of file filesysxaids.hpp.
References stm::rectrl::initialize().
12.116.4 Member Function Documentation
12.116.4.1 void stm::local::xfilespec::partition (std::string & spec, std::list< std::string > & parts,dword flags = 0, bool reduceParts = false) [static, protected]
If the xfilespec::NoPathSeparators flag is set or the xfilespec::MakeAbsolute flag is reset (the default), thefile system spec supplied shall not be absolute and its directory separator partitioned parts are stored inparts without directory separators.
In this case spec is modified to hold the value supplied with all path separators changed to ’/’ for WIN32,if reduceParts is false (the default). Else if reduceParts is true, in spec the longest stem of spec containingno pattern matching operators according to flags is stored and this stem is deleted from parts.
If the xfilespec::NoPathSeparators flag is reset and the xfilespec::MakeAbsolute flag is set, the method par-titions the file system spec supplied by determining its longest absolute stem containing no pattern matchingoperators according to flags and stores it in spec. If necessary, the function boost::filesystem::initial_path()is used. The directory separator partitioned parts following this stem are stored in parts without directoryseparators.
The method throws if the spec is illegal.
Definition at line 1236 of file filesysaids.cpp.
References stm::filespec::containsUnescapedPatternMatchingOperator(), fspec, MakeAbsolute, andNoPathSeparators.
Referenced by stm::filespec::filespec().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.116 stm::local::xfilespec Class Reference 432
12.116.4.2 StmRe stm::local::xfilespec::initialize () [static, private]
Initialize regular expressions.
Definition at line 617 of file filesysaids.cpp.
References appChar(), appCirc(), appDot(), appDotSeq(), append(), bracketExpr(), charClassExpr(),checkLeadingDot(), collSymb(), ereBracketExpr(), ereFileSpec, EscRe, fullFileSpec, iappend(),stm::rectrl::identity, stm::rectrl::initialize(), noBracketExprFileSpec, noCharClassFileSpec, starStarOp(),stmQreActDef(), and stmReCreate().
12.116.4.3 int stm::local::xfilespec::append (StmMtcFctCmd cmd, StmQreMtc qreMtc)[static, private]
Append matched string.
Definition at line 809 of file filesysaids.cpp.
References StmMtcFctCmd::action, StmMtcFctCmd::deinit, StmMtcFctCmd::init,StmMtcFctCmd::rollback, StmDebugAidsVerify, stmQreMtcData(), stmQreMtcEnv(), stmQreMtcLen(),stmQreMtcSetData(), and stmQreMtcStr().
Referenced by initialize().
12.116.4.4 int stm::local::xfilespec::iappend (StmMtcFctCmd cmd, StmQreMtc qreMtc)[static, private]
Append matched string converted to lower case for WIN32.
Definition at line 841 of file filesysaids.cpp.
References StmMtcFctCmd::action, StmMtcFctCmd::deinit, StmMtcFctCmd::init,StmMtcFctCmd::rollback, StmDebugAidsVerify, stmQreMtcData(), stmQreMtcEnv(), stmQreMtcLen(),stmQreMtcSetData(), and stmQreMtcStr().
Referenced by initialize().
12.116.4.5 int stm::local::xfilespec::appChar (StmMtcFctCmd cmd, StmQreMtc qreMtc)[static, private]
Append matched char if any, escaped if necessary and converted to lower case for WIN32.
Definition at line 877 of file filesysaids.cpp.
References StmMtcFctCmd::action, StmMtcFctCmd::deinit, StmMtcFctCmd::init,StmMtcFctCmd::rollback, StmDebugAidsVerify, stmQreMtcData(), stmQreMtcEnv(), stmQreMtc-SetData(), stmQreMtcSimpleReMtcCount(), stmQreMtcStr(), and stm::rectrl::tolower.
Referenced by initialize().
12.116.4.6 int stm::local::xfilespec::appDot (StmMtcFctCmd cmd, StmQreMtc qreMtc)[static, private]
Handle ’?’.
Definition at line 938 of file filesysaids.cpp.
References StmMtcFctCmd::action, StmMtcFctCmd::deinit, StmMtcFctCmd::init, PsepChars,StmMtcFctCmd::rollback, StmDebugAidsVerify, stmQreMtcData(), stmQreMtcEnv(), stmQreMtc-SetData(), and stmQreMtcSimpleReMtcCount().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.116 stm::local::xfilespec Class Reference 433
Referenced by initialize().
12.116.4.7 int stm::local::xfilespec::appDotSeq (StmMtcFctCmd cmd, StmQreMtc qreMtc)[static, private]
Handle ’∗’.
Definition at line 973 of file filesysaids.cpp.
References StmMtcFctCmd::action, StmMtcFctCmd::deinit, StmMtcFctCmd::init, PsepChars,StmMtcFctCmd::rollback, StmDebugAidsVerify, stmQreMtcData(), stmQreMtcEnv(), stmQreMtc-SetData(), and stmQreMtcSimpleReMtcCount().
Referenced by initialize().
12.116.4.8 int stm::local::xfilespec::starStarOp (StmMtcFctCmd cmd, StmQreMtc qreMtc)[static, private]
Handle ’∗∗’.
Definition at line 1008 of file filesysaids.cpp.
References StmMtcFctCmd::action, StmMtcFctCmd::deinit, flags, StmMtcFctCmd::init,stm::local::xfilespec::Env::LastPart, stm::local::xfilespec::Env::PathSep, PsepChars, PsepRe,StmMtcFctCmd::rollback, StmDebugAidsVerify, stmQreMtcData(), stmQreMtcEnv(), stmQreMtc-SetData(), and UseMultipleDirOperator.
Referenced by initialize().
12.116.4.9 int stm::local::xfilespec::appCirc (StmMtcFctCmd cmd, StmQreMtc qreMtc)[static, private]
Append ’∧’.
Definition at line 1060 of file filesysaids.cpp.
References StmMtcFctCmd::action, StmMtcFctCmd::deinit, StmMtcFctCmd::init,StmMtcFctCmd::rollback, StmDebugAidsVerify, stmQreMtcData(), stmQreMtcEnv(), stmQreMtc-SetData(), and stmQreMtcSimpleReMtcCount().
Referenced by initialize().
12.116.4.10 int stm::local::xfilespec::bracketExpr (StmMtcFctCmd cmd, StmReMtc reMtc)[static, private]
Check, if at least one element was matched and handle directory separators.
Definition at line 1094 of file filesysaids.cpp.
References StmMtcFctCmd::action, PsepRe, StmDebugAidsVerify, StmMtcFctFail, stmReMtcEnv(), andstmReMtcLen().
Referenced by initialize().
12.116.4.11 int stm::local::xfilespec::ereBracketExpr (StmMtcFctCmd cmd, StmReMtc reMtc)[static, private]
Check, if at least one element was matched.
Definition at line 1106 of file filesysaids.cpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.116 stm::local::xfilespec Class Reference 434
References StmMtcFctCmd::action, StmMtcFctFail, and stmReMtcLen().
Referenced by initialize().
12.116.4.12 int stm::local::xfilespec::charClassExpr (StmMtcFctCmd cmd, StmReMtc reMtc)[static, private]
Handle char classes.
Definition at line 1116 of file filesysaids.cpp.
References StmMtcFctCmd::action, StmMtcFctCmd::deinit, StmMtcFctCmd::init,StmMtcFctCmd::rollback, StmDebugAidsVerify, stmReMtcData(), stmReMtcEnv(), stmReMtcLen(),stmReMtcSetData(), and stmReMtcStr().
Referenced by initialize().
12.116.4.13 int stm::local::xfilespec::collSymb (StmMtcFctCmd cmd, StmReMtc reMtc)[static, private]
Handle collation symbols.
Definition at line 1161 of file filesysaids.cpp.
References StmMtcFctCmd::action, StmMtcFctCmd::deinit, StmMtcFctCmd::init,StmMtcFctCmd::rollback, StmDebugAidsVerify, stmReMtcData(), stmReMtcEnv(), stm-ReMtcMtermNr(), and stmReMtcSetData().
Referenced by initialize().
12.116.4.14 int stm::local::xfilespec::checkLeadingDot (StmMtcFctCmd cmd, StmReMtc reMtc)[static, private]
Check, if at least one element was matched and handle leading dot of filename expansion patterns.
Definition at line 1195 of file filesysaids.cpp.
References StmMtcFctCmd::action, StmMtcFctCmd::deinit, StmMtcFctCmd::init,StmMtcFctCmd::rollback, StmDebugAidsVerify, StmMtcFctFail, stmReMtcData(), stmReMtcEnv(),stmReMtcLen(), stmReMtcSetData(), and stmReMtcStr().
Referenced by initialize().
12.116.5 Friends And Related Function Documentation
12.116.5.1 friend class xfilefind [friend]
Definition at line 555 of file filesysxaids.hpp.
12.116.6 Member Data Documentation
12.116.6.1 const dword stm::local::xfilespec::NoPathSeparators = 0x00010000 [static,protected]
Reimplemented in stm::filespec.
Definition at line 562 of file filesysxaids.hpp.
Referenced by partition().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.116 stm::local::xfilespec Class Reference 435
12.116.6.2 const dword stm::local::xfilespec::NoRootName = 0x00020000 [static,protected]
Reimplemented in stm::filespec.
Definition at line 563 of file filesysxaids.hpp.
12.116.6.3 const dword stm::local::xfilespec::MakeAbsolute = 0x00040000 [static,protected]
Reimplemented in stm::filespec.
Definition at line 564 of file filesysxaids.hpp.
Referenced by partition().
12.116.6.4 const dword stm::local::xfilespec::NoCharClass = 0x00080000 [static,protected]
Reimplemented in stm::filespec.
Definition at line 565 of file filesysxaids.hpp.
12.116.6.5 const dword stm::local::xfilespec::NoBracketExpr = 0x00100000 [static,protected]
Reimplemented in stm::filespec.
Definition at line 566 of file filesysxaids.hpp.
12.116.6.6 const dword stm::local::xfilespec::UseExtRegularExpr = 0x00200000 [static,protected]
Reimplemented in stm::filespec.
Definition at line 567 of file filesysxaids.hpp.
12.116.6.7 const dword stm::local::xfilespec::UseMultipleDirOperator = 0x00400000 [static,protected]
Reimplemented in stm::filespec.
Definition at line 568 of file filesysxaids.hpp.
Referenced by starStarOp().
12.116.6.8 StmRe stm::local::xfilespec::re [protected]
Regular expression designating this xfilespec object.
Definition at line 653 of file filesysxaids.hpp.
Referenced by stm::filespec::filespec(), stm::filespec::matches(), and stm::filespec::reStr().
12.116.6.9 std::string stm::local::xfilespec::fspec [protected]
File spec string defining this xfilespec object.
Definition at line 656 of file filesysxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.116 stm::local::xfilespec Class Reference 436
Referenced by stm::filespec::beginsWithRootDirectory(), stm::filespec::beginsWithRootName(),stm::filespec::filespec(), stm::filespec::getSpec(), stm::filespec::isAbsolute(), stm::filespec::normalize(),stm::filespec::operator<(), stm::filespec::operator==(), and partition().
12.116.6.10 dword stm::local::xfilespec::flags [protected]
Flags of this xfilespec.
The least significant word is serving as multi-purpose state parameter.
Definition at line 660 of file filesysxaids.hpp.
Referenced by stm::filespec::operator<(), stm::filespec::operator==(), and starStarOp().
12.116.6.11 StmReCtrl & stm::local::xfilespec::reCtrl = rectrl::identity [static,protected]
Definition at line 662 of file filesysxaids.hpp.
Referenced by stm::filespec::filespec().
12.116.6.12 StmRe stm::local::xfilespec::noBracketExprFileSpec = NULL [static,protected]
Definition at line 663 of file filesysxaids.hpp.
Referenced by stm::filespec::filespec(), and initialize().
12.116.6.13 StmRe stm::local::xfilespec::noCharClassFileSpec = NULL [static,protected]
Definition at line 664 of file filesysxaids.hpp.
Referenced by stm::filespec::filespec(), and initialize().
12.116.6.14 StmRe stm::local::xfilespec::fullFileSpec = NULL [static, protected]
Definition at line 665 of file filesysxaids.hpp.
Referenced by stm::filespec::filespec(), and initialize().
12.116.6.15 StmRe stm::local::xfilespec::ereFileSpec = xfilespec::initialize () [static,protected]
Definition at line 666 of file filesysxaids.hpp.
Referenced by stm::filespec::filespec(), and initialize().
12.116.6.16 dword stm::local::xfilespec::id = 0 [static, protected]
Definition at line 668 of file filesysxaids.hpp.
Referenced by stm::filespec::filespec().
The documentation for this class was generated from the following files:
• filesysxaids.hpp• filesysaids.cpp
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.117 stm::local::xfilespec::Env Struct Reference 437
12.117 stm::local::xfilespec::Env Struct Reference
#include <filesysxaids.hpp>
12.117.1 Detailed Description
Environment for regular expression creation.
Definition at line 575 of file filesysxaids.hpp.
Public Member Functions
• Env (std::string &result, dword specFlags)• void reset (const Rollback ∗rollback)
Public Attributes
• std::string & regexpReference to the regular expression to be created.
• dword flagsFilespac flags.
Static Public Attributes
• static const dword FlagMask = 0x0000ffff• static const dword LastPart = 0x00000001• static const dword PathSep = 0x00000002
12.117.2 Constructor & Destructor Documentation
12.117.2.1 stm::local::xfilespec::Env::Env (std::string & result, dword specFlags) [inline]
Definition at line 581 of file filesysxaids.hpp.
12.117.3 Member Function Documentation
12.117.3.1 void stm::local::xfilespec::Env::reset (const Rollback ∗ rollback) [inline]
Definition at line 586 of file filesysxaids.hpp.
12.117.4 Member Data Documentation
12.117.4.1 const dword stm::local::xfilespec::Env::FlagMask = 0x0000ffff [static]
Definition at line 577 of file filesysxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.118 stm::local::xfilespec::Rollback Struct Reference 438
12.117.4.2 const dword stm::local::xfilespec::Env::LastPart = 0x00000001 [static]
Definition at line 578 of file filesysxaids.hpp.
Referenced by stm::filespec::filespec(), and stm::local::xfilespec::starStarOp().
12.117.4.3 const dword stm::local::xfilespec::Env::PathSep = 0x00000002 [static]
Definition at line 579 of file filesysxaids.hpp.
Referenced by stm::filespec::filespec(), and stm::local::xfilespec::starStarOp().
12.117.4.4 std::string& stm::local::xfilespec::Env::regexp
Reference to the regular expression to be created.
Definition at line 597 of file filesysxaids.hpp.
12.117.4.5 dword stm::local::xfilespec::Env::flags
Filespac flags.
Definition at line 600 of file filesysxaids.hpp.
Referenced by stm::filespec::filespec().
The documentation for this struct was generated from the following file:
• filesysxaids.hpp
12.118 stm::local::xfilespec::Rollback Struct Reference
#include <filesysxaids.hpp>
12.118.1 Detailed Description
Rollback data for regular expression creation.
Definition at line 604 of file filesysxaids.hpp.
Public Member Functions
• Rollback (const Env ∗env)
Public Attributes
• size_t sizeSize Env::regexp has to be cut to this size in case of rollback.
• dword flags
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.119 stm::local::xfilespeclist Class Reference 439
12.118.2 Constructor & Destructor Documentation
12.118.2.1 stm::local::xfilespec::Rollback::Rollback (const Env ∗ env) [inline]
Definition at line 606 of file filesysxaids.hpp.
12.118.3 Member Data Documentation
12.118.3.1 size_t stm::local::xfilespec::Rollback::size
Size Env::regexp has to be cut to this size in case of rollback.
Definition at line 612 of file filesysxaids.hpp.
12.118.3.2 dword stm::local::xfilespec::Rollback::flags
Definition at line 614 of file filesysxaids.hpp.
The documentation for this struct was generated from the following file:
• filesysxaids.hpp
12.119 stm::local::xfilespeclist Class Reference
#include <filesysxaids.hpp>
Inheritance diagram for stm::local::xfilespeclist:
stm::local::xfilespeclist
stm::filespeclist
stm::tools::CtExceptions
12.119.1 Detailed Description
stm::filespeclist implementation base class.
Definition at line 752 of file filesysxaids.hpp.
Protected Types
• typedef xfilespeclist impl
Protected Member Functions
• xfilespeclist (dword flags)
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.120 stm::local::xfixedfmt< FloatT > Class Template Reference 440
Protected Attributes
• dword flags_
Static Protected Attributes
• static const dword NoBraceExpansion = 0x01000000• static const dword SingleSpec = 0x02000000
12.119.2 Member Typedef Documentation
12.119.2.1 typedef xfilespeclist stm::local::xfilespeclist::impl [protected]
Definition at line 755 of file filesysxaids.hpp.
12.119.3 Constructor & Destructor Documentation
12.119.3.1 stm::local::xfilespeclist::xfilespeclist (dword flags) [inline, protected]
Definition at line 761 of file filesysxaids.hpp.
12.119.4 Member Data Documentation
12.119.4.1 const dword stm::local::xfilespeclist::NoBraceExpansion = 0x01000000 [static,protected]
Reimplemented in stm::filespeclist.
Definition at line 758 of file filesysxaids.hpp.
12.119.4.2 const dword stm::local::xfilespeclist::SingleSpec = 0x02000000 [static,protected]
Reimplemented in stm::filespeclist.
Definition at line 759 of file filesysxaids.hpp.
12.119.4.3 dword stm::local::xfilespeclist::flags_ [protected]
Definition at line 763 of file filesysxaids.hpp.
Referenced by stm::filespeclist::append(), and stm::filefind< PathContainerT >::insert().
The documentation for this class was generated from the following file:
• filesysxaids.hpp
12.120 stm::local::xfixedfmt< FloatT > Class Template Reference
#include <divxaids.hpp>
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.120 stm::local::xfixedfmt< FloatT > Class Template Reference 441
Inheritance diagram for stm::local::xfixedfmt< FloatT >:
stm::local::xfixedfmt< FloatT >
stm::fixedfmt< FloatT >
Collaboration diagram for stm::local::xfixedfmt< FloatT >:
stm::local::xfixedfmt< FloatT >
FloatT
val_
12.120.1 Detailed Description
template<typename FloatT> class stm::local::xfixedfmt< FloatT >
stm::fixedfmt implementation base class template.
Definition at line 685 of file divxaids.hpp.
Protected Member Functions
• xfixedfmt (dword precision, FloatT val)
Protected Attributes
• dword prec_• FloatT val_
12.120.2 Constructor & Destructor Documentation
12.120.2.1 template<typename FloatT> stm::local::xfixedfmt< FloatT >::xfixedfmt (dword preci-sion, FloatT val) [inline, protected]
Definition at line 688 of file divxaids.hpp.
12.120.3 Member Data Documentation
12.120.3.1 template<typename FloatT> dword stm::local::xfixedfmt< FloatT >::prec_-[protected]
Definition at line 689 of file divxaids.hpp.
Referenced by stm::fixedfmt< FloatT >::precision().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.121 stm::local::xhexfmt< UnsignedT > Class Template Reference 442
12.120.3.2 template<typename FloatT> FloatT stm::local::xfixedfmt< FloatT >::val_-[protected]
Definition at line 690 of file divxaids.hpp.
Referenced by stm::fixedfmt< FloatT >::operator FloatT().
The documentation for this class was generated from the following file:
• divxaids.hpp
12.121 stm::local::xhexfmt< UnsignedT > Class Template Reference
#include <divxaids.hpp>
Inheritance diagram for stm::local::xhexfmt< UnsignedT >:
stm::local::xhexfmt< UnsignedT >
stm::hexfmt< UnsignedT > stm::local::xhexfmt< ElemT * >
< ElemT * >
stm::hexfmt< ElemT *, DefaultFlags >
Collaboration diagram for stm::local::xhexfmt< UnsignedT >:
stm::local::xhexfmt< UnsignedT >
UnsignedT
val_
12.121.1 Detailed Description
template<typename UnsignedT> class stm::local::xhexfmt< UnsignedT >
stm::hexfmt implementation base class template.
Definition at line 674 of file divxaids.hpp.
Protected Member Functions
• xhexfmt (UnsignedT val, dword flags)
Protected Attributes
• UnsignedT val_• dword flags_
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.122 stm::local::xinputrange< FileRangeT, bufSize > Class Template Reference 443
12.121.2 Constructor & Destructor Documentation
12.121.2.1 template<typename UnsignedT> stm::local::xhexfmt< UnsignedT >::xhexfmt (Un-signedT val, dword flags) [inline, protected]
Definition at line 677 of file divxaids.hpp.
12.121.3 Member Data Documentation
12.121.3.1 template<typename UnsignedT> UnsignedT stm::local::xhexfmt< UnsignedT >::val_[protected]
Definition at line 678 of file divxaids.hpp.
Referenced by stm::hexfmt< ElemT ∗, DefaultFlags >::operator ElemT ∗(), and stm::hexfmt< UnsignedT,DefaultFlags >::operator UnsignedT().
12.121.3.2 template<typename UnsignedT> dword stm::local::xhexfmt< UnsignedT >::flags_-[protected]
Definition at line 679 of file divxaids.hpp.
Referenced by stm::hexfmt< ElemT ∗, DefaultFlags >::flags(), stm::hexfmt< UnsignedT, DefaultFlags>::flags(), stm::hexfmt< ElemT ∗, DefaultFlags >::noprefix(), and stm::hexfmt< UnsignedT, Default-Flags >::noprefix().
The documentation for this class was generated from the following file:
• divxaids.hpp
12.122 stm::local::xinputrange< FileRangeT, bufSize > Class Template Reference
#include <filesysxaids.hpp>
Inheritance diagram for stm::local::xinputrange< FileRangeT, bufSize >:
stm::local::xinputrange< FileRangeT, bufSize >
stm::inputrange< FileRangeT, bufSize >
stm::local::xinputrange< std::set< InputFileT >, bufSize >
< std::set< InputFileT >, bufSize > stm::inputrange< std::set< InputFileT >, bufSize >
< std::set< InputFileT >, bufSize >
stm::inputseq< InputFileT, bufSize >
12.122.1 Detailed Description
template<class FileRangeT, size_t bufSize> class stm::local::xinputrange< FileRangeT, bufSize >
stm::inputrange implementation base class template.
The class is derived from a map of input file iterators indexed by the length of the concatenated input filesup to and including the particular input file minus one. This indexing enables one for a long long offsetoffs within the concatenation of all input files to use the following constructs:
inputrange_type::iterator j = lower_bound (offs) -> second;
to find an iterator to the input file containing the byte at offset offs.
Definition at line 293 of file filesysxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.122 stm::local::xinputrange< FileRangeT, bufSize > Class Template Reference 444
Protected Types
• typedef xinputrange< FileRangeT, bufSize > implImplementation.
• typedef FileRangeT filerange_typeType of input file range.
• typedef filerange_type::value_type inputfile_typeType of input files.
Protected Member Functions
• xinputrange (const filerange_type &inputFiles)Construct an xinputseq object for the input file set inputFiles.
• ∼xinputrange ()The destructor deletes the input buffer.
• void clear ()Clears this xinputrange.
• void setInput (const filerange_type &inputFiles)Sets new input files for this xinputrange.
Protected Attributes
• byte ∗ buffer_Pointer to the storage of the input buffer.
• const byte ∗ bufPtr_Current position within the input buffer.
• const byte ∗ bufEnd_Points to one past the current end of the input buffer.
• long long offset_Byte offset within the concatenation of all input files corresponding to the current position within the inputbuffer.
• long long totalSize_Total byte length within the concatenation of all input files.
• long long notReadSize_Not read byte length within the concatenation of all input files.
• ptrdiff_t bufStep_
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.122 stm::local::xinputrange< FileRangeT, bufSize > Class Template Reference 445
Number of bytes to advance the current position within the input buffer and the byte offset within the con-catenation of all input files.
• bool error_True if an error did occur.
• FILE ∗ fp_Current input file pointer.
• base::const_iterator fileIt_Iterator to current input file.
• filerange_type files_Input file range.
Private Types
• typedef std::map< long long, typename FileRangeT::const_iterator > base
Private Member Functions
• BOOST_STATIC_ASSERT ((bufSize > 0))• xinputrange (const xinputrange &)
forbidden operation (intentionally not implemented).
• xinputrange & operator= (const xinputrange &)forbidden operation (intentionally not implemented).
12.122.2 Member Typedef Documentation
12.122.2.1 template<class FileRangeT, size_t bufSize> typedef std::map<long long, typenameFileRangeT::const_iterator> stm::local::xinputrange< FileRangeT, bufSize >::base [private]
Reimplemented in stm::inputseq< InputFileT, bufSize >.
Definition at line 297 of file filesysxaids.hpp.
12.122.2.2 template<class FileRangeT, size_t bufSize> typedef xinputrange<FileRangeT,bufSize> stm::local::xinputrange< FileRangeT, bufSize >::impl [protected]
Implementation.
Reimplemented in stm::inputrange< FileRangeT, bufSize >, and stm::inputrange< std::set< InputFileT>, bufSize >.
Definition at line 301 of file filesysxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.122 stm::local::xinputrange< FileRangeT, bufSize > Class Template Reference 446
12.122.2.3 template<class FileRangeT, size_t bufSize> typedef FileRangeTstm::local::xinputrange< FileRangeT, bufSize >::filerange_type [protected]
Type of input file range.
Reimplemented in stm::inputrange< FileRangeT, bufSize >, and stm::inputrange< std::set< InputFileT>, bufSize >.
Definition at line 304 of file filesysxaids.hpp.
12.122.2.4 template<class FileRangeT, size_t bufSize> typedef filerange_type::value_typestm::local::xinputrange< FileRangeT, bufSize >::inputfile_type [protected]
Type of input files.
Reimplemented in stm::inputrange< FileRangeT, bufSize >, and stm::inputrange< std::set< InputFileT>, bufSize >.
Definition at line 307 of file filesysxaids.hpp.
12.122.3 Constructor & Destructor Documentation
12.122.3.1 template<class FileRangeT, size_t bufSize> stm::local::xinputrange< FileRangeT, buf-Size >::xinputrange (const filerange_type & inputFiles) [inline, protected]
Construct an xinputseq object for the input file set inputFiles.
Definition at line 310 of file filesysxaids.hpp.
12.122.3.2 template<class FileRangeT, size_t bufSize> stm::local::xinputrange< FileRangeT, buf-Size >::∼xinputrange () [inline, protected]
The destructor deletes the input buffer.
Definition at line 318 of file filesysxaids.hpp.
12.122.3.3 template<class FileRangeT, size_t bufSize> stm::local::xinputrange< FileRangeT, buf-Size >::xinputrange (const xinputrange< FileRangeT, bufSize > &) [private]
forbidden operation (intentionally not implemented).
12.122.4 Member Function Documentation
12.122.4.1 template<class FileRangeT, size_t bufSize> stm::local::xinputrange< FileRangeT, buf-Size >::BOOST_STATIC_ASSERT ((bufSize > 0)) [private]
12.122.4.2 template<class FileRangeT, size_t bufSize> void stm::local::xinputrange< FileRangeT,bufSize >::clear () [inline, protected]
Clears this xinputrange.
Reimplemented in stm::inputrange< FileRangeT, bufSize >, and stm::inputrange< std::set< InputFileT>, bufSize >.
Definition at line 325 of file filesysxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.122 stm::local::xinputrange< FileRangeT, bufSize > Class Template Reference 447
Referenced by stm::inputrange< FileRangeT, bufSize >::clear(), stm::local::xinputrange< std::set<InputFileT >, bufSize >::setInput(), and stm::local::xinputrange< std::set< InputFileT >, bufSize>::xinputrange().
12.122.4.3 template<class FileRangeT, size_t bufSize> void stm::local::xinputrange< FileRangeT,bufSize >::setInput (const filerange_type & inputFiles) [inline, protected]
Sets new input files for this xinputrange.
Reimplemented in stm::inputrange< FileRangeT, bufSize >, and stm::inputrange< std::set< InputFileT>, bufSize >.
Definition at line 342 of file filesysxaids.hpp.
Referenced by stm::inputrange< FileRangeT, bufSize >::setInput(), and stm::local::xinputrange<std::set< InputFileT >, bufSize >::xinputrange().
12.122.4.4 template<class FileRangeT, size_t bufSize> xinputrange& stm::local::xinputrange<FileRangeT, bufSize >::operator= (const xinputrange< FileRangeT, bufSize > &) [private]
forbidden operation (intentionally not implemented).
12.122.5 Member Data Documentation
12.122.5.1 template<class FileRangeT, size_t bufSize> byte∗ stm::local::xinputrange< Fil-eRangeT, bufSize >::buffer_ [protected]
Pointer to the storage of the input buffer.
Definition at line 359 of file filesysxaids.hpp.
Referenced by stm::inputrange< FileRangeT, bufSize >::bufFull(), stm::inputrange< FileRangeT, buf-Size >::bufSetup(), stm::local::xinputrange< std::set< InputFileT >, bufSize >::clear(), stm::inputrange<FileRangeT, bufSize >::read(), and stm::local::xinputrange< std::set< InputFileT >, bufSize>::∼xinputrange().
12.122.5.2 template<class FileRangeT, size_t bufSize> const byte∗ stm::local::xinputrange< Fil-eRangeT, bufSize >::bufPtr_ [protected]
Current position within the input buffer.
Always satisfies the condition buffer_ <= bufPtr_ && bufPtr_ <= buffer_ + MaxBufSize.
Definition at line 364 of file filesysxaids.hpp.
Referenced by stm::inputrange< FileRangeT, bufSize >::bufAdvance(), stm::inputrange< Fil-eRangeT, bufSize >::bufExhausted(), stm::inputrange< FileRangeT, bufSize >::bufFull(),stm::inputrange< FileRangeT, bufSize >::bufPtr(), stm::inputrange< FileRangeT, bufSize >::bufSetup(),stm::local::xinputrange< std::set< InputFileT >, bufSize >::clear(), stm::inputrange< FileRangeT,bufSize >::offset(), and stm::inputrange< FileRangeT, bufSize >::read().
12.122.5.3 template<class FileRangeT, size_t bufSize> const byte∗ stm::local::xinputrange< Fil-eRangeT, bufSize >::bufEnd_ [protected]
Points to one past the current end of the input buffer.
Always satisfies the condition bufPtr_ <= bufEnd_ && bufEnd_ <= buffer_ + MaxBufSize.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.122 stm::local::xinputrange< FileRangeT, bufSize > Class Template Reference 448
Definition at line 369 of file filesysxaids.hpp.
Referenced by stm::inputrange< FileRangeT, bufSize >::bufAdvance(), stm::inputrange< FileRangeT,bufSize >::bufEnd(), stm::inputrange< FileRangeT, bufSize >::bufExhausted(), stm::inputrange< Fil-eRangeT, bufSize >::bufFull(), stm::local::xinputrange< std::set< InputFileT >, bufSize >::clear(),stm::inputrange< FileRangeT, bufSize >::offset(), and stm::inputrange< FileRangeT, bufSize >::read().
12.122.5.4 template<class FileRangeT, size_t bufSize> long long stm::local::xinputrange< Fil-eRangeT, bufSize >::offset_ [protected]
Byte offset within the concatenation of all input files corresponding to the current position within the inputbuffer.
Definition at line 373 of file filesysxaids.hpp.
Referenced by stm::inputrange< FileRangeT, bufSize >::bufAdvance(), stm::local::xinputrange<std::set< InputFileT >, bufSize >::clear(), stm::inputrange< FileRangeT, bufSize >::file(), andstm::inputrange< FileRangeT, bufSize >::offset().
12.122.5.5 template<class FileRangeT, size_t bufSize> long long stm::local::xinputrange< Fil-eRangeT, bufSize >::totalSize_ [protected]
Total byte length within the concatenation of all input files.
Definition at line 376 of file filesysxaids.hpp.
Referenced by stm::local::xinputrange< std::set< InputFileT >, bufSize >::clear(),stm::local::xinputrange< std::set< InputFileT >, bufSize >::setInput(), and stm::inputrange< Fil-eRangeT, bufSize >::totalSize().
12.122.5.6 template<class FileRangeT, size_t bufSize> long long stm::local::xinputrange< Fil-eRangeT, bufSize >::notReadSize_ [protected]
Not read byte length within the concatenation of all input files.
Definition at line 379 of file filesysxaids.hpp.
Referenced by stm::local::xinputrange< std::set< InputFileT >, bufSize >::clear(), stm::inputrange<FileRangeT, bufSize >::notReadSize(), stm::inputrange< FileRangeT, bufSize >::read(), andstm::local::xinputrange< std::set< InputFileT >, bufSize >::setInput().
12.122.5.7 template<class FileRangeT, size_t bufSize> ptrdiff_t stm::local::xinputrange< Fil-eRangeT, bufSize >::bufStep_ [protected]
Number of bytes to advance the current position within the input buffer and the byte offset within theconcatenation of all input files.
Definition at line 383 of file filesysxaids.hpp.
Referenced by stm::inputrange< FileRangeT, bufSize >::bufAdvance(), stm::local::xinputrange<std::set< InputFileT >, bufSize >::clear(), stm::inputrange< FileRangeT, bufSize >::read(), andstm::inputrange< FileRangeT, bufSize >::setBufStep().
12.122.5.8 template<class FileRangeT, size_t bufSize> bool stm::local::xinputrange< FileRangeT,bufSize >::error_ [protected]
True if an error did occur.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.123 stm::local::xinputrange_iterator< BufRangeT, ContextT > Class Template Reference 449
Definition at line 386 of file filesysxaids.hpp.
Referenced by stm::local::xinputrange< std::set< InputFileT >, bufSize >::clear(), stm::inputrange< Fil-eRangeT, bufSize >::isError(), and stm::inputrange< FileRangeT, bufSize >::read().
12.122.5.9 template<class FileRangeT, size_t bufSize> FILE∗ stm::local::xinputrange< Fil-eRangeT, bufSize >::fp_ [protected]
Current input file pointer.
Definition at line 389 of file filesysxaids.hpp.
Referenced by stm::inputrange< FileRangeT, bufSize >::clear(), stm::local::xinputrange< std::set< In-putFileT >, bufSize >::clear(), and stm::inputrange< FileRangeT, bufSize >::read().
12.122.5.10 template<class FileRangeT, size_t bufSize> base::const_iteratorstm::local::xinputrange< FileRangeT, bufSize >::fileIt_ [protected]
Iterator to current input file.
Definition at line 392 of file filesysxaids.hpp.
Referenced by stm::local::xinputrange< std::set< InputFileT >, bufSize >::clear(), stm::inputrange<FileRangeT, bufSize >::isEnd(), stm::inputrange< FileRangeT, bufSize >::read(), stm::inputrange<FileRangeT, bufSize >::reportError(), and stm::local::xinputrange< std::set< InputFileT >, bufSize>::setInput().
12.122.5.11 template<class FileRangeT, size_t bufSize> filerange_type stm::local::xinputrange<FileRangeT, bufSize >::files_ [protected]
Input file range.
Definition at line 395 of file filesysxaids.hpp.
Referenced by stm::local::xinputrange< std::set< InputFileT >, bufSize >::clear(), andstm::local::xinputrange< std::set< InputFileT >, bufSize >::setInput().
The documentation for this class was generated from the following file:
• filesysxaids.hpp
12.123 stm::local::xinputrange_iterator< BufRangeT, ContextT > Class Tem-plate Reference
#include <filesysxaids.hpp>
Inheritance diagram for stm::local::xinputrange_iterator< BufRangeT, ContextT >:
stm::local::xinputrange_iterator< BufRangeT, ContextT >
stm::inputrange_iterator< BufRangeT, ContextT >
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.123 stm::local::xinputrange_iterator< BufRangeT, ContextT > Class Template Reference 450
12.123.1 Detailed Description
template<class BufRangeT, class ContextT> class stm::local::xinputrange_iterator< BufRangeT,ContextT >
stm::inputrange_iterator implementation base class template.
Definition at line 444 of file filesysxaids.hpp.
Protected Types
• typedef xinputrange_iterator< BufRangeT, ContextT > impl
Protected Member Functions
• xinputrange_iterator ()• xinputrange_iterator (context_type &context)• xinputrange_iterator (const xinputrange_iterator< BufRangeT, ContextT > &that)• void scan ()• const bufrange_type ∗ bufrange () const
Protected Attributes
• context_type ∗ context_
Private Types
• typedef BufRangeT bufrange_type• typedef ContextT context_type• typedef context_type::inputrange_type inputrange_type• typedef inputrange_type::filerange_type filerange_type• typedef boost::detail::max_align Align
Private Member Functions
• BOOST_STATIC_ASSERT ((boost::is_base_and_derived< byte_iterator_range, bufrange_type>::value))
• BOOST_STATIC_ASSERT ((boost::is_base_and_derived< inputrange< filerange_type,inputrange_type::BufSize >, inputrange_type >::value))
Private Attributes
• Align rbuf_ [(sizeof(bufrange_type)+sizeof(Align)-1)/sizeof(Align)]Buffer of at least sizeof (bufrange_type) bytes meeting all alignment requirements.
• bool constructed_
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.123 stm::local::xinputrange_iterator< BufRangeT, ContextT > Class Template Reference 451
12.123.2 Member Typedef Documentation
12.123.2.1 template<class BufRangeT, class ContextT> typedef BufRangeTstm::local::xinputrange_iterator< BufRangeT, ContextT >::bufrange_type [private]
Reimplemented in stm::inputrange_iterator< BufRangeT, ContextT >.
Definition at line 447 of file filesysxaids.hpp.
12.123.2.2 template<class BufRangeT, class ContextT> typedef ContextTstm::local::xinputrange_iterator< BufRangeT, ContextT >::context_type [private]
Reimplemented in stm::inputrange_iterator< BufRangeT, ContextT >.
Definition at line 448 of file filesysxaids.hpp.
12.123.2.3 template<class BufRangeT, class ContextT> typedef context_type::inputrange_typestm::local::xinputrange_iterator< BufRangeT, ContextT >::inputrange_type [private]
Reimplemented in stm::inputrange_iterator< BufRangeT, ContextT >.
Definition at line 449 of file filesysxaids.hpp.
12.123.2.4 template<class BufRangeT, class ContextT> typedef inputrange_type::filerange_typestm::local::xinputrange_iterator< BufRangeT, ContextT >::filerange_type [private]
Definition at line 450 of file filesysxaids.hpp.
12.123.2.5 template<class BufRangeT, class ContextT> typedef boost::detail::max_alignstm::local::xinputrange_iterator< BufRangeT, ContextT >::Align [private]
Definition at line 451 of file filesysxaids.hpp.
12.123.2.6 template<class BufRangeT, class ContextT> typedef xinputrange_-iterator<BufRangeT, ContextT> stm::local::xinputrange_iterator< BufRangeT, ContextT >::impl[protected]
Reimplemented in stm::inputrange_iterator< BufRangeT, ContextT >.
Definition at line 472 of file filesysxaids.hpp.
12.123.3 Constructor & Destructor Documentation
12.123.3.1 template<class BufRangeT, class ContextT> stm::local::xinputrange_iterator<BufRangeT, ContextT >::xinputrange_iterator () [inline, protected]
Definition at line 474 of file filesysxaids.hpp.
12.123.3.2 template<class BufRangeT, class ContextT> stm::local::xinputrange_iterator<BufRangeT, ContextT >::xinputrange_iterator (context_type & context) [inline,protected]
Definition at line 479 of file filesysxaids.hpp.
References stm::local::xinputrange_iterator< BufRangeT, ContextT >::scan().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.123 stm::local::xinputrange_iterator< BufRangeT, ContextT > Class Template Reference 452
12.123.3.3 template<class BufRangeT, class ContextT> stm::local::xinputrange_iterator<BufRangeT, ContextT >::xinputrange_iterator (const xinputrange_iterator< BufRangeT, ContextT> & that) [inline, protected]
Definition at line 486 of file filesysxaids.hpp.
References stm::local::xinputrange_iterator< BufRangeT, ContextT >::scan().
12.123.4 Member Function Documentation
12.123.4.1 template<class BufRangeT, class ContextT> stm::local::xinputrange_iterator<BufRangeT, ContextT >::BOOST_STATIC_ASSERT ((boost::is_base_and_derived< byte_-iterator_range, bufrange_type >::value)) [private]
12.123.4.2 template<class BufRangeT, class ContextT> stm::local::xinputrange_iterator<BufRangeT, ContextT >::BOOST_STATIC_ASSERT ((boost::is_base_and_derived< inputrange<filerange_type, inputrange_type::BufSize >, inputrange_type >::value)) [private]
12.123.4.3 template<class BufRangeT, class ContextT> void stm::local::xinputrange_iterator<BufRangeT, ContextT >::scan () [inline, protected]
Definition at line 975 of file filesysxaids.hpp.
References stm::local::xinputrange_iterator< BufRangeT, ContextT >::bufrange(),stm::local::xinputrange_iterator< BufRangeT, ContextT >::constructed_, stm::local::xinputrange_-iterator< BufRangeT, ContextT >::context_, stm::local::xinputrange_iterator< BufRangeT, ContextT>::rbuf_, and StmDebugAidsVerify.
Referenced by stm::inputrange_iterator< BufRangeT, ContextT >::operator++(), andstm::local::xinputrange_iterator< BufRangeT, ContextT >::xinputrange_iterator().
12.123.4.4 template<class BufRangeT, class ContextT> const bufrange_type∗stm::local::xinputrange_iterator< BufRangeT, ContextT >::bufrange () const [inline,protected]
Definition at line 495 of file filesysxaids.hpp.
References stm::local::xinputrange_iterator< BufRangeT, ContextT >::constructed_, andstm::local::xinputrange_iterator< BufRangeT, ContextT >::rbuf_.
Referenced by stm::inputrange_iterator< BufRangeT, ContextT >::operator ∗(), stm::inputrange_-iterator< BufRangeT, ContextT >::operator→ (), and stm::local::xinputrange_iterator< BufRangeT, Con-textT >::scan().
12.123.5 Member Data Documentation
12.123.5.1 template<class BufRangeT, class ContextT> context_type∗ stm::local::xinputrange_-iterator< BufRangeT, ContextT >::context_ [protected]
Definition at line 502 of file filesysxaids.hpp.
Referenced by stm::inputrange_iterator< BufRangeT, ContextT >::equal(), and stm::local::xinputrange_-iterator< BufRangeT, ContextT >::scan().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.124 stm::local::xIntegral_range< IntegralT, minVal, maxVal > Class Template Reference 453
12.123.5.2 template<class BufRangeT, class ContextT> Align stm::local::xinputrange_-iterator< BufRangeT, ContextT >::rbuf_[(sizeof(bufrange_type)+sizeof(Align)-1)/sizeof(Align)][private]
Buffer of at least sizeof (bufrange_type) bytes meeting all alignment requirements.
Definition at line 507 of file filesysxaids.hpp.
Referenced by stm::local::xinputrange_iterator< BufRangeT, ContextT >::bufrange(), andstm::local::xinputrange_iterator< BufRangeT, ContextT >::scan().
12.123.5.3 template<class BufRangeT, class ContextT> bool stm::local::xinputrange_iterator<BufRangeT, ContextT >::constructed_ [private]
Definition at line 508 of file filesysxaids.hpp.
Referenced by stm::local::xinputrange_iterator< BufRangeT, ContextT >::bufrange(), andstm::local::xinputrange_iterator< BufRangeT, ContextT >::scan().
The documentation for this class was generated from the following file:
• filesysxaids.hpp
12.124 stm::local::xIntegral_range< IntegralT, minVal, maxVal > Class TemplateReference
#include <divxaids.hpp>
Inheritance diagram for stm::local::xIntegral_range< IntegralT, minVal, maxVal >:
stm::local::xIntegral_range< IntegralT, minVal, maxVal >
stm::integral_range< IntegralT, minVal, maxVal >
12.124.1 Detailed Description
template<typename IntegralT, IntegralT minVal, IntegralT maxVal> class stm::local::xIntegral_-range< IntegralT, minVal, maxVal >
stm::integral_range implementation base class template.
Definition at line 265 of file divxaids.hpp.
Protected Types
• typedef std::pair< IntegralT, IntegralT > base• typedef xIntegral_range< IntegralT, minVal, maxVal > impl• typedef IntegralT integral_type
Protected Member Functions
• BOOST_STATIC_ASSERT ((boost::integer_traits< IntegralT >::is_integral))
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.124 stm::local::xIntegral_range< IntegralT, minVal, maxVal > Class Template Reference 454
Ensure that IntegralT is an integral type.
• BOOST_STATIC_ASSERT ((sizeof(IntegralT)<=8))For now only integral types of at most 64 bits are supported.
• BOOST_STATIC_ASSERT ((minVal<=maxVal))Ensure not empty integral range type.
• xIntegral_range (integral_type fromNumber, integral_type toNumber)• impl & match (const std::string &rstr, size_t fmtFlags)
Static Protected Attributes
• static const integral_type MinVal = minVal• static const integral_type MaxVal = maxVal• static const size_t EmptyAllowed = 0x00000001
Bitwise orable fmtFlag value.
Private Types
• typedef boost::mpl::bool_< boost::integer_traits< integral_type >::const_min==MinVal > is_-minimal
• typedef boost::mpl::bool_< boost::integer_traits< integral_type >::const_max==MaxVal > is_-maximal
• typedef boost::mpl::bool_< boost::integer_traits< integral_type >::is_signed > is_signed
Static Private Member Functions
• static void testMin (boost::mpl::false_, integral_type fromNumber)Test minimal constraint.
• static void testMin (boost::mpl::true_, integral_type fromNumber)Test minimal constraint.
• static void testMax (boost::mpl::false_, integral_type toNumber)Test maximal constraint.
• static void testMax (boost::mpl::true_, integral_type toNumber)Test maximal constraint.
• static int getIntegral (boost::mpl::false_, const std::string &vstr, integral_type &val)If vstr designates an integral_type object, that object is assigned to val and 0 is returned, else 1.
• static int getIntegral (boost::mpl::true_, const std::string &vstr, integral_type &val)If vstr designates an integral_type object, that object is assigned to val and 0 is returned, else 1.
• static StmRe initialize ()• static int optassign (StmMtcFctCmd cmd, StmReMtc reMtc)• static int assign (StmMtcFctCmd cmd, StmReMtc reMtc)
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.124 stm::local::xIntegral_range< IntegralT, minVal, maxVal > Class Template Reference 455
Static Private Attributes
• static StmRe optrange = NULL• static StmRe range
Friends
• class xIntegral_set
12.124.2 Member Typedef Documentation
12.124.2.1 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> typedefstd::pair<IntegralT, IntegralT> stm::local::xIntegral_range< IntegralT, minVal, maxVal >::base[protected]
Definition at line 279 of file divxaids.hpp.
12.124.2.2 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> typedefxIntegral_range<IntegralT, minVal, maxVal> stm::local::xIntegral_range< IntegralT, minVal,maxVal >::impl [protected]
Reimplemented in stm::integral_range< IntegralT, minVal, maxVal >.
Definition at line 280 of file divxaids.hpp.
12.124.2.3 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> typedef IntegralTstm::local::xIntegral_range< IntegralT, minVal, maxVal >::integral_type [protected]
Reimplemented in stm::integral_range< IntegralT, minVal, maxVal >.
Definition at line 281 of file divxaids.hpp.
12.124.2.4 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> type-def boost::mpl::bool_<boost::integer_traits<integral_type>::const_min == MinVal>stm::local::xIntegral_range< IntegralT, minVal, maxVal >::is_minimal [private]
Definition at line 294 of file divxaids.hpp.
12.124.2.5 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> type-def boost::mpl::bool_<boost::integer_traits<integral_type>::const_max == MaxVal>stm::local::xIntegral_range< IntegralT, minVal, maxVal >::is_maximal [private]
Definition at line 295 of file divxaids.hpp.
12.124.2.6 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> typedefboost::mpl::bool_<boost::integer_traits<integral_type>::is_signed> stm::local::xIntegral_range<IntegralT, minVal, maxVal >::is_signed [private]
Definition at line 296 of file divxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.124 stm::local::xIntegral_range< IntegralT, minVal, maxVal > Class Template Reference 456
12.124.3 Member Function Documentation
12.124.3.1 template<typename IntegralT, IntegralT minVal, IntegralT maxVal>stm::local::xIntegral_range< IntegralT, minVal, maxVal >::BOOST_STATIC_ASSERT((boost::integer_traits< IntegralT >::is_integral)) [protected]
Ensure that IntegralT is an integral type.
12.124.3.2 template<typename IntegralT, IntegralT minVal, IntegralT maxVal>stm::local::xIntegral_range< IntegralT, minVal, maxVal >::BOOST_STATIC_ASSERT((sizeof(IntegralT)<=8)) [protected]
For now only integral types of at most 64 bits are supported.
12.124.3.3 template<typename IntegralT, IntegralT minVal, IntegralT maxVal>stm::local::xIntegral_range< IntegralT, minVal, maxVal >::BOOST_STATIC_ASSERT((minVal<=maxVal)) [protected]
Ensure not empty integral range type.
12.124.3.4 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> static voidstm::local::xIntegral_range< IntegralT, minVal, maxVal >::testMin (boost::mpl::false_, integral_-type fromNumber) [inline, static, private]
Test minimal constraint.
Only instantiated, if MinVal is not minimal.
Definition at line 300 of file divxaids.hpp.
References stm::local::xIntegral_range< IntegralT, minVal, maxVal >::MinVal.
12.124.3.5 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> static voidstm::local::xIntegral_range< IntegralT, minVal, maxVal >::testMin (boost::mpl::true_, integral_-type fromNumber) [inline, static, private]
Test minimal constraint.
Only instantiated, if MinVal is minimal.
Definition at line 314 of file divxaids.hpp.
12.124.3.6 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> static voidstm::local::xIntegral_range< IntegralT, minVal, maxVal >::testMax (boost::mpl::false_, integral_-type toNumber) [inline, static, private]
Test maximal constraint.
Only instantiated, if MaxVal is not maximal.
Definition at line 321 of file divxaids.hpp.
References stm::local::xIntegral_range< IntegralT, minVal, maxVal >::MaxVal.
12.124.3.7 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> static voidstm::local::xIntegral_range< IntegralT, minVal, maxVal >::testMax (boost::mpl::true_, integral_-type toNumber) [inline, static, private]
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.125 stm::local::xIntegral_set< IntegralRangeT, RangeSetT > Class Template Reference 457
Test maximal constraint.
Only instantiated, if MaxVal is maximal.
Definition at line 335 of file divxaids.hpp.
12.124.4 Friends And Related Function Documentation
12.124.4.1 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> friend classxIntegral_set [friend]
Definition at line 267 of file divxaids.hpp.
12.124.5 Member Data Documentation
12.124.5.1 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> const integral_-type stm::local::xIntegral_range< IntegralT, minVal, maxVal >::MinVal = minVal [static,protected]
Reimplemented in stm::integral_range< IntegralT, minVal, maxVal >.
Definition at line 283 of file divxaids.hpp.
Referenced by stm::local::xIntegral_range< IntegralT, minVal, maxVal >::testMin().
12.124.5.2 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> const integral_-type stm::local::xIntegral_range< IntegralT, minVal, maxVal >::MaxVal = maxVal [static,protected]
Reimplemented in stm::integral_range< IntegralT, minVal, maxVal >.
Definition at line 284 of file divxaids.hpp.
Referenced by stm::local::xIntegral_range< IntegralT, minVal, maxVal >::testMax().
12.124.5.3 template<typename IntegralT, IntegralT minVal, IntegralT maxVal> const size_-t stm::local::xIntegral_range< IntegralT, minVal, maxVal >::EmptyAllowed = 0x00000001[static, protected]
Bitwise orable fmtFlag value.
Reimplemented in stm::integral_range< IntegralT, minVal, maxVal >.
Definition at line 287 of file divxaids.hpp.
The documentation for this class was generated from the following file:
• divxaids.hpp
12.125 stm::local::xIntegral_set< IntegralRangeT, RangeSetT > Class TemplateReference
#include <divxaids.hpp>
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.125 stm::local::xIntegral_set< IntegralRangeT, RangeSetT > Class Template Reference 458
Inheritance diagram for stm::local::xIntegral_set< IntegralRangeT, RangeSetT >:
stm::local::xIntegral_set< IntegralRangeT, RangeSetT >
stm::integral_set< IntegralRangeT, RangeSetT >
12.125.1 Detailed Description
template<class IntegralRangeT, class RangeSetT> class stm::local::xIntegral_set< IntegralRangeT,RangeSetT >
stm::integral_set implementation base class template.
Definition at line 401 of file divxaids.hpp.
Protected Types
• typedef xIntegral_set< IntegralRangeT, RangeSetT > impl• typedef IntegralRangeT range_type• typedef range_type::integral_type integral_type• typedef RangeSetT rangeset_type• typedef rangeset_type::iterator iterator• typedef rangeset_type::const_iterator const_iterator• typedef rangeset_type::reverse_iterator reverse_iterator• typedef rangeset_type::const_reverse_iterator const_reverse_iterator
Protected Member Functions
• xIntegral_set ()• void adjust () throw ()
Adjust this object to be consistent.
• void verify () constVerify, if this object is consistent. Only active in debug version.
• integral_iterator mkIterator (const_iterator rit, integral_type value)• iterator rangeOf (integral_type number, bool includeTo)
Return the iterator pointing to the range the number belongs to, or end(), if there is no such range.
• const_iterator rangeOf (integral_type number, bool includeTo) const• impl & match (const std::string &rstr, size_t fmtFlags)
Protected Attributes
• size_t size_Number of contained numbers.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.125 stm::local::xIntegral_set< IntegralRangeT, RangeSetT > Class Template Reference 459
Static Protected Attributes
• static const integral_type MinVal = range_type::MinVal• static const integral_type MaxVal = range_type::MaxVal
Static Private Member Functions
• static StmRe initialize ()• static int setassign (StmMtcFctCmd cmd, StmReMtc reMtc)
Static Private Attributes
• static StmRe optranges = NULL• static StmRe ranges
Classes
• struct Env• class integral_iterator
12.125.2 Member Typedef Documentation
12.125.2.1 template<class IntegralRangeT, class RangeSetT> typedef xIntegral_-set<IntegralRangeT, RangeSetT> stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::impl[protected]
Reimplemented in stm::integral_set< IntegralRangeT, RangeSetT >.
Definition at line 404 of file divxaids.hpp.
12.125.2.2 template<class IntegralRangeT, class RangeSetT> typedef IntegralRangeTstm::local::xIntegral_set< IntegralRangeT, RangeSetT >::range_type [protected]
Reimplemented in stm::integral_set< IntegralRangeT, RangeSetT >.
Definition at line 405 of file divxaids.hpp.
12.125.2.3 template<class IntegralRangeT, class RangeSetT> typedef range_type::integral_typestm::local::xIntegral_set< IntegralRangeT, RangeSetT >::integral_type [protected]
Reimplemented in stm::integral_set< IntegralRangeT, RangeSetT >.
Definition at line 406 of file divxaids.hpp.
12.125.2.4 template<class IntegralRangeT, class RangeSetT> typedef RangeSetTstm::local::xIntegral_set< IntegralRangeT, RangeSetT >::rangeset_type [protected]
Reimplemented in stm::integral_set< IntegralRangeT, RangeSetT >.
Definition at line 408 of file divxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.125 stm::local::xIntegral_set< IntegralRangeT, RangeSetT > Class Template Reference 460
12.125.2.5 template<class IntegralRangeT, class RangeSetT> typedef rangeset_type::iteratorstm::local::xIntegral_set< IntegralRangeT, RangeSetT >::iterator [protected]
Reimplemented in stm::integral_set< IntegralRangeT, RangeSetT >.
Definition at line 409 of file divxaids.hpp.
12.125.2.6 template<class IntegralRangeT, class RangeSetT> typedef rangeset_type::const_-iterator stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::const_iterator [protected]
Reimplemented in stm::integral_set< IntegralRangeT, RangeSetT >.
Definition at line 410 of file divxaids.hpp.
12.125.2.7 template<class IntegralRangeT, class RangeSetT> typedef rangeset_type::reverse_-iterator stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::reverse_iterator[protected]
Reimplemented in stm::integral_set< IntegralRangeT, RangeSetT >.
Definition at line 411 of file divxaids.hpp.
12.125.2.8 template<class IntegralRangeT, class RangeSetT> typedef rangeset_type::const_-reverse_iterator stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::const_reverse_iterator[protected]
Reimplemented in stm::integral_set< IntegralRangeT, RangeSetT >.
Definition at line 412 of file divxaids.hpp.
12.125.3 Member Data Documentation
12.125.3.1 template<class IntegralRangeT, class RangeSetT> const integral_typestm::local::xIntegral_set< IntegralRangeT, RangeSetT >::MinVal = range_type::MinVal[static, protected]
Reimplemented in stm::integral_set< IntegralRangeT, RangeSetT >.
Definition at line 414 of file divxaids.hpp.
Referenced by stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::adjust(), stm::local::xIntegral_-set< IntegralRangeT, RangeSetT >::integral_iterator::operator++(), stm::local::xIntegral_set< Integral-RangeT, RangeSetT >::integral_iterator::operator–(), stm::local::xIntegral_set< IntegralRangeT, Range-SetT >::rangeOf(), and stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::verify().
12.125.3.2 template<class IntegralRangeT, class RangeSetT> const integral_typestm::local::xIntegral_set< IntegralRangeT, RangeSetT >::MaxVal = range_type::MaxVal[static, protected]
Reimplemented in stm::integral_set< IntegralRangeT, RangeSetT >.
Definition at line 415 of file divxaids.hpp.
Referenced by stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::adjust(), stm::local::xIntegral_-set< IntegralRangeT, RangeSetT >::integral_iterator::operator++(), stm::local::xIntegral_set< Integral-RangeT, RangeSetT >::integral_iterator::operator–(), and stm::local::xIntegral_set< IntegralRangeT,RangeSetT >::verify().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.126 stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::Env Struct Reference 461
12.125.3.3 template<class IntegralRangeT, class RangeSetT> size_t stm::local::xIntegral_set< In-tegralRangeT, RangeSetT >::size_ [protected]
Number of contained numbers.
Definition at line 478 of file divxaids.hpp.
Referenced by stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::adjust(), stm::integral_set< Inte-gralRangeT, RangeSetT >::clear(), stm::integral_set< IntegralRangeT, RangeSetT >::fill(), stm::integral_-set< IntegralRangeT, RangeSetT >::operator-=(), stm::integral_set< IntegralRangeT, RangeSetT>::operator|=(), stm::integral_set< IntegralRangeT, RangeSetT >::size(), stm::integral_set< Integral-RangeT, RangeSetT >::swap(), and stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::verify().
The documentation for this class was generated from the following file:
• divxaids.hpp
12.126 stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::Env Struct Ref-erence
Collaboration diagram for stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::Env:
stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::Env
stm::local::xIntegral_set< IntegralRangeT, RangeSetT >
rangeset
12.126.1 Detailed Description
template<class IntegralRangeT, class RangeSetT> struct stm::local::xIntegral_set< Integral-RangeT, RangeSetT >::Env
Definition at line 481 of file divxaids.hpp.
Public Member Functions
• Env (impl ∗parent)
Public Attributes
• range_type range• impl ∗ rangeset
12.126.2 Constructor & Destructor Documentation
12.126.2.1 template<class IntegralRangeT, class RangeSetT> stm::local::xIntegral_set< Integral-RangeT, RangeSetT >::Env::Env (impl ∗ parent) [inline]
Definition at line 483 of file divxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.127 stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::integral_iterator ClassReference 462
12.126.3 Member Data Documentation
12.126.3.1 template<class IntegralRangeT, class RangeSetT> range_type stm::local::xIntegral_-set< IntegralRangeT, RangeSetT >::Env::range
Definition at line 487 of file divxaids.hpp.
12.126.3.2 template<class IntegralRangeT, class RangeSetT> impl∗ stm::local::xIntegral_set< In-tegralRangeT, RangeSetT >::Env::rangeset
Definition at line 489 of file divxaids.hpp.
The documentation for this struct was generated from the following file:
• divxaids.hpp
12.127 stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::integral_-iterator Class Reference
#include <divxaids.hpp>
Collaboration diagram for stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::integral_iterator:
stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::integral_iterator
stm::local::xIntegral_set< IntegralRangeT, RangeSetT >
parent_
12.127.1 Detailed Description
template<class IntegralRangeT, class RangeSetT> class stm::local::xIntegral_set< IntegralRangeT,RangeSetT >::integral_iterator
Definition at line 417 of file divxaids.hpp.
Public Member Functions
• integral_iterator ()• bool operator== (const integral_iterator &other) const• bool operator!= (const integral_iterator &other) const• integral_type operator ∗ () const• integral_iterator & operator++ ()• const integral_iterator & operator++ (int)• integral_iterator & operator– ()• const integral_iterator & operator– (int)
Private Member Functions
• integral_iterator (const impl ∗parent, typename impl::const_iterator rit, integral_type value)
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.128 stm::tools::local::xLvdsPacket< ContextT > Class Template Reference 463
Private Attributes
• const impl ∗ parent_• impl::const_iterator rit_• integral_type value_
Friends
• class xIntegral_set< IntegralRangeT, RangeSetT >
12.127.2 Friends And Related Function Documentation
12.127.2.1 template<class IntegralRangeT, class RangeSetT> friend class xIntegral_set< Integral-RangeT, RangeSetT > [friend]
Definition at line 427 of file divxaids.hpp.
12.127.3 Member Data Documentation
12.127.3.1 template<class IntegralRangeT, class RangeSetT> const impl∗ stm::local::xIntegral_-set< IntegralRangeT, RangeSetT >::integral_iterator::parent_ [private]
Definition at line 454 of file divxaids.hpp.
Referenced by stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::integral_iterator::operator∗(), stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::integral_iterator::operator++(), andstm::local::xIntegral_set< IntegralRangeT, RangeSetT >::integral_iterator::operator–().
12.127.3.2 template<class IntegralRangeT, class RangeSetT> impl::const_iteratorstm::local::xIntegral_set< IntegralRangeT, RangeSetT >::integral_iterator::rit_ [private]
Definition at line 455 of file divxaids.hpp.
Referenced by stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::integral_iterator::operator∗(), stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::integral_iterator::operator++(), andstm::local::xIntegral_set< IntegralRangeT, RangeSetT >::integral_iterator::operator–().
12.127.3.3 template<class IntegralRangeT, class RangeSetT> integral_typestm::local::xIntegral_set< IntegralRangeT, RangeSetT >::integral_iterator::value_ [private]
Definition at line 456 of file divxaids.hpp.
Referenced by stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::integral_iterator::operator∗(), stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::integral_iterator::operator++(), andstm::local::xIntegral_set< IntegralRangeT, RangeSetT >::integral_iterator::operator–().
The documentation for this class was generated from the following file:
• divxaids.hpp
12.128 stm::tools::local::xLvdsPacket< ContextT > Class Template Reference
#include <xlvdspacket.hpp>
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.128 stm::tools::local::xLvdsPacket< ContextT > Class Template Reference 464
Inheritance diagram for stm::tools::local::xLvdsPacket< ContextT >:
stm::tools::local::xLvdsPacket< ContextT >
stm::tools::LvdsPacket< ContextT >
Collaboration diagram for stm::tools::local::xLvdsPacket< ContextT >:
stm::tools::local::xLvdsPacket< ContextT >
stm::tools::BinMessage< ContextT >
parent_
stm::byte_iterator_range
body_
stm::tools::BaseMessage< ContextT >
stm::tools::local::xBaseMessage< ContextT >
body_
stm::tools::local::xBinMessage< ContextT >
message_
stm::tools::MsgTimestamp
timestamp_
stm::tools::local::xMsgTimestamp
12.128.1 Detailed Description
template<class ContextT> class stm::tools::local::xLvdsPacket< ContextT >
stm::tools::LvdsPacket implementation base class template.
Definition at line 137 of file xlvdspacket.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.128 stm::tools::local::xLvdsPacket< ContextT > Class Template Reference 465
Protected Types
• enum { HeaderSize = 5 }
Protected Member Functions
• xLvdsPacket (const parent_type &parent)
Protected Attributes
• dword status_Status of the LVDS packet.
• byte lvdsSubslot_• word ubrId_• byte priority_• word antennaFlags_• byte dataType_• bool frq_• bool rsv_• byte_iterator_range body_
byte range consisting of the packet’s payload excluding the other fields.
• byte fcs_• const parent_type & parent_
Private Types
• typedef ContextT context_type• typedef BinMessage< ContextT > parent_type
12.128.2 Member Typedef Documentation
12.128.2.1 template<class ContextT> typedef ContextT stm::tools::local::xLvdsPacket< Con-textT >::context_type [private]
Reimplemented in stm::tools::LvdsPacket< ContextT >.
Definition at line 139 of file xlvdspacket.hpp.
12.128.2.2 template<class ContextT> typedef BinMessage<ContextT>stm::tools::local::xLvdsPacket< ContextT >::parent_type [private]
Reimplemented in stm::tools::LvdsPacket< ContextT >.
Definition at line 140 of file xlvdspacket.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.128 stm::tools::local::xLvdsPacket< ContextT > Class Template Reference 466
12.128.3 Member Enumeration Documentation
12.128.3.1 template<class ContextT> anonymous enum [protected]
Enumerator:
HeaderSize
Definition at line 143 of file xlvdspacket.hpp.
12.128.4 Constructor & Destructor Documentation
12.128.4.1 template<class ContextT> stm::tools::local::xLvdsPacket< ContextT >::xLvdsPacket(const parent_type & parent) [inline, protected]
Definition at line 148 of file xlvdspacket.hpp.
12.128.5 Member Data Documentation
12.128.5.1 template<class ContextT> dword stm::tools::local::xLvdsPacket< ContextT>::status_ [protected]
Status of the LVDS packet.
Definition at line 161 of file xlvdspacket.hpp.
Referenced by stm::tools::LvdsPacket< ContextT >::LvdsPacket(), and stm::tools::LvdsPacket< Con-textT >::status().
12.128.5.2 template<class ContextT> byte stm::tools::local::xLvdsPacket< ContextT>::lvdsSubslot_ [protected]
Definition at line 162 of file xlvdspacket.hpp.
Referenced by stm::tools::LvdsPacket< ContextT >::LvdsPacket(), and stm::tools::LvdsPacket< Con-textT >::lvdsSubslot().
12.128.5.3 template<class ContextT> word stm::tools::local::xLvdsPacket< ContextT >::ubrId_[protected]
Definition at line 163 of file xlvdspacket.hpp.
Referenced by stm::tools::LvdsPacket< ContextT >::LvdsPacket(), and stm::tools::LvdsPacket< Con-textT >::ubrId().
12.128.5.4 template<class ContextT> byte stm::tools::local::xLvdsPacket< ContextT>::priority_ [protected]
Definition at line 164 of file xlvdspacket.hpp.
Referenced by stm::tools::LvdsPacket< ContextT >::LvdsPacket(), and stm::tools::LvdsPacket< Con-textT >::priority().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.128 stm::tools::local::xLvdsPacket< ContextT > Class Template Reference 467
12.128.5.5 template<class ContextT> word stm::tools::local::xLvdsPacket< ContextT>::antennaFlags_ [protected]
Definition at line 165 of file xlvdspacket.hpp.
Referenced by stm::tools::LvdsPacket< ContextT >::antennaFlags(), and stm::tools::LvdsPacket< Con-textT >::LvdsPacket().
12.128.5.6 template<class ContextT> byte stm::tools::local::xLvdsPacket< ContextT>::dataType_ [protected]
Definition at line 166 of file xlvdspacket.hpp.
Referenced by stm::tools::LvdsPacket< ContextT >::dataType(), and stm::tools::LvdsPacket< ContextT>::LvdsPacket().
12.128.5.7 template<class ContextT> bool stm::tools::local::xLvdsPacket< ContextT >::frq_-[protected]
Definition at line 167 of file xlvdspacket.hpp.
Referenced by stm::tools::LvdsPacket< ContextT >::frq(), and stm::tools::LvdsPacket< ContextT>::LvdsPacket().
12.128.5.8 template<class ContextT> bool stm::tools::local::xLvdsPacket< ContextT >::rsv_-[protected]
Definition at line 168 of file xlvdspacket.hpp.
Referenced by stm::tools::LvdsPacket< ContextT >::LvdsPacket(), and stm::tools::LvdsPacket< Con-textT >::rsv().
12.128.5.9 template<class ContextT> byte_iterator_range stm::tools::local::xLvdsPacket< Con-textT >::body_ [protected]
byte range consisting of the packet’s payload excluding the other fields.
Definition at line 169 of file xlvdspacket.hpp.
Referenced by stm::tools::LvdsPacket< ContextT >::body(), and stm::tools::LvdsPacket< ContextT>::LvdsPacket().
12.128.5.10 template<class ContextT> byte stm::tools::local::xLvdsPacket< ContextT >::fcs_-[protected]
Definition at line 171 of file xlvdspacket.hpp.
Referenced by stm::tools::LvdsPacket< ContextT >::fcs(), and stm::tools::LvdsPacket< ContextT>::LvdsPacket().
12.128.5.11 template<class ContextT> const parent_type& stm::tools::local::xLvdsPacket< Con-textT >::parent_ [protected]
Definition at line 172 of file xlvdspacket.hpp.
Referenced by stm::tools::LvdsPacket< ContextT >::LvdsPacket(), and stm::tools::LvdsPacket< Con-textT >::parent().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.129 stm::tools::local::xMcBspMessage< ContextT > Class Template Reference 468
The documentation for this class was generated from the following file:
• xlvdspacket.hpp
12.129 stm::tools::local::xMcBspMessage< ContextT > Class Template Refer-ence
#include <xmcbspmsg.hpp>
Inheritance diagram for stm::tools::local::xMcBspMessage< ContextT >:
stm::tools::local::xMcBspMessage< ContextT >
stm::tools::McBspMessage< ContextT >
12.129.1 Detailed Description
template<class ContextT> class stm::tools::local::xMcBspMessage< ContextT >
stm::tools::McBspMessage implementation base class template.
Definition at line 141 of file xmcbspmsg.hpp.
Protected Types
• enum {
WordSize = basemessage_type::WordSize,
EndWordSize = WordSize,
EndWordPattern = 0x8f8f8f8f }
Static Protected Attributes
• static std::string type_ = "McBSP message"
Private Types
• typedef ContextT context_type• typedef BaseMessage< ContextT > basemessage_type
Friends
• class McBspMessage< context_type >
Classes
• class IdentificationType managing the identification of a McBSP message in a byte stream.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.130 stm::tools::local::xMcBspMessage< ContextT >::Identification Class Reference 469
12.129.2 Member Typedef Documentation
12.129.2.1 template<class ContextT> typedef ContextT stm::tools::local::xMcBspMessage< Con-textT >::context_type [private]
Reimplemented in stm::tools::McBspMessage< ContextT >.
Definition at line 143 of file xmcbspmsg.hpp.
12.129.2.2 template<class ContextT> typedef BaseMessage<ContextT>stm::tools::local::xMcBspMessage< ContextT >::basemessage_type [private]
Reimplemented in stm::tools::McBspMessage< ContextT >.
Definition at line 144 of file xmcbspmsg.hpp.
12.129.3 Member Enumeration Documentation
12.129.3.1 template<class ContextT> anonymous enum [protected]
Enumerator:
WordSizeEndWordSizeEndWordPattern
Definition at line 148 of file xmcbspmsg.hpp.
12.129.4 Friends And Related Function Documentation
12.129.4.1 template<class ContextT> friend class McBspMessage< context_type > [friend]
Definition at line 145 of file xmcbspmsg.hpp.
The documentation for this class was generated from the following file:
• xmcbspmsg.hpp
12.130 stm::tools::local::xMcBspMessage< ContextT >::Identification Class Ref-erence
#include <xmcbspmsg.hpp>
12.130.1 Detailed Description
template<class ContextT> class stm::tools::local::xMcBspMessage< ContextT >::Identification
Type managing the identification of a McBSP message in a byte stream.
Definition at line 156 of file xmcbspmsg.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.130 stm::tools::local::xMcBspMessage< ContextT >::Identification Class Reference 470
Public Member Functions
• Identification ()• bool operator() (const byte ∗first, const byte ∗last, context_type &context)
The operator returns true, if valid identification data could be retrieved from [first, last) else it clears thisIdentification object and returns false.
• operator bool () const• word size () const• word bfn () const• byte slot () const• word chip () const• word bodyLength () const• void clear ()
Private Types
• enum { Size4 }• enum { Size5 }
Private Attributes
• word size_• word bfn_• byte slot_• word chip_• word bodyLength_• word sync_
Static Private Attributes
• static const qword RequiredZeroBitsMaskSize4 = 0x80700000f8f0f000ULL• static const qword RequiredOneBitsMaskSize4 = 0x478f000000000000ULL• static const qword RequiredZeroBitsMaskSize5 = 0x700000f000f0f000ULL• static const qword RequiredOneBitsMaskSize5 = 0x8f00000000000000ULL• static const dword ReqHeaderWordZeroBitsMask = 0x80700000• static const dword ReqHeaderWordOneBitsMask = 0x478f0000
12.130.2 Member Enumeration Documentation
12.130.2.1 template<class ContextT> anonymous enum [private]
Enumerator:
Size4
Definition at line 263 of file xmcbspmsg.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.130 stm::tools::local::xMcBspMessage< ContextT >::Identification Class Reference 471
12.130.2.2 template<class ContextT> anonymous enum [private]
Enumerator:
Size5
Definition at line 270 of file xmcbspmsg.hpp.
12.130.3 Constructor & Destructor Documentation
12.130.3.1 template<class ContextT> stm::tools::local::xMcBspMessage< ContextT>::Identification::Identification () [inline]
Definition at line 159 of file xmcbspmsg.hpp.
References stm::tools::local::xMcBspMessage< ContextT >::Identification::clear().
12.130.4 Member Function Documentation
12.130.4.1 template<class ContextT> bool stm::tools::local::xMcBspMessage< ContextT>::Identification::operator() (const byte ∗ first, const byte ∗ last, context_type & context)[inline]
The operator returns true, if valid identification data could be retrieved from [first, last) else it clears thisIdentification object and returns false.
Throws, if the reading of the data from [first, last) fails due to a lack of input bytes.
Definition at line 170 of file xmcbspmsg.hpp.
References stm::tools::local::xMcBspMessage< ContextT >::Identification::bfn_-, stm::tools::local::xMcBspMessage< ContextT >::Identification::bodyLength_-, stm::tools::local::xMcBspMessage< ContextT >::Identification::chip_-, stm::tools::local::xMcBspMessage< ContextT >::Identification::clear(),stm::tools::local::xMcBspMessage< ContextT >::Identification::ReqHeaderWordOneBitsMask,stm::tools::local::xMcBspMessage< ContextT >::Identification::ReqHeaderWordZeroBitsMask,stm::tools::local::xMcBspMessage< ContextT >::Identification::RequiredOneBitsMaskSize4,stm::tools::local::xMcBspMessage< ContextT >::Identification::RequiredOneBitsMaskSize5,stm::tools::local::xMcBspMessage< ContextT >::Identification::RequiredZeroBitsMaskSize4,stm::tools::local::xMcBspMessage< ContextT >::Identification::RequiredZeroBitsMaskSize5,stm::tools::local::xMcBspMessage< ContextT >::Identification::Size4,stm::tools::local::xMcBspMessage< ContextT >::Identification::Size5,stm::tools::local::xMcBspMessage< ContextT >::Identification::size_-, stm::tools::local::xMcBspMessage< ContextT >::Identification::slot_, andstm::tools::local::xMcBspMessage< ContextT >::Identification::sync_.
12.130.4.2 template<class ContextT> stm::tools::local::xMcBspMessage< ContextT>::Identification::operator bool () const [inline]
Definition at line 214 of file xmcbspmsg.hpp.
References stm::tools::local::xMcBspMessage< ContextT >::Identification::sync_.
12.130.4.3 template<class ContextT> word stm::tools::local::xMcBspMessage< ContextT>::Identification::size () const [inline]
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.130 stm::tools::local::xMcBspMessage< ContextT >::Identification Class Reference 472
Definition at line 219 of file xmcbspmsg.hpp.
References stm::tools::local::xMcBspMessage< ContextT >::Identification::size_.
Referenced by stm::tools::McBspMessage< ContextT >::McBspMessage().
12.130.4.4 template<class ContextT> word stm::tools::local::xMcBspMessage< ContextT>::Identification::bfn () const [inline]
Definition at line 224 of file xmcbspmsg.hpp.
References stm::tools::local::xMcBspMessage< ContextT >::Identification::bfn_.
Referenced by stm::tools::McBspMessage< ContextT >::McBspMessage().
12.130.4.5 template<class ContextT> byte stm::tools::local::xMcBspMessage< ContextT>::Identification::slot () const [inline]
Definition at line 229 of file xmcbspmsg.hpp.
References stm::tools::local::xMcBspMessage< ContextT >::Identification::slot_.
Referenced by stm::tools::McBspMessage< ContextT >::McBspMessage().
12.130.4.6 template<class ContextT> word stm::tools::local::xMcBspMessage< ContextT>::Identification::chip () const [inline]
Definition at line 234 of file xmcbspmsg.hpp.
References stm::tools::local::xMcBspMessage< ContextT >::Identification::chip_.
Referenced by stm::tools::McBspMessage< ContextT >::McBspMessage().
12.130.4.7 template<class ContextT> word stm::tools::local::xMcBspMessage< ContextT>::Identification::bodyLength () const [inline]
Definition at line 239 of file xmcbspmsg.hpp.
References stm::tools::local::xMcBspMessage< ContextT >::Identification::bodyLength_.
Referenced by stm::tools::McBspMessage< ContextT >::McBspMessage().
12.130.4.8 template<class ContextT> void stm::tools::local::xMcBspMessage< ContextT>::Identification::clear () [inline]
Definition at line 244 of file xmcbspmsg.hpp.
References stm::tools::local::xMcBspMessage< ContextT >::Identification::bfn_-, stm::tools::local::xMcBspMessage< ContextT >::Identification::bodyLength_-, stm::tools::local::xMcBspMessage< ContextT >::Identification::chip_-, stm::tools::local::xMcBspMessage< ContextT >::Identification::size_-, stm::tools::local::xMcBspMessage< ContextT >::Identification::slot_, andstm::tools::local::xMcBspMessage< ContextT >::Identification::sync_.
Referenced by stm::tools::local::xMcBspMessage< ContextT >::Identification::Identification(),stm::tools::McBspMessage< ContextT >::McBspMessage(), and stm::tools::local::xMcBspMessage<ContextT >::Identification::operator()().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.130 stm::tools::local::xMcBspMessage< ContextT >::Identification Class Reference 473
12.130.5 Member Data Documentation
12.130.5.1 template<class ContextT> word stm::tools::local::xMcBspMessage< ContextT>::Identification::size_ [private]
Definition at line 256 of file xmcbspmsg.hpp.
Referenced by stm::tools::local::xMcBspMessage< ContextT >::Identification::clear(),stm::tools::local::xMcBspMessage< ContextT >::Identification::operator()(), andstm::tools::local::xMcBspMessage< ContextT >::Identification::size().
12.130.5.2 template<class ContextT> word stm::tools::local::xMcBspMessage< ContextT>::Identification::bfn_ [private]
Definition at line 257 of file xmcbspmsg.hpp.
Referenced by stm::tools::local::xMcBspMessage< ContextT >::Identification::bfn(),stm::tools::local::xMcBspMessage< ContextT >::Identification::clear(), andstm::tools::local::xMcBspMessage< ContextT >::Identification::operator()().
12.130.5.3 template<class ContextT> byte stm::tools::local::xMcBspMessage< ContextT>::Identification::slot_ [private]
Definition at line 258 of file xmcbspmsg.hpp.
Referenced by stm::tools::local::xMcBspMessage< ContextT >::Identification::clear(),stm::tools::local::xMcBspMessage< ContextT >::Identification::operator()(), andstm::tools::local::xMcBspMessage< ContextT >::Identification::slot().
12.130.5.4 template<class ContextT> word stm::tools::local::xMcBspMessage< ContextT>::Identification::chip_ [private]
Definition at line 259 of file xmcbspmsg.hpp.
Referenced by stm::tools::local::xMcBspMessage< ContextT >::Identification::chip(),stm::tools::local::xMcBspMessage< ContextT >::Identification::clear(), andstm::tools::local::xMcBspMessage< ContextT >::Identification::operator()().
12.130.5.5 template<class ContextT> word stm::tools::local::xMcBspMessage< ContextT>::Identification::bodyLength_ [private]
Definition at line 260 of file xmcbspmsg.hpp.
Referenced by stm::tools::local::xMcBspMessage< ContextT >::Identification::bodyLength(),stm::tools::local::xMcBspMessage< ContextT >::Identification::clear(), andstm::tools::local::xMcBspMessage< ContextT >::Identification::operator()().
12.130.5.6 template<class ContextT> word stm::tools::local::xMcBspMessage< ContextT>::Identification::sync_ [private]
Definition at line 261 of file xmcbspmsg.hpp.
Referenced by stm::tools::local::xMcBspMessage< ContextT >::Identification::clear(),stm::tools::local::xMcBspMessage< ContextT >::Identification::operator bool(), andstm::tools::local::xMcBspMessage< ContextT >::Identification::operator()().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.131 stm::tools::local::xMsgTimestamp Class Reference 474
12.130.5.7 template<class ContextT> const qword stm::tools::local::xMcBspMessage< Con-textT >::Identification::RequiredZeroBitsMaskSize4 = 0x80700000f8f0f000ULL [static,private]
Definition at line 277 of file xmcbspmsg.hpp.
Referenced by stm::tools::local::xMcBspMessage< ContextT >::Identification::operator()().
12.130.5.8 template<class ContextT> const qword stm::tools::local::xMcBspMessage< Con-textT >::Identification::RequiredOneBitsMaskSize4 = 0x478f000000000000ULL [static,private]
Definition at line 278 of file xmcbspmsg.hpp.
Referenced by stm::tools::local::xMcBspMessage< ContextT >::Identification::operator()().
12.130.5.9 template<class ContextT> const qword stm::tools::local::xMcBspMessage< Con-textT >::Identification::RequiredZeroBitsMaskSize5 = 0x700000f000f0f000ULL [static,private]
Definition at line 279 of file xmcbspmsg.hpp.
Referenced by stm::tools::local::xMcBspMessage< ContextT >::Identification::operator()().
12.130.5.10 template<class ContextT> const qword stm::tools::local::xMcBspMessage< Con-textT >::Identification::RequiredOneBitsMaskSize5 = 0x8f00000000000000ULL [static,private]
Definition at line 280 of file xmcbspmsg.hpp.
Referenced by stm::tools::local::xMcBspMessage< ContextT >::Identification::operator()().
12.130.5.11 template<class ContextT> const dword stm::tools::local::xMcBspMessage< Con-textT >::Identification::ReqHeaderWordZeroBitsMask = 0x80700000 [static, private]
Definition at line 281 of file xmcbspmsg.hpp.
Referenced by stm::tools::local::xMcBspMessage< ContextT >::Identification::operator()().
12.130.5.12 template<class ContextT> const dword stm::tools::local::xMcBspMessage< Con-textT >::Identification::ReqHeaderWordOneBitsMask = 0x478f0000 [static, private]
Definition at line 282 of file xmcbspmsg.hpp.
Referenced by stm::tools::local::xMcBspMessage< ContextT >::Identification::operator()().
The documentation for this class was generated from the following file:
• xmcbspmsg.hpp
12.131 stm::tools::local::xMsgTimestamp Class Reference
#include <xmsgtimestamp.hpp>
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.131 stm::tools::local::xMsgTimestamp Class Reference 475
Inheritance diagram for stm::tools::local::xMsgTimestamp:
stm::tools::local::xMsgTimestamp
stm::tools::MsgTimestamp
12.131.1 Detailed Description
stm::tools::MsgTimestamp implementation base class.
Definition at line 127 of file xmsgtimestamp.hpp.
Protected Types
• enum {
Invalid = 0,
Udp = 1,
Fpga = 2 }• typedef xMsgTimestamp MsgTimestampImpl
Protected Member Functions
• xMsgTimestamp ()
Protected Attributes
• byte status_• word bfn_• byte slot_• word chip_• dword boardTimeSec_• word boardTimeMs_• dword seqNo_• bool hsTadsib_
12.131.2 Member Typedef Documentation
12.131.2.1 typedef xMsgTimestamp stm::tools::local::xMsgTimestamp::MsgTimestampImpl[protected]
Definition at line 130 of file xmsgtimestamp.hpp.
12.131.3 Member Enumeration Documentation
12.131.3.1 anonymous enum [protected]
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.131 stm::tools::local::xMsgTimestamp Class Reference 476
Enumerator:
InvalidUdpFpga
Definition at line 132 of file xmsgtimestamp.hpp.
12.131.4 Constructor & Destructor Documentation
12.131.4.1 stm::tools::local::xMsgTimestamp::xMsgTimestamp () [inline, protected]
Definition at line 139 of file xmsgtimestamp.hpp.
12.131.5 Member Data Documentation
12.131.5.1 byte stm::tools::local::xMsgTimestamp::status_ [protected]
Definition at line 150 of file xmsgtimestamp.hpp.
Referenced by stm::tools::MsgTimestamp::isFpga(), stm::tools::MsgTimestamp::isUdp(),stm::tools::MsgTimestamp::status(), and stm::tools::MsgTimestamp::valid().
12.131.5.2 word stm::tools::local::xMsgTimestamp::bfn_ [protected]
Definition at line 151 of file xmsgtimestamp.hpp.
Referenced by stm::tools::MsgTimestamp::bfn().
12.131.5.3 byte stm::tools::local::xMsgTimestamp::slot_ [protected]
Definition at line 152 of file xmsgtimestamp.hpp.
Referenced by stm::tools::MsgTimestamp::slot().
12.131.5.4 word stm::tools::local::xMsgTimestamp::chip_ [protected]
Definition at line 153 of file xmsgtimestamp.hpp.
Referenced by stm::tools::MsgTimestamp::chip().
12.131.5.5 dword stm::tools::local::xMsgTimestamp::boardTimeSec_ [protected]
Definition at line 154 of file xmsgtimestamp.hpp.
Referenced by stm::tools::MsgTimestamp::boardTimeSec().
12.131.5.6 word stm::tools::local::xMsgTimestamp::boardTimeMs_ [protected]
Definition at line 155 of file xmsgtimestamp.hpp.
Referenced by stm::tools::MsgTimestamp::boardTimeMs().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.132 stm::tools::local::xPrintkBinMessage< ContextT > Class Template Reference 477
12.131.5.7 dword stm::tools::local::xMsgTimestamp::seqNo_ [protected]
Definition at line 156 of file xmsgtimestamp.hpp.
Referenced by stm::tools::MsgTimestamp::seqNo().
12.131.5.8 bool stm::tools::local::xMsgTimestamp::hsTadsib_ [protected]
Definition at line 157 of file xmsgtimestamp.hpp.
Referenced by stm::tools::MsgTimestamp::hsTadsib().
The documentation for this class was generated from the following file:
• xmsgtimestamp.hpp
12.132 stm::tools::local::xPrintkBinMessage< ContextT > Class Template Refer-ence
#include <xprintkbinmsg.hpp>
Inheritance diagram for stm::tools::local::xPrintkBinMessage< ContextT >:
stm::tools::local::xPrintkBinMessage< ContextT >
stm::tools::PrintkBinMessage< ContextT >
12.132.1 Detailed Description
template<class ContextT> class stm::tools::local::xPrintkBinMessage< ContextT >
Definition at line 140 of file xprintkbinmsg.hpp.
Protected Types
• enum { WordSize = basemessage_type::WordSize }
Static Protected Attributes
• static std::string type_ = "PrintkBin message"
Private Types
• typedef ContextT context_type• typedef BaseMessage< ContextT > basemessage_type
Friends
• class PrintkBinMessage< context_type >
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.133 stm::tools::local::xPrintkBinMessage< ContextT >::Identification Class Reference 478
Classes
• class Identification
12.132.2 Member Typedef Documentation
12.132.2.1 template<class ContextT> typedef ContextT stm::tools::local::xPrintkBinMessage<ContextT >::context_type [private]
Reimplemented in stm::tools::PrintkBinMessage< ContextT >.
Definition at line 142 of file xprintkbinmsg.hpp.
12.132.2.2 template<class ContextT> typedef BaseMessage<ContextT>stm::tools::local::xPrintkBinMessage< ContextT >::basemessage_type [private]
Reimplemented in stm::tools::PrintkBinMessage< ContextT >.
Definition at line 143 of file xprintkbinmsg.hpp.
12.132.3 Member Enumeration Documentation
12.132.3.1 template<class ContextT> anonymous enum [protected]
Enumerator:
WordSize
Definition at line 147 of file xprintkbinmsg.hpp.
12.132.4 Friends And Related Function Documentation
12.132.4.1 template<class ContextT> friend class PrintkBinMessage< context_type >[friend]
Definition at line 144 of file xprintkbinmsg.hpp.
The documentation for this class was generated from the following file:
• xprintkbinmsg.hpp
12.133 stm::tools::local::xPrintkBinMessage< ContextT >::Identification ClassReference
#include <xprintkbinmsg.hpp>
12.133.1 Detailed Description
template<class ContextT> class stm::tools::local::xPrintkBinMessage< ContextT >::Identification
Definition at line 152 of file xprintkbinmsg.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.133 stm::tools::local::xPrintkBinMessage< ContextT >::Identification Class Reference 479
Public Member Functions
• Identification ()• bool operator() (const byte ∗first, const byte ∗last, context_type &context)
The operator returns true, if valid identification data could be retrieved from [first, last) else it clears thisIdentification object returns false.
• operator bool () const• word size () const• word bfn () const• dword boardTimeSec () const• word boardTimeMs () const• dword seqNo () const• word bodyLength () const• void addBodyLength (word val)• void clear ()
Private Types
• enum { SizeZyxw }• enum { SizeAbcd }
Private Attributes
• word size_• dword sync_• word bfn_• dword boardTimeSec_• word boardTimeMs_• dword seqNo_• word bodyLength_
Static Private Attributes
• static const dword SyncWordPatternZyxw = 0x7a797877• static const dword SyncWordPatternAbcd = 0x61626364• static const word BfnMask = 0x0fff
12.133.2 Member Enumeration Documentation
12.133.2.1 template<class ContextT> anonymous enum [private]
Enumerator:
SizeZyxw
Definition at line 284 of file xprintkbinmsg.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.133 stm::tools::local::xPrintkBinMessage< ContextT >::Identification Class Reference 480
12.133.2.2 template<class ContextT> anonymous enum [private]
Enumerator:
SizeAbcd
Definition at line 292 of file xprintkbinmsg.hpp.
12.133.3 Constructor & Destructor Documentation
12.133.3.1 template<class ContextT> stm::tools::local::xPrintkBinMessage< ContextT>::Identification::Identification () [inline]
Definition at line 155 of file xprintkbinmsg.hpp.
References stm::tools::local::xPrintkBinMessage< ContextT >::Identification::clear().
12.133.4 Member Function Documentation
12.133.4.1 template<class ContextT> bool stm::tools::local::xPrintkBinMessage< ContextT>::Identification::operator() (const byte ∗ first, const byte ∗ last, context_type & context)[inline]
The operator returns true, if valid identification data could be retrieved from [first, last) else it clears thisIdentification object returns false.
Throws, if the reading of the data from [first, last) fails due to a lack of input bytes.
Definition at line 166 of file xprintkbinmsg.hpp.
References stm::tools::local::xPrintkBinMessage< ContextT >::Identification::bfn_-, stm::tools::local::xPrintkBinMessage< ContextT >::Identification::BfnMask,stm::tools::local::xPrintkBinMessage< ContextT >::Identification::boardTimeMs_-, stm::tools::local::xPrintkBinMessage< ContextT >::Identification::boardTimeSec_-, stm::tools::local::xPrintkBinMessage< ContextT >::Identification::bodyLength_-, stm::tools::local::xPrintkBinMessage< ContextT >::Identification::clear(),stm::tools::local::xPrintkBinMessage< ContextT >::Identification::seqNo_-, stm::tools::local::xPrintkBinMessage< ContextT >::Identification::size_-, stm::tools::local::xPrintkBinMessage< ContextT >::Identification::SizeAbcd,stm::tools::local::xPrintkBinMessage< ContextT >::Identification::SizeZyxw,stm::tools::local::xPrintkBinMessage< ContextT >::Identification::sync_-, stm::tools::local::xPrintkBinMessage< ContextT >::Identification::SyncWordPatternAbcd,stm::tools::local::xPrintkBinMessage< ContextT >::Identification::SyncWordPatternZyxw, andstm::tools::local::xPrintkBinMessage< ContextT >::WordSize.
12.133.4.2 template<class ContextT> stm::tools::local::xPrintkBinMessage< ContextT>::Identification::operator bool () const [inline]
Definition at line 222 of file xprintkbinmsg.hpp.
References stm::tools::local::xPrintkBinMessage< ContextT >::Identification::sync_.
12.133.4.3 template<class ContextT> word stm::tools::local::xPrintkBinMessage< ContextT>::Identification::size () const [inline]
Definition at line 227 of file xprintkbinmsg.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.133 stm::tools::local::xPrintkBinMessage< ContextT >::Identification Class Reference 481
References stm::tools::local::xPrintkBinMessage< ContextT >::Identification::size_.
Referenced by stm::tools::PrintkBinMessage< ContextT >::PrintkBinMessage().
12.133.4.4 template<class ContextT> word stm::tools::local::xPrintkBinMessage< ContextT>::Identification::bfn () const [inline]
Definition at line 232 of file xprintkbinmsg.hpp.
References stm::tools::local::xPrintkBinMessage< ContextT >::Identification::bfn_.
Referenced by stm::tools::PrintkBinMessage< ContextT >::PrintkBinMessage().
12.133.4.5 template<class ContextT> dword stm::tools::local::xPrintkBinMessage< ContextT>::Identification::boardTimeSec () const [inline]
Definition at line 237 of file xprintkbinmsg.hpp.
References stm::tools::local::xPrintkBinMessage< ContextT >::Identification::boardTimeSec_.
Referenced by stm::tools::PrintkBinMessage< ContextT >::PrintkBinMessage().
12.133.4.6 template<class ContextT> word stm::tools::local::xPrintkBinMessage< ContextT>::Identification::boardTimeMs () const [inline]
Definition at line 242 of file xprintkbinmsg.hpp.
References stm::tools::local::xPrintkBinMessage< ContextT >::Identification::boardTimeMs_.
Referenced by stm::tools::PrintkBinMessage< ContextT >::PrintkBinMessage().
12.133.4.7 template<class ContextT> dword stm::tools::local::xPrintkBinMessage< ContextT>::Identification::seqNo () const [inline]
Definition at line 247 of file xprintkbinmsg.hpp.
References stm::tools::local::xPrintkBinMessage< ContextT >::Identification::seqNo_.
Referenced by stm::tools::PrintkBinMessage< ContextT >::PrintkBinMessage().
12.133.4.8 template<class ContextT> word stm::tools::local::xPrintkBinMessage< ContextT>::Identification::bodyLength () const [inline]
Definition at line 252 of file xprintkbinmsg.hpp.
References stm::tools::local::xPrintkBinMessage< ContextT >::Identification::bodyLength_.
Referenced by stm::tools::PrintkBinMessage< ContextT >::PrintkBinMessage().
12.133.4.9 template<class ContextT> void stm::tools::local::xPrintkBinMessage< ContextT>::Identification::addBodyLength (word val) [inline]
Definition at line 257 of file xprintkbinmsg.hpp.
References stm::tools::local::xPrintkBinMessage< ContextT >::Identification::bodyLength_.
Referenced by stm::tools::PrintkBinMessage< ContextT >::PrintkBinMessage().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.133 stm::tools::local::xPrintkBinMessage< ContextT >::Identification Class Reference 482
12.133.4.10 template<class ContextT> void stm::tools::local::xPrintkBinMessage< ContextT>::Identification::clear () [inline]
Definition at line 263 of file xprintkbinmsg.hpp.
References stm::tools::local::xPrintkBinMessage< ContextT >::Identification::bfn_-, stm::tools::local::xPrintkBinMessage< ContextT >::Identification::boardTimeMs_-, stm::tools::local::xPrintkBinMessage< ContextT >::Identification::boardTimeSec_-, stm::tools::local::xPrintkBinMessage< ContextT >::Identification::bodyLength_-, stm::tools::local::xPrintkBinMessage< ContextT >::Identification::seqNo_-, stm::tools::local::xPrintkBinMessage< ContextT >::Identification::size_, andstm::tools::local::xPrintkBinMessage< ContextT >::Identification::sync_.
Referenced by stm::tools::local::xPrintkBinMessage< ContextT >::Identification::Identification(),stm::tools::local::xPrintkBinMessage< ContextT >::Identification::operator()(), andstm::tools::PrintkBinMessage< ContextT >::PrintkBinMessage().
12.133.5 Member Data Documentation
12.133.5.1 template<class ContextT> word stm::tools::local::xPrintkBinMessage< ContextT>::Identification::size_ [private]
Definition at line 276 of file xprintkbinmsg.hpp.
Referenced by stm::tools::local::xPrintkBinMessage< ContextT >::Identification::clear(),stm::tools::local::xPrintkBinMessage< ContextT >::Identification::operator()(), andstm::tools::local::xPrintkBinMessage< ContextT >::Identification::size().
12.133.5.2 template<class ContextT> dword stm::tools::local::xPrintkBinMessage< ContextT>::Identification::sync_ [private]
Definition at line 277 of file xprintkbinmsg.hpp.
Referenced by stm::tools::local::xPrintkBinMessage< ContextT >::Identification::clear(),stm::tools::local::xPrintkBinMessage< ContextT >::Identification::operator bool(), andstm::tools::local::xPrintkBinMessage< ContextT >::Identification::operator()().
12.133.5.3 template<class ContextT> word stm::tools::local::xPrintkBinMessage< ContextT>::Identification::bfn_ [private]
Definition at line 278 of file xprintkbinmsg.hpp.
Referenced by stm::tools::local::xPrintkBinMessage< ContextT >::Identification::bfn(),stm::tools::local::xPrintkBinMessage< ContextT >::Identification::clear(), andstm::tools::local::xPrintkBinMessage< ContextT >::Identification::operator()().
12.133.5.4 template<class ContextT> dword stm::tools::local::xPrintkBinMessage< ContextT>::Identification::boardTimeSec_ [private]
Definition at line 279 of file xprintkbinmsg.hpp.
Referenced by stm::tools::local::xPrintkBinMessage< ContextT >::Identification::boardTimeSec(),stm::tools::local::xPrintkBinMessage< ContextT >::Identification::clear(), andstm::tools::local::xPrintkBinMessage< ContextT >::Identification::operator()().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.134 stm::local::xreadablefile Class Reference 483
12.133.5.5 template<class ContextT> word stm::tools::local::xPrintkBinMessage< ContextT>::Identification::boardTimeMs_ [private]
Definition at line 280 of file xprintkbinmsg.hpp.
Referenced by stm::tools::local::xPrintkBinMessage< ContextT >::Identification::boardTimeMs(),stm::tools::local::xPrintkBinMessage< ContextT >::Identification::clear(), andstm::tools::local::xPrintkBinMessage< ContextT >::Identification::operator()().
12.133.5.6 template<class ContextT> dword stm::tools::local::xPrintkBinMessage< ContextT>::Identification::seqNo_ [private]
Definition at line 281 of file xprintkbinmsg.hpp.
Referenced by stm::tools::local::xPrintkBinMessage< ContextT >::Identification::clear(),stm::tools::local::xPrintkBinMessage< ContextT >::Identification::operator()(), andstm::tools::local::xPrintkBinMessage< ContextT >::Identification::seqNo().
12.133.5.7 template<class ContextT> word stm::tools::local::xPrintkBinMessage< ContextT>::Identification::bodyLength_ [private]
Definition at line 282 of file xprintkbinmsg.hpp.
Referenced by stm::tools::local::xPrintkBinMessage< ContextT >::Identification::addBodyLength(),stm::tools::local::xPrintkBinMessage< ContextT >::Identification::bodyLength(),stm::tools::local::xPrintkBinMessage< ContextT >::Identification::clear(), andstm::tools::local::xPrintkBinMessage< ContextT >::Identification::operator()().
12.133.5.8 template<class ContextT> const dword stm::tools::local::xPrintkBinMessage< Con-textT >::Identification::SyncWordPatternZyxw = 0x7a797877 [static, private]
Definition at line 299 of file xprintkbinmsg.hpp.
Referenced by stm::tools::local::xPrintkBinMessage< ContextT >::Identification::operator()().
12.133.5.9 template<class ContextT> const dword stm::tools::local::xPrintkBinMessage< Con-textT >::Identification::SyncWordPatternAbcd = 0x61626364 [static, private]
Definition at line 300 of file xprintkbinmsg.hpp.
Referenced by stm::tools::local::xPrintkBinMessage< ContextT >::Identification::operator()().
12.133.5.10 template<class ContextT> const word stm::tools::local::xPrintkBinMessage< Con-textT >::Identification::BfnMask = 0x0fff [static, private]
Definition at line 301 of file xprintkbinmsg.hpp.
Referenced by stm::tools::local::xPrintkBinMessage< ContextT >::Identification::operator()().
The documentation for this class was generated from the following file:
• xprintkbinmsg.hpp
12.134 stm::local::xreadablefile Class Reference
#include <filesysxaids.hpp>
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.135 stm::local::xrecursionenv Class Reference 484
Inheritance diagram for stm::local::xreadablefile:
stm::local::xreadablefile
stm::readablefile< NameT >
12.134.1 Detailed Description
stm::readablefile implementation base class.
Definition at line 239 of file filesysxaids.hpp.
Protected Member Functions
• xreadablefile ()
Protected Attributes
• size_t fsize_
12.134.2 Constructor & Destructor Documentation
12.134.2.1 stm::local::xreadablefile::xreadablefile () [inline, protected]
Definition at line 242 of file filesysxaids.hpp.
12.134.3 Member Data Documentation
12.134.3.1 size_t stm::local::xreadablefile::fsize_ [protected]
Definition at line 243 of file filesysxaids.hpp.
Referenced by stm::readablefile< NameT >::fileSize(), stm::readablefile< NameT >::isTextfile(),stm::readablefile< NameT >::readablefile(), and stm::readablefile< NameT >::swap().
The documentation for this class was generated from the following file:
• filesysxaids.hpp
12.135 stm::local::xrecursionenv Class Reference
#include <filesysxaids.hpp>
Inheritance diagram for stm::local::xrecursionenv:
stm::local::xrecursionenv
stm::path< NameT >::recursionenv
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.135 stm::local::xrecursionenv Class Reference 485
12.135.1 Detailed Description
stm::path::recursionenv implementation base class.
Definition at line 159 of file filesysxaids.hpp.
Protected Types
• typedef xrecursionenv impl
Protected Member Functions
• xrecursionenv (const boost::filesystem::path &root, dword flags)
Protected Attributes
• const boost::filesystem::path & root_• dword flags_
Static Protected Attributes
• static const dword FollowDirLinks = 0x00000001• static const dword DoNotRecurse = 0x00000002
12.135.2 Member Typedef Documentation
12.135.2.1 typedef xrecursionenv stm::local::xrecursionenv::impl [protected]
Definition at line 162 of file filesysxaids.hpp.
12.135.3 Constructor & Destructor Documentation
12.135.3.1 stm::local::xrecursionenv::xrecursionenv (const boost::filesystem::path & root, dwordflags) [inline, protected]
Definition at line 167 of file filesysxaids.hpp.
12.135.4 Member Data Documentation
12.135.4.1 const dword stm::local::xrecursionenv::FollowDirLinks = 0x00000001 [static,protected]
Reimplemented in stm::path< NameT >::recursionenv.
Definition at line 164 of file filesysxaids.hpp.
12.135.4.2 const dword stm::local::xrecursionenv::DoNotRecurse = 0x00000002 [static,protected]
Reimplemented in stm::path< NameT >::recursionenv.
Definition at line 165 of file filesysxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.136 stm::local::xscoped_lock Class Reference 486
12.135.4.3 const boost::filesystem::path& stm::local::xrecursionenv::root_ [protected]
Definition at line 172 of file filesysxaids.hpp.
Referenced by stm::path< NameT >::recursionenv::root().
12.135.4.4 dword stm::local::xrecursionenv::flags_ [protected]
Definition at line 173 of file filesysxaids.hpp.
Referenced by stm::path< NameT >::recursionenv::flags().
The documentation for this class was generated from the following file:
• filesysxaids.hpp
12.136 stm::local::xscoped_lock Class Reference
#include <divxaids.hpp>
Inheritance diagram for stm::local::xscoped_lock:
stm::local::xscoped_lock
stm::scoped_lock
12.136.1 Detailed Description
stm::scoped_lock implementation base class.
Definition at line 609 of file divxaids.hpp.
Protected Member Functions
• xscoped_lock (StmMutex mutex)
Protected Attributes
• StmMutex mutex_
Friends
• class xcondition
12.136.2 Constructor & Destructor Documentation
12.136.2.1 stm::local::xscoped_lock::xscoped_lock (StmMutex mutex) [inline,protected]
Definition at line 614 of file divxaids.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.137 stm::local::xsystem_condition Class Reference 487
12.136.3 Friends And Related Function Documentation
12.136.3.1 friend class xcondition [friend]
Definition at line 611 of file divxaids.hpp.
12.136.4 Member Data Documentation
12.136.4.1 StmMutex stm::local::xscoped_lock::mutex_ [protected]
Definition at line 618 of file divxaids.hpp.
Referenced by stm::scoped_lock::scoped_lock(), stm::local::xcondition::wait_(), and stm::scoped_-lock::∼scoped_lock().
The documentation for this class was generated from the following file:
• divxaids.hpp
12.137 stm::local::xsystem_condition Class Reference
#include <divxaids.hpp>
Inheritance diagram for stm::local::xsystem_condition:
stm::local::xsystem_condition
stm::system_condition
12.137.1 Detailed Description
stm::system_condition implementation base class.
Definition at line 558 of file divxaids.hpp.
Public Member Functions
• bool wait_ (system_scoped_lock &lock, int64 absTimeMs)
Protected Member Functions
• xsystem_condition (const std::string &name)
Protected Attributes
• StmNamedCondition cond_
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.138 stm::local::xsystem_scoped_lock Class Reference 488
12.137.2 Constructor & Destructor Documentation
12.137.2.1 stm::local::xsystem_condition::xsystem_condition (const std::string & name)[inline, protected]
Definition at line 564 of file divxaids.hpp.
12.137.3 Member Data Documentation
12.137.3.1 StmNamedCondition stm::local::xsystem_condition::cond_ [protected]
Definition at line 568 of file divxaids.hpp.
Referenced by stm::system_condition::broadcast(), stm::system_condition::signal(), stm::system_-condition::system_condition(), wait_(), and stm::system_condition::∼system_condition().
The documentation for this class was generated from the following file:
• divxaids.hpp
12.138 stm::local::xsystem_scoped_lock Class Reference
#include <divxaids.hpp>
Inheritance diagram for stm::local::xsystem_scoped_lock:
stm::local::xsystem_scoped_lock
stm::system_scoped_lock
12.138.1 Detailed Description
stm::system_scoped_lock implementation base class.
Definition at line 623 of file divxaids.hpp.
Protected Member Functions
• xsystem_scoped_lock (StmNamedMutex mutex)
Protected Attributes
• StmNamedMutex mutex_
Friends
• class xsystem_condition
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.139 stm::tools::local::xTraceHeader Class Reference 489
12.138.2 Constructor & Destructor Documentation
12.138.2.1 stm::local::xsystem_scoped_lock::xsystem_scoped_lock (StmNamedMutex mutex)[inline, protected]
Definition at line 628 of file divxaids.hpp.
12.138.3 Friends And Related Function Documentation
12.138.3.1 friend class xsystem_condition [friend]
Definition at line 625 of file divxaids.hpp.
12.138.4 Member Data Documentation
12.138.4.1 StmNamedMutex stm::local::xsystem_scoped_lock::mutex_ [protected]
Definition at line 632 of file divxaids.hpp.
Referenced by stm::system_scoped_lock::system_scoped_lock(), stm::local::xsystem_condition::wait_(),and stm::system_scoped_lock::∼system_scoped_lock().
The documentation for this class was generated from the following file:
• divxaids.hpp
12.139 stm::tools::local::xTraceHeader Class Reference
#include <xdspmsg.hpp>
Inheritance diagram for stm::tools::local::xTraceHeader:
stm::tools::local::xTraceHeader
stm::tools::DspMessage< ContextT >::TraceHeader
12.139.1 Detailed Description
stm::tools::DspMessage::TraceHeader implementation base class.
Definition at line 139 of file xdspmsg.hpp.
Protected Types
• typedef xTraceHeader TraceHeaderImpl
Protected Member Functions
• xTraceHeader (const byte_iterator_range &range)
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.139 stm::tools::local::xTraceHeader Class Reference 490
Protected Attributes
• word size_• word bfn_• word frameChips_• word userFrameNo_• word userSlotNo_• word opCode_• word payloadLength_
Static Protected Attributes
• static const word Length = 7 ∗ sizeof (dword)Byte size of a trace header.
• static const word BbtOpCode = 0x018cOpcode identifying a BBT trace header.
• static const word DdtOpCode = 0x018dOpcode identifying a DDT trace header.
Friends
• class xDspMessage
12.139.2 Member Typedef Documentation
12.139.2.1 typedef xTraceHeader stm::tools::local::xTraceHeader::TraceHeaderImpl[protected]
Definition at line 144 of file xdspmsg.hpp.
12.139.3 Friends And Related Function Documentation
12.139.3.1 friend class xDspMessage [friend]
Definition at line 141 of file xdspmsg.hpp.
12.139.4 Member Data Documentation
12.139.4.1 word stm::tools::local::xTraceHeader::size_ [protected]
Definition at line 148 of file xdspmsg.hpp.
Referenced by stm::tools::DspMessage< ContextT >::TraceHeader::size(), and xTraceHeader().
12.139.4.2 word stm::tools::local::xTraceHeader::bfn_ [protected]
Definition at line 149 of file xdspmsg.hpp.
Referenced by stm::tools::DspMessage< ContextT >::TraceHeader::bfn(), and xTraceHeader().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.139 stm::tools::local::xTraceHeader Class Reference 491
12.139.4.3 word stm::tools::local::xTraceHeader::frameChips_ [protected]
Definition at line 150 of file xdspmsg.hpp.
Referenced by stm::tools::DspMessage< ContextT >::TraceHeader::frameChips(), and xTraceHeader().
12.139.4.4 word stm::tools::local::xTraceHeader::userFrameNo_ [protected]
Definition at line 151 of file xdspmsg.hpp.
Referenced by stm::tools::DspMessage< ContextT >::TraceHeader::userFrameNo(), and xTrace-Header().
12.139.4.5 word stm::tools::local::xTraceHeader::userSlotNo_ [protected]
Definition at line 152 of file xdspmsg.hpp.
Referenced by stm::tools::DspMessage< ContextT >::TraceHeader::userSlotNo(), and xTraceHeader().
12.139.4.6 word stm::tools::local::xTraceHeader::opCode_ [protected]
Definition at line 153 of file xdspmsg.hpp.
Referenced by stm::tools::DspMessage< ContextT >::TraceHeader::opCode(), and xTraceHeader().
12.139.4.7 word stm::tools::local::xTraceHeader::payloadLength_ [protected]
Definition at line 154 of file xdspmsg.hpp.
Referenced by stm::tools::DspMessage< ContextT >::TraceHeader::payloadLength(), and xTrace-Header().
12.139.4.8 const word stm::tools::local::xTraceHeader::Length = 7 ∗ sizeof (dword) [static,protected]
Byte size of a trace header.
Definition at line 156 of file xdspmsg.hpp.
Referenced by xTraceHeader().
12.139.4.9 const word stm::tools::local::xTraceHeader::BbtOpCode = 0x018c [static,protected]
Opcode identifying a BBT trace header.
Definition at line 157 of file xdspmsg.hpp.
Referenced by xTraceHeader().
12.139.4.10 const word stm::tools::local::xTraceHeader::DdtOpCode = 0x018d [static,protected]
Opcode identifying a DDT trace header.
Definition at line 158 of file xdspmsg.hpp.
Referenced by xTraceHeader().
The documentation for this class was generated from the following files:
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
12.140 Xyz Struct Reference 492
• xdspmsg.hpp• dspmsg.cpp
12.140 Xyz Struct Reference
12.140.1 Detailed Description
Examples:
smartptrtest.cpp.
Definition at line 176 of file smartptrtest.cpp.
Public Member Functions
• Xyz (stm::dword id=0, XyzPtr ptr=XyzPtr())
Public Attributes
• stm::dword id• XyzPtr ptr
12.140.2 Constructor & Destructor Documentation
12.140.2.1 Xyz::Xyz (stm::dword id = 0, XyzPtr ptr = XyzPtr ()) [inline]
Examples:
smartptrtest.cpp.
Definition at line 178 of file smartptrtest.cpp.
12.140.3 Member Data Documentation
12.140.3.1 stm::dword Xyz::id
Examples:
smartptrtest.cpp.
Definition at line 183 of file smartptrtest.cpp.
Referenced by operator<().
12.140.3.2 XyzPtr Xyz::ptr
Examples:
smartptrtest.cpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13 SysToMath C++ Libraries Implementation File Documentation 493
Definition at line 184 of file smartptrtest.cpp.
Referenced by operator<().
The documentation for this struct was generated from the following file:
• smartptrtest.cpp
13 SysToMath C++ Libraries Implementation File Documentation
13.1 aids.hpp File Reference
13.1.1 Detailed Description
Central include file for SysToMath Aids C++ library.
Version:
1.09-r330
Date:
2007-11-24 00:15:01 (Tom)
Author:
Tom MichaelisSysToMathWittelsbacherstr. 7D-80469 Munich
Contact:
http://www.SysToMath.commailto:[email protected]
This C++ header file includes all other library object interface header files of the SysToMath Aids C++Library stmaids.
Definition in file aids.hpp.
#include <stm/debugaids.hpp>
#include <stm/filesysaids.hpp>
#include <stm/divaids.hpp>
#include <stm/loggeraids.hpp>
#include <stm/smartptraids.hpp>
#include <stm/gencrc.hpp>
Include dependency graph for aids.hpp:
aids.hpp
stm/debugaids.hpp
stm/filesysaids.hpp
stm/divaids.hpp
stm/loggeraids.hppstm/smartptraids.hppstm/gencrc.hpp
stm/impl/debugxaids.hpp
stddef.h stdio.hios iostreamsstream fstreamexception stringstm/system.hstm/impl/aidsconfig.hpp
stm/impl/filesysxaids.hpp
assert.hstring.h ctype.h
errno.h algorithmstdexcept utility
memoryiterator
locale
listmap
set
boost/static_assert.hpp
boost/type_traits.hpp
boost/algorithm/string.hpp boost/filesystem/operations.hpp boost/filesystem/path.hpp boost/filesystem/exception.hpp boost/function.hpp boost/bind.hpp
stm/match.h
stm/impl/divxaids.hpp
limits.h setjmp.h iomanipfunctional boost/range.hpp
stm/impl/loggerxaids.hppstm/impl/smartptrxaids.hpp
stm/impl/genxcrc.hpp
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.2 aidsconfig.hpp File Reference 494
This graph shows which files directly or indirectly include this file:
aids.hpp
sudoku.cpp
13.2 aidsconfig.hpp File Reference
13.2.1 Detailed Description
Management of library generation and of automatic library choice for the SysToMath Aids C++ librarystmaids.
Version:
1.04-r4
Date:
2006-11-18 09:01:25 (tom)
Author:
Tom MichaelisSysToMathWittelsbacherstr. 7D-80469 Munich
Contact:
http://www.SysToMath.commailto:[email protected]
This C++ header file defines the macro StmDllSpec necessary for correct library usage and the pragmacomment(lib) responsible for correct library choice.
Definition in file aidsconfig.hpp.
#include <stm/internal/config.h>
Include dependency graph for aidsconfig.hpp:
aidsconfig.hpp
stm/internal/config.h
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.3 binmsg.hpp File Reference 495
This graph shows which files directly or indirectly include this file:
aidsconfig.hpp
debugxaids.hpp
divxaids.hpp
filesysxaids.hpp loggerxaids.hpp smartptrxaids.hpp
genxcrc.hpp
debugaids.hpp
aids.hppsmartptrtest.cpp
debugaids.cpp
sudoku.cpp
divaids.hpp
xbinmsg.hpp
xdspmsg.hpp xlvdspacket.hpp xmcbspmsg.hppxprintkbinmsg.hpp
xctaids.hpp
xmsgtimestamp.hppdivaids.cpp divaidstest.cpp gencrctest.cpp
filesysaids.hpp
filesysaids.cpp filesystest.cpp
binmsg.hpp
toolaids.hpp
dspmsg.hpp
dspmsg.cpp
lvdspacket.hpp mcbspmsg.hppprintkbinmsg.hpp
ctaids.hpp
ctaids.cpp
loggeraids.hpp smartptraids.hppmsgtimestamp.hpp
gencrc.hpp
Defines
• #define STM_LIB_NAME "stmaids"
13.2.2 Define Documentation
13.2.2.1 #define STM_LIB_NAME "stmaids"
Definition at line 80 of file aidsconfig.hpp.
13.3 binmsg.hpp File Reference
13.3.1 Detailed Description
Declarations for the abstract binary message model.
Version:
1.04-r5
Date:
2006-11-30 12:41:45 (demx18a6)
Author:
Tom MichaelisSysToMathWittelsbacherstr. 7D-80469 Munich
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.3 binmsg.hpp File Reference 496
Contact:
http://www.SysToMath.commailto:[email protected]
This C++ header file contains declarations of class templates providing an abstract binary message model.They are implemented in the C++ inline file xbinmsg.hpp belonging to the SysToMath Tool Aids C++Library stmtoolaids.
Definition in file binmsg.hpp.
#include <stm/toolaids/impl/xbinmsg.hpp>
Include dependency graph for binmsg.hpp:
binmsg.hpp
stm/toolaids/impl/xbinmsg.hpp
stddef.hexception stdexcept set
stm/filesysaids.hpp
stm/divaids.hpp
stm/toolaids/msgtimestamp.hpp
stm/toolaids/impl/toolaidsconfig.hpp
stm/impl/filesysxaids.hpp
assert.h stdio.h string.h ctype.h
errno.h fstream sstream algorithm utility
memory iterator
string locale
list mapboost/static_assert.hpp
boost/type_traits.hpp
boost/algorithm/string.hpp boost/filesystem/operations.hpp boost/filesystem/path.hpp boost/filesystem/exception.hpp boost/function.hpp boost/bind.hpp
stm/system.h stm/match.h stm/impl/aidsconfig.hpp stm/debugaids.hpp
stm/impl/divxaids.hpp
limits.h setjmp.hiomanip functional boost/range.hpp boost/integer.hpp boost/integer_traits.hpp boost/integer/static_log2.hpp boost/utility/enable_if.hpp
stm/internal/config.h
stm/toolaids/impl/xmsgtimestamp.hpp
This graph shows which files directly or indirectly include this file:
binmsg.hpp
xdspmsg.hpp
toolaids.hpp
xlvdspacket.hpp xmcbspmsg.hpp xprintkbinmsg.hpp
dspmsg.hpp
dspmsg.cpp
lvdspacket.hpp mcbspmsg.hpp printkbinmsg.hpp
Namespaces
• namespace stm• namespace stm::tools
Classes
• class stm::tools::BaseMessageContext< DataT, InputRangeT, ContextT >
Base message context type which shall be a direct or indirect public base class of its template parameterContextT.
• class stm::tools::BaseMessage< ContextT >
Abstract base class of message types for scanning from its byte_iterator_range base class object.
• class stm::tools::BinMessageContext< DataT, InputRangeT, ContextT >
Binary message context type.
• class stm::tools::BinMessageContext< DataT, InputRangeT, ContextT >::GapCharacterization of the gap, i.e.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.4 ctaids.cpp File Reference 497
• class stm::tools::BinMessage< ContextT >
Binary message scanning from a stm::byte_iterator_range.
13.4 ctaids.cpp File Reference
13.4.1 Detailed Description
Implementation of ClearCase cleartool utilities.
Version:
1.04-r16
Date:
2007-01-19 15:07:08 (demx18a6)
Author:
Tom MichaelisSysToMathWittelsbacherstr. 7D-80469 Munich
Contact:
http://www.SysToMath.commailto:[email protected]
This C++ program file contains the definitions of the declarations contained in the C++ header filesctaids.hpp and xctaids.hpp belonging to the SysToMath Tool Aids C++ Library stmtoolaids.
Definition in file ctaids.cpp.
#include <string.h>
#include <time.h>
#include <stm/toolaids/ctaids.hpp>
#include <unistd.h>
Include dependency graph for ctaids.cpp:
ctaids.cpp
string.h
time.h stm/toolaids/ctaids.hpp unistd.h
stm/toolaids/impl/xctaids.hpp
stddef.h
vector
list
exception stdexcept
stm/filesysaids.hpp
stm/divaids.hpp
stm/loggeraids.hpp
stm/toolaids/impl/toolaidsconfig.hpp
stm/impl/filesysxaids.hpp
assert.h stdio.hctype.h
errno.hfstream sstream algorithmutility
memory iterator
string locale
map
set
boost/static_assert.hpp
boost/type_traits.hpp
boost/algorithm/string.hpp boost/filesystem/operations.hpp boost/filesystem/path.hpp boost/filesystem/exception.hpp boost/function.hpp boost/bind.hpp
stm/system.h stm/match.h stm/impl/aidsconfig.hppstm/debugaids.hpp
stm/impl/divxaids.hpp
limits.h setjmp.h iomanip functional boost/range.hpp
stm/internal/config.h
stm/impl/loggerxaids.hpp
Namespaces
• namespace stm• namespace stm::tools
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.5 ctaids.hpp File Reference 498
Defines
• #define PATHLEN 1024
13.4.2 Define Documentation
13.4.2.1 #define PATHLEN 1024
Definition at line 83 of file ctaids.cpp.
Referenced by stm::tools::Ct::getCurrentBranch(), stm::tools::Ct::getCurrentMasterReplica(),stm::tools::CtOperation::getCurrentReplica(), stm::tools::Ct::isCheckedOut(),stm::tools::CtOperation::isLabel(), and stm::tools::Ct::isVobElement().
13.5 ctaids.hpp File Reference
13.5.1 Detailed Description
Declarations for ClearCase cleartool aids.
Version:
1.04-r8
Date:
2006-12-08 23:20:47 (tom)
Author:
Tom MichaelisSysToMathWittelsbacherstr. 7D-80469 Munich
Contact:
http://www.SysToMath.commailto:[email protected]
This C++ header file contains declarations of classes for ClearCase cleartool aids. They are implementedin the C++ inline file xctaids.hpp and the C++ program file ctaids.cpp belonging to the SysToMath ToolAids C++ Library stmtoolaids.
Definition in file ctaids.hpp.
#include <stm/toolaids/impl/xctaids.hpp>
Include dependency graph for ctaids.hpp:
ctaids.hpp
stm/toolaids/impl/xctaids.hpp
stddef.h
vector
list
exception stdexcept
stm/filesysaids.hpp
stm/divaids.hpp
stm/loggeraids.hpp
stm/toolaids/impl/toolaidsconfig.hpp
stm/impl/filesysxaids.hpp
assert.h stdio.hstring.h ctype.h
errno.hfstream sstream algorithmutility
memory iterator
string locale
map
set
boost/static_assert.hpp
boost/type_traits.hpp
boost/algorithm/string.hpp boost/filesystem/operations.hpp boost/filesystem/path.hpp boost/filesystem/exception.hpp boost/function.hpp boost/bind.hpp
stm/system.h stm/match.h stm/impl/aidsconfig.hppstm/debugaids.hpp
stm/impl/divxaids.hpp
limits.h setjmp.h iomanip functional boost/range.hpp boost/integer.hppboost/integer_traits.hpp boost/integer/static_log2.hpp
stm/internal/config.h
stm/impl/loggerxaids.hpp
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.6 debugaids.cpp File Reference 499
This graph shows which files directly or indirectly include this file:
ctaids.hpp
toolaids.hpp ctaids.cpp
Namespaces
• namespace stm• namespace stm::tools
Classes
• class stm::tools::CtMain ClearCase cleartool aids class.
• struct stm::tools::Ct::ModeCt action modes.
• class stm::tools::Ct::ArgListClass to hold multiple arguments for a command.
• class stm::tools::CtOperationClearCase cleartool operation class.
• class stm::tools::CtExceptionsClearCase cleartool exceptions class.
13.6 debugaids.cpp File Reference
13.6.1 Detailed Description
Implementation of the debugging support facilities.
Version:
1.07-r46
Date:
2007-09-01 15:25:24 (Tom)
Author:
Tom MichaelisSysToMathWittelsbacherstr. 7D-80469 Munich
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.7 debugaids.hpp File Reference 500
Contact:
http://www.SysToMath.commailto:[email protected]
This C++ program file contains the definitions of the declarations contained in the C++ header files de-bugaids.hpp and debugxaids.hpp belonging to the SysToMath Aids C++ Library stmaids.
Definition in file debugaids.cpp.
#include <stm/debugaids.hpp>
#include <syslog.h>
Include dependency graph for debugaids.cpp:
debugaids.cpp
stm/debugaids.hpp syslog.h
stm/impl/debugxaids.hpp
stddef.h stdio.h ios iostream sstream fstream exception string stm/system.h stm/impl/aidsconfig.hpp
stm/internal/config.h
Namespaces
• namespace stm• namespace stm::local
Functions
• void stm::initSyslog (bool perror=false, const std::string &prog=std::string())Initialize syslog().
• void stm::syslog (const std::string &message, unsigned int flags=SyslogInfo)Output message to the system log according to flags.
Variables
• static bool stm::local::syslogPerror• static std::string stm::local::syslogProg
13.7 debugaids.hpp File Reference
13.7.1 Detailed Description
Definition of debugging support macros and functions.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.7 debugaids.hpp File Reference 501
Version:
1.09-r320
Date:
2007-11-15 18:15:15 (Tom)
Author:
Tom MichaelisSysToMathWittelsbacherstr. 7D-80469 Munich
Contact:
http://www.SysToMath.commailto:[email protected]
This C++ header file contains debugging support facilities. They are implemented in the C++ inline filedebugxaids.hpp and the C++ program file debugaids.cpp belonging to the SysToMath Aids C++ Librarystmaids.
Definition in file debugaids.hpp.
#include <stm/impl/debugxaids.hpp>
Include dependency graph for debugaids.hpp:
debugaids.hpp
stm/impl/debugxaids.hpp
stddef.h stdio.h ios iostream sstream fstream exception string stm/system.h stm/impl/aidsconfig.hpp
stm/internal/config.h
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.7 debugaids.hpp File Reference 502
This graph shows which files directly or indirectly include this file:
debugaids.hpp
aids.hpp
divxaids.hpp
filesysxaids.hpp
smartptrtest.cpp
debugaids.cpp
sudoku.cpp
divaids.hpp
xbinmsg.hpp
xdspmsg.hpp xlvdspacket.hppxmcbspmsg.hppxprintkbinmsg.hpp
xctaids.hpp
loggerxaids.hpp smartptrxaids.hppxmsgtimestamp.hpp divaids.cpp divaidstest.cpp gencrctest.cpp
filesysaids.hpp
filesysaids.cpp filesystest.cpp
binmsg.hpp
toolaids.hpp
dspmsg.hpp
dspmsg.cpp
lvdspacket.hppmcbspmsg.hppprintkbinmsg.hpp
ctaids.hpp
ctaids.cpp
loggeraids.hpp smartptraids.hppmsgtimestamp.hpp
Namespaces
• namespace stm
Defines
• #define StmDebugAidsErrmsg(msg) StmDebugAidsErrmsgImpl_ (msg)Return the error message msg as std::string.
• #define StmDebugAidsVerify(cond) StmDebugAidsVerifyImpl_ (cond)Verify that the boolean condition cond is true.
Enumerations
• enum stm::SyslogFlags {
stm::SyslogNoLog = 0x00000000,
stm::SyslogInfo = 0x00000001,
stm::LogInfo = 0x00000001,
stm::SyslogWarning = 0x00000002,
stm::LogWarning = 0x00000002,
stm::SyslogError = 0x00000003,
stm::LogError = 0x00000003,
stm::SyslogLevelMask = 0x00000003,
stm::LogLevelMask = 0x00000003,
stm::SyslogPerror = 0x00010000,
stm::LogPerror = 0x00010000,
stm::SyslogNoPerror = 0x00020000,
stm::LogNoPerror = 0x00020000 }
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.8 debugxaids.hpp File Reference 503
Syslog flags.
Functions
• void stm::initSyslog (bool perror=false, const std::string &prog=std::string())Initialize syslog().
• void stm::syslog (const std::string &message, unsigned int flags=SyslogInfo)Output message to the system log according to flags.
13.8 debugxaids.hpp File Reference
13.8.1 Detailed Description
Implementation of the debugging support facilities.
Version:
1.04-r33
Date:
2007-06-13 00:13:44 (Tom)
Author:
Tom MichaelisSysToMathWittelsbacherstr. 7D-80469 Munich
Contact:
http://www.SysToMath.commailto:[email protected]
This C++ inline file contains macros and declarations implementing the debugging support facilities. Theyare defined in the C++ header file debugaids.hpp belonging to the SysToMath Aids C++ Library stmaids.
Definition in file debugxaids.hpp.
#include <stddef.h>
#include <stdio.h>
#include <ios>
#include <iostream>
#include <sstream>
#include <fstream>
#include <exception>
#include <string>
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.8 debugxaids.hpp File Reference 504
#include <stm/system.h>
#include <stm/impl/aidsconfig.hpp>
Include dependency graph for debugxaids.hpp:
debugxaids.hpp
stddef.h stdio.h ios iostream sstream fstream exception string stm/system.h stm/impl/aidsconfig.hpp
stm/internal/config.h
This graph shows which files directly or indirectly include this file:
debugxaids.hpp
debugaids.hpp
aids.hpp
divxaids.hpp
filesysxaids.hpp
smartptrtest.cpp
debugaids.cpp
sudoku.cpp
divaids.hpp
xbinmsg.hpp
xdspmsg.hpp xlvdspacket.hppxmcbspmsg.hppxprintkbinmsg.hpp
xctaids.hpp
loggerxaids.hpp smartptrxaids.hppxmsgtimestamp.hpp divaids.cpp divaidstest.cpp gencrctest.cpp
filesysaids.hpp
filesysaids.cpp filesystest.cpp
binmsg.hpp
toolaids.hpp
dspmsg.hpp
dspmsg.cpp
lvdspacket.hppmcbspmsg.hppprintkbinmsg.hpp
ctaids.hpp
ctaids.cpp
loggeraids.hpp smartptraids.hppmsgtimestamp.hpp
Namespaces
• namespace stm• namespace stm::local
Classes
• class stm::local::errmsgImplementation class for macro StmDebugAidsErrmsg.
Defines
• #define StmDebugAidsErrmsgImpl_(msg) std::string (stm::local::errmsg (__FILE__, __LINE__)<< msg)
Implementation macro for StmDebugAidsErrmsg.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.9 divaids.cpp File Reference 505
• #define StmDebugAidsVerifyImpl_(cond)Implementation macro for StmDebugAidsVerify.
• #define STM_DEBUGXAIDS_HPP
13.8.2 Define Documentation
13.8.2.1 #define STM_DEBUGXAIDS_HPP
Definition at line 233 of file debugxaids.hpp.
13.9 divaids.cpp File Reference
13.9.1 Detailed Description
Implementation of general utilities.
Version:
1.04-r25
Date:
2007-04-06 13:32:39 (Tom)
Author:
Tom MichaelisSysToMathWittelsbacherstr. 7D-80469 Munich
Contact:
http://www.SysToMath.commailto:[email protected]
This C++ program file contains the definitions of the declarations contained in the C++ header files di-vaids.hpp and divxaids.hpp belonging to the SysToMath Aids C++ Library stmaids.
Definition in file divaids.cpp.
#include <stm/divaids.hpp>
Include dependency graph for divaids.cpp:
divaids.cpp
stm/divaids.hpp
stm/impl/divxaids.hpp
stddef.h
limits.h setjmp.h errno.h locale iomanip
fstream sstream
utility algorithm functional
exception
stdexcept
string
set boost/range.hpp boost/integer.hpp boost/integer_traits.hpp boost/integer/static_log2.hpp boost/utility/enable_if.hpp boost/type_traits.hpp boost/cstdint.hpp boost/mpl/bool.hpp stm/basetype.h
stm/system.h
stm/match.h
stm/impl/aidsconfig.hpp
stm/debugaids.hpp
stm/internal/config.h
stm/impl/debugxaids.hpp
stdio.h ios iostream
Namespaces
• namespace stm• namespace stm::rectrl
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.10 divaids.hpp File Reference 506
Functions
• StmReCtrl stm::rectrl::initialize ()stm::rectrl initialization.
13.10 divaids.hpp File Reference
13.10.1 Detailed Description
Declarations for diverse aids.
Version:
1.09-r320
Date:
2007-11-15 18:15:15 (Tom)
Author:
Tom MichaelisSysToMathWittelsbacherstr. 7D-80469 Munich
Contact:
http://www.SysToMath.commailto:[email protected]
This C++ header file contains declarations of functions, function templates, classes and class templatesfor diverse aids. They are implemented in the C++ inline file divxaids.hpp and the C++ program filedivaids.cpp belonging to the SysToMath Aids C++ Library stmaids.
Definition in file divaids.hpp.
#include <stm/impl/divxaids.hpp>
Include dependency graph for divaids.hpp:
divaids.hpp
stm/impl/divxaids.hpp
stddef.h
limits.h setjmp.h errno.h locale iomanip
fstream sstream
utility algorithm functional
exception
stdexcept
string
set boost/range.hpp boost/integer.hpp boost/integer_traits.hpp boost/integer/static_log2.hpp boost/utility/enable_if.hpp boost/type_traits.hpp boost/cstdint.hpp boost/mpl/bool.hpp stm/basetype.h
stm/system.h
stm/match.h
stm/impl/aidsconfig.hpp
stm/debugaids.hpp
stm/internal/config.h
stm/impl/debugxaids.hpp
stdio.h ios iostream
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.10 divaids.hpp File Reference 507
This graph shows which files directly or indirectly include this file:
divaids.hpp
aids.hpp
filesysxaids.hpp
xbinmsg.hpp
xdspmsg.hpp xlvdspacket.hppxmcbspmsg.hpp xprintkbinmsg.hpp
xctaids.hppsmartptrtest.cpp
loggerxaids.hppsmartptrxaids.hpp xmsgtimestamp.hpp divaids.cpp divaidstest.cpp gencrctest.cpp
sudoku.cpp
filesysaids.hpp
filesysaids.cppfilesystest.cpp
binmsg.hpp
toolaids.hpp
dspmsg.hpp
dspmsg.cpp
lvdspacket.hppmcbspmsg.hpp printkbinmsg.hpp
ctaids.hpp
ctaids.cpp
loggeraids.hppsmartptraids.hpp msgtimestamp.hpp
Namespaces
• namespace stm• namespace stm::buffer• namespace stm::rectrl
Classes
• class stm::byte_iterator_rangeByte iterator range class.
• class stm::integral_range< IntegralT, minVal, maxVal >
Class template representing a range of integral objects of type IntegralT constrained by the minimal andmaximal values minVal and maxVal.
• class stm::integral_set< IntegralRangeT, RangeSetT >
Class template integral_set is a set container representing a set of integral type objects constrained byminimal and maximal values wrapping a set of integral ranges.
• class stm::conditionCondition class.
• class stm::system_conditionSystem condition class.
• class stm::scoped_lockScoped lock class.
• class stm::system_scoped_lockSystem scoped lock class.
• struct stm::fmtflagsBase class of class template stm::hexfmt specifying format flags.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.10 divaids.hpp File Reference 508
• class stm::hexfmt< UnsignedT, DefaultFlags >
Class template allowing to format the unsigned number held as hexadecimal string.
• class stm::hexfmt< ElemT ∗, DefaultFlags >
Class template partial specialization allowing to format the pointer held as hexadecimal string.
• class stm::fixedfmt< FloatT >
Class template allowing to format the floating point number of type FloatT held on an output stream in fixedpoint notation using a specified precision.
• struct stm::space< CharT >
Unary predicate functor template determining if a CharT object is a white space as defined by the currentlocale.
• struct stm::nospace< CharT >
Unary predicate functor template determining if a CharT object is no white space as defined by the currentlocale.
Common unsigned and signed integer types
• typedef boost::uint8_t stm::byte• typedef boost::uint16_t stm::word• typedef boost::uint32_t stm::dword• typedef boost::uint64_t stm::qword• typedef boost::int8_t stm::int8• typedef boost::int16_t stm::int16• typedef boost::int32_t stm::int32• typedef boost::int64_t stm::int64• typedef boost::uint_t< sizeof(void ∗)∗CHAR_BIT >::leas stm::addrword )
Unsigned integer type capable of holding an address.
Endianness
• typedef boost::mpl::bool_< __BYTE_ORDER==__LITTLE_ENDIAN > stm::littleendianType being boost::mpl::true_ or boost::mpl::false_ depending on the host endianness.
• typedef boost::mpl::bool_< __BYTE_ORDER==__BIG_ENDIAN > stm::bigendianType being boost::mpl::true_ or boost::mpl::false_ depending on the host endianness.
• bool stm::hostlittleendian ()Returns true, if the host byte order is little-endian.
• bool stm::hostbigendian ()Returns true, if the host byte order is big-endian.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.10 divaids.hpp File Reference 509
Predefined StmReCtrl Objects
The predefined StmReCtrl objects stm::rectrl::identity and stm::rectrl::tolower provide control and errorhandling for regular expressions (see Abstract Data Type StmRe).
• StmReCtrl stm::rectrl::identity = initialize ()• StmReCtrl stm::rectrl::tolower = NULL
Control and error handling of non-case-sensitive regular expressions.
Defines
• #define StmRectrlTry(envbuf) StmRectrlTryImpl_ (envbuf)std::logic_error exception based error control for normal and non-case-sensitive regular expressions con-trolled by the predefined StmReCtrl Objects stm::rectrl::identity and stm::rectrl::tolower.
Functions
• template<typename T>
T & stm::buffer::get (byte ∗ptr)Returns a reference to the T object beginning at byte address ptr.
• template<typename T>
const T & stm::buffer::get (const byte ∗ptr)Returns a constant reference to the T object beginning at byte address ptr.
• template<typename T>
T & stm::buffer::fetch (T &obj, const byte ∗ptr)Creates obj T as being a copy of the T object beginning at byte address ptr and returns a reference to it.
• template<typename T>
T & stm::buffer::swap (T &obj, typename boost::enable_if< boost::is_pod< T >, const byte ∗>::type ptr)
Creates obj T as being a byte swapped copy of the T object beginning at byte address ptr and returns areference to it.
• template<typename T>
T & stm::buffer::endianConvertIf (T &obj, typename boost::enable_if< boost::is_pod< T >, constbyte ∗ >::type ptr, bool convert)
Creates obj T as being an endian converted or unconverted copy of the T object beginning at byte addressptr and returns a reference to it.
• template<typename T>
T & stm::buffer::endianConvertIf (T &obj, typename boost::enable_if< boost::is_pod< T >, constbyte ∗ >::type ptr, boost::mpl::false_)
Creates obj T as being an unconverted copy of the T object beginning at byte address ptr and returns areference to it.
• template<typename T>
T & stm::buffer::endianConvertIf (T &obj, typename boost::enable_if< boost::is_pod< T >, constbyte ∗ >::type ptr, boost::mpl::true_)
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.10 divaids.hpp File Reference 510
Creates obj T as being an endian converted copy of the T object beginning at byte address ptr and returns areference to it.
• template<typename T>
T & stm::buffer::networkByteOrderConvert (T &obj, typename boost::enable_if< boost::is_pod< T>, const byte ∗ >::type ptr)
Creates obj T as being an endian converted or unconverted copy of the T object beginning at byte addressptr and returns a reference to it.
• template<typename T>
T stm::buffer::swapped (typename boost::enable_if< boost::is_pod< T >, T >::type value)Returns an object of type T being a byte swapped copy of the T object value.
• template<typename T>
T stm::buffer::endianConvertedIf (typename boost::enable_if< boost::is_pod< T >, T >::typevalue, bool convert)
Returns the endian converted or unconverted value of an object of type T.
• template<typename T>
T stm::buffer::endianConvertedIf (typename boost::enable_if< boost::is_pod< T >, T >::typevalue, boost::mpl::false_)
Returns the unconverted value of an object of type T.
• template<typename T>
T stm::buffer::endianConvertedIf (typename boost::enable_if< boost::is_pod< T >, T >::typevalue, boost::mpl::true_)
Returns the endian converted value of an object of type T.
• template<typename T>
T stm::buffer::networkByteOrderConverted (typename boost::enable_if< boost::is_pod< T >, T>::type value)
Returns the endian converted or unconverted value of an object of type T.
• template<typename T>
size_t stm::buffer::pad (typename boost::enable_if< has_pow2size< T >, size_t >::type offset)Returns the least number aligned to T not being less than offset.
• template<typename T>
byte ∗ stm::buffer::put (byte ∗ptr, const T &value)Stores a T object at byte address ptr and returns the byte address of the T object following that T object.
• template<class IStreamT, typename IntegralT, IntegralT minVal, IntegralT maxVal>IStreamT & stm::operator>> (IStreamT &is, integral_range< IntegralT, minVal, maxVal >&range)
Extract the integral range formatted as single integral number or as expression "first-last" with integralnumbers first < last enclosed in parentheses from the input stream is and store it in the integral range.
• template<class OStreamT, typename IntegralT, IntegralT minVal, IntegralT maxVal>OStreamT & stm::operator<< (OStreamT &os, const integral_range< IntegralT, minVal, maxVal >&range)
Insert the integral range held by range into the output stream os formatted as single decimal numbers orexpression "first-last" with decimal numbers first < last.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.10 divaids.hpp File Reference 511
• template<class IStreamT, class IntegralRangeT, class RangeSetT>
IStreamT & stm::operator>> (IStreamT &is, integral_set< IntegralRangeT, RangeSetT > &set)Extract the integral ranges formatted as comma separated sequence of single integral numbers and/or ex-pressions "first-last" with integral numbers first < last enclosed in parentheses from the input stream is andstore them in the integral set.
• template<class OStreamT, class IntegralRangeT, class RangeSetT>
OStreamT & stm::operator<< (OStreamT &os, const integral_set< IntegralRangeT, RangeSetT >&set)
Insert the integral ranges held by the integral set into the output stream os formatted as comma separatedsequence of single decimal numbers and/or expressions "first-last" with decimal numbers first < last.
• template<class OStreamT, typename UnsignedT, dword DefaultFlags>OStreamT & stm::operator<< (OStreamT &os, const hexfmt< UnsignedT, DefaultFlags > &val)
Insert the value held by val into the output stream os as hexadecimal string formatted according to the flagsin effect.
• template<class OStreamT, typename ElemT, dword DefaultFlags>OStreamT & stm::operator<< (OStreamT &os, const hexfmt< ElemT ∗, DefaultFlags > &ptr)
Insert the value held by ptr into the output stream os as hexadecimal string according to the flags in effect.
• template<class OStreamT, typename FloatT>
OStreamT & stm::operator<< (OStreamT &os, const fixedfmt< FloatT > &val)Insert the value held by val into the output stream os in fixed point notation using the precision specified byval.
• template<typename ScalarT>
dword stm::nrOfSetBits (ScalarT value)Function template returning the number of set bits of a ScalarT value.
• template<class StringT>
StringT::size_type stm::clamped_offset (const StringT &str, typename StringT::size_type pos)Function template returning the offset pos of the string str clamped by its length.
• template<class StringT>
StringT::size_type stm::clamped_rest (const StringT &str, typename StringT::size_type pos)Function template returning the length of the string str beginning with offset pos clamped by the string’slength.
• template<class StringT>
StringT stm::trim_back (const StringT &str)Function template returning a copy of str.substr without trailing white space characters as defined by thecurrent locale.
• template<class StringT>
StringT stm::trim_back (const StringT &str, typename StringT::size_type pos)Function template returning a copy of str.substr (0, pos) without trailing white space characters as definedby the current locale.
• template<class StringT>
StringT::size_type stm::find_trim_back (const StringT &str)
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.10 divaids.hpp File Reference 512
Function template returning trim_back (str).size ().
• template<class StringT>
StringT::size_type stm::find_trim_back (const StringT &str, typename StringT::size_type pos)Function template returning trim_back (str, pos).size ().
• template<class StringT>
StringT::size_type stm::find_token_end (const StringT &str, typename StringT::size_type pos=0)Function template returning the least index npos >= pos such that npos == str.length () or str [npos] iswhite space.
• template<class StringT>
StringT stm::trim_back (const StringT &str, const StringT &sepchars)Function template returning a copy of str without trailing characters from sepchars.
• template<class StringT>
StringT stm::trim_back (const StringT &str, const StringT &sepchars, typename StringT::size_typepos)
Function template returning a copy of str.substr (0, pos) without trailing characters from sepchars.
• template<class StringT>
StringT::size_type stm::find_trim_back (const StringT &str, const StringT &sepchars)Function template returning trim_back (str, sepchars).size ().
• template<class StringT>
StringT::size_type stm::find_trim_back (const StringT &str, const StringT &sepchars, typenameStringT::size_type pos)
Function template returning trim_back (str, sepchars, pos).size ().
• template<class StringT>
StringT::size_type stm::find_token_end (const StringT &str, const StringT &sepchars, typenameStringT::size_type pos=0)
Function template returning the least index npos >= pos with npos == str.length () or str [npos] is one ofthe characters of sepchars.
• template<class StringT>
StringT stm::trim_front (const StringT &str, typename StringT::size_type pos=0)Function template returning a copy of str.substr (pos) without leading white space characters as defined bythe current locale.
• template<class StringT>
StringT::size_type stm::find_trim_front (const StringT &str, typename StringT::size_type pos=0)Function template returning str.size () - trim_front (str, pos).size ().
• template<class StringT>
StringT stm::trim_front (const StringT &str, const StringT &sepchars, typename StringT::size_typepos=0)
Function template returning a copy of str.substr (pos) without leading characters from sepchars.
• template<class StringT>
StringT::size_type stm::find_trim_front (const StringT &str, const StringT &sepchars, typenameStringT::size_type pos=0)
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.11 divaidstest.cpp File Reference 513
Function template returning str.size () - trim_front (str, sepchars, pos).size ().
• template<class StringT>
StringT stm::trim (const StringT &str)Function template returning a copy of str without leading and trailing white space characters as defined bythe current locale.
• template<class StringT>
StringT stm::trim (const StringT &str, const StringT &sepchars)Function template returning a copy of str without leading and trailing characters from sepchars.
13.11 divaidstest.cpp File Reference
13.11.1 Detailed Description
Implementation of a console program demostrating the usage and testing the implementation of the Sys-ToMath Aids C++ Library module DivAids.
Version:
1.10-r347
Date:
2008-01-03 19:42:43 (Tom)
Author:
Tom MichaelisSysToMathWittelsbacherstr. 7D-80469 Munich
Contact:
http://www.SysToMath.commailto:[email protected]
This C++ program file contains the implementation of the console program divaidstest.
Definition in file divaidstest.cpp.
#include <iostream>
#include <stm/divaids.hpp>
Include dependency graph for divaidstest.cpp:
divaidstest.cpp
iostream
stm/divaids.hpp
stm/impl/divxaids.hpp
stddef.h
limits.hsetjmp.h errno.h locale iomanip
fstreamsstream
utility algorithm functional
exception
stdexcept
string
set boost/range.hpp boost/integer.hpp boost/integer_traits.hpp boost/integer/static_log2.hpp boost/utility/enable_if.hpp boost/type_traits.hpp boost/cstdint.hpp boost/mpl/bool.hpp stm/basetype.h
stm/system.h
stm/match.h
stm/impl/aidsconfig.hpp
stm/debugaids.hpp
stm/internal/config.h
stm/impl/debugxaids.hpp
stdio.h ios
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.12 divxaids.hpp File Reference 514
Functions
• int main (int argc, char ∗argv[ ])
Variables
• const char ∗ Copyright = "(C) 2006-2008 Tom Michaelis, SysToMath"• const char ∗ Version = "1.10-r347"
13.12 divxaids.hpp File Reference
13.12.1 Detailed Description
Implementation of diverse aids.
Version:
1.08-r53
Date:
2007-11-05 11:14:19 (Tom)
Author:
Tom MichaelisSysToMathWittelsbacherstr. 7D-80469 Munich
Contact:
http://www.SysToMath.commailto:[email protected]
This C++ inline file contains inline definitions and declarations implementing diverse aids. They are de-clared in the C++ header file divaids.hpp belonging to the SysToMath Aids C++ Library stmaids.
Definition in file divxaids.hpp.
#include <stddef.h>
#include <limits.h>
#include <setjmp.h>
#include <errno.h>
#include <locale>
#include <iomanip>
#include <fstream>
#include <sstream>
#include <utility>
#include <algorithm>
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.12 divxaids.hpp File Reference 515
#include <functional>
#include <exception>
#include <stdexcept>
#include <string>
#include <set>
#include <boost/range.hpp>
#include <boost/integer.hpp>
#include <boost/integer_traits.hpp>
#include <boost/integer/static_log2.hpp>
#include <boost/utility/enable_if.hpp>
#include <boost/type_traits.hpp>
#include <boost/cstdint.hpp>
#include <boost/mpl/bool.hpp>
#include <stm/basetype.h>
#include <stm/system.h>
#include <stm/match.h>
#include <stm/impl/aidsconfig.hpp>
#include <stm/debugaids.hpp>
Include dependency graph for divxaids.hpp:
divxaids.hpp
stddef.h
limits.h setjmp.h errno.h locale iomanip
fstream sstream
utility algorithm functional
exception
stdexcept
string
set boost/range.hpp boost/integer.hpp boost/integer_traits.hpp boost/integer/static_log2.hpp boost/utility/enable_if.hpp boost/type_traits.hpp boost/cstdint.hpp boost/mpl/bool.hpp stm/basetype.h
stm/system.h
stm/match.h
stm/impl/aidsconfig.hpp
stm/debugaids.hpp
stm/internal/config.h
stm/impl/debugxaids.hpp
stdio.h ios iostream
This graph shows which files directly or indirectly include this file:
divxaids.hpp
divaids.hpp
aids.hpp
filesysxaids.hpp
xbinmsg.hpp
xdspmsg.hpp xlvdspacket.hppxmcbspmsg.hpp xprintkbinmsg.hpp
xctaids.hppsmartptrtest.cpp
loggerxaids.hppsmartptrxaids.hpp xmsgtimestamp.hpp divaids.cpp divaidstest.cpp gencrctest.cpp
sudoku.cpp
filesysaids.hpp
filesysaids.cppfilesystest.cpp
binmsg.hpp
toolaids.hpp
dspmsg.hpp
dspmsg.cpp
lvdspacket.hppmcbspmsg.hpp printkbinmsg.hpp
ctaids.hpp
ctaids.cpp
loggeraids.hppsmartptraids.hpp msgtimestamp.hpp
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.12 divxaids.hpp File Reference 516
Namespaces
• namespace stm• namespace stm::rectrl• namespace stm::local• namespace stm::buffer
Classes
• class stm::local::xIntegral_range< IntegralT, minVal, maxVal >
stm::integral_range implementation base class template.
• class stm::local::xIntegral_set< IntegralRangeT, RangeSetT >
stm::integral_set implementation base class template.
• class stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::integral_iterator• struct stm::local::xIntegral_set< IntegralRangeT, RangeSetT >::Env• class stm::local::xcondition
stm::condition implementation base class.
• class stm::local::xsystem_conditionstm::system_condition implementation base class.
• class stm::local::xscoped_lockstm::scoped_lock implementation base class.
• class stm::local::xsystem_scoped_lockstm::system_scoped_lock implementation base class.
• class stm::local::xhexfmt< UnsignedT >
stm::hexfmt implementation base class template.
• class stm::local::xfixedfmt< FloatT >
stm::fixedfmt implementation base class template.
• struct stm::has_pow2size< T >
Endianness
• bool stm::hostlittleendian ()Returns true, if the host byte order is little-endian.
• bool stm::hostbigendian ()Returns true, if the host byte order is big-endian.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.12 divxaids.hpp File Reference 517
Defines
• #define StmRectrlTryImpl_(envbuf)Implementation macro for StmRectrlTry.
• #define STM_DIVXAIDS_HPP
Functions
• StmReCtrl stm::rectrl::initialize ()stm::rectrl initialization.
• template<typename T>
T & stm::buffer::get (byte ∗ptr)Returns a reference to the T object beginning at byte address ptr.
• template<typename T>
const T & stm::buffer::get (const byte ∗ptr)Returns a constant reference to the T object beginning at byte address ptr.
• template<typename T>
T & stm::buffer::fetch (T &obj, const byte ∗ptr)Creates obj T as being a copy of the T object beginning at byte address ptr and returns a reference to it.
• template<typename T>
T & stm::buffer::swap (T &obj, typename boost::enable_if< boost::is_pod< T >, const byte ∗>::type ptr)
Creates obj T as being a byte swapped copy of the T object beginning at byte address ptr and returns areference to it.
• template<typename T>
T & stm::buffer::endianConvertIf (T &obj, typename boost::enable_if< boost::is_pod< T >, constbyte ∗ >::type ptr, bool convert)
Creates obj T as being an endian converted or unconverted copy of the T object beginning at byte addressptr and returns a reference to it.
• template<typename T>
T & stm::buffer::endianConvertIf (T &obj, typename boost::enable_if< boost::is_pod< T >, constbyte ∗ >::type ptr, boost::mpl::false_)
Creates obj T as being an unconverted copy of the T object beginning at byte address ptr and returns areference to it.
• template<typename T>
T & stm::buffer::endianConvertIf (T &obj, typename boost::enable_if< boost::is_pod< T >, constbyte ∗ >::type ptr, boost::mpl::true_)
Creates obj T as being an endian converted copy of the T object beginning at byte address ptr and returns areference to it.
• template<typename T>
T & stm::buffer::networkByteOrderConvert (T &obj, typename boost::enable_if< boost::is_pod< T>, const byte ∗ >::type ptr)
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.12 divxaids.hpp File Reference 518
Creates obj T as being an endian converted or unconverted copy of the T object beginning at byte addressptr and returns a reference to it.
• template<typename T>
T stm::buffer::swapped (typename boost::enable_if< boost::is_pod< T >, T >::type value)Returns an object of type T being a byte swapped copy of the T object value.
• template<typename T>
T stm::buffer::endianConvertedIf (typename boost::enable_if< boost::is_pod< T >, T >::typevalue, bool convert)
Returns the endian converted or unconverted value of an object of type T.
• template<typename T>
T stm::buffer::endianConvertedIf (typename boost::enable_if< boost::is_pod< T >, T >::typevalue, boost::mpl::false_)
Returns the unconverted value of an object of type T.
• template<typename T>
T stm::buffer::endianConvertedIf (typename boost::enable_if< boost::is_pod< T >, T >::typevalue, boost::mpl::true_)
Returns the endian converted value of an object of type T.
• template<typename T>
T stm::buffer::networkByteOrderConverted (typename boost::enable_if< boost::is_pod< T >, T>::type value)
Returns the endian converted or unconverted value of an object of type T.
• template<typename T>
size_t stm::buffer::pad (typename boost::enable_if< has_pow2size< T >, size_t >::type offset)Returns the least number aligned to T not being less than offset.
• template<typename T>
byte ∗ stm::buffer::put (byte ∗ptr, const T &value)Stores a T object at byte address ptr and returns the byte address of the T object following that T object.
• template<class IStreamT, typename IntegralT, IntegralT minVal, IntegralT maxVal>IStreamT & stm::operator>> (IStreamT &is, integral_range< IntegralT, minVal, maxVal >&range)
Extract the integral range formatted as single integral number or as expression "first-last" with integralnumbers first < last enclosed in parentheses from the input stream is and store it in the integral range.
• template<class OStreamT, typename IntegralT, IntegralT minVal, IntegralT maxVal>OStreamT & stm::operator<< (OStreamT &os, const integral_range< IntegralT, minVal, maxVal >&range)
Insert the integral range held by range into the output stream os formatted as single decimal numbers orexpression "first-last" with decimal numbers first < last.
• template<class IStreamT, class IntegralRangeT, class RangeSetT>
IStreamT & stm::operator>> (IStreamT &is, integral_set< IntegralRangeT, RangeSetT > &set)Extract the integral ranges formatted as comma separated sequence of single integral numbers and/or ex-pressions "first-last" with integral numbers first < last enclosed in parentheses from the input stream is andstore them in the integral set.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.12 divxaids.hpp File Reference 519
• template<class OStreamT, class IntegralRangeT, class RangeSetT>
OStreamT & stm::operator<< (OStreamT &os, const integral_set< IntegralRangeT, RangeSetT >&set)
Insert the integral ranges held by the integral set into the output stream os formatted as comma separatedsequence of single decimal numbers and/or expressions "first-last" with decimal numbers first < last.
• template<class OStreamT, typename UnsignedT, dword DefaultFlags>OStreamT & stm::operator<< (OStreamT &os, const hexfmt< UnsignedT, DefaultFlags > &val)
Insert the value held by val into the output stream os as hexadecimal string formatted according to the flagsin effect.
• template<class OStreamT, typename ElemT, dword DefaultFlags>OStreamT & stm::operator<< (OStreamT &os, const hexfmt< ElemT ∗, DefaultFlags > &ptr)
Insert the value held by ptr into the output stream os as hexadecimal string according to the flags in effect.
• template<class OStreamT, typename FloatT>
OStreamT & stm::operator<< (OStreamT &os, const fixedfmt< FloatT > &val)Insert the value held by val into the output stream os in fixed point notation using the precision specified byval.
• template<typename ScalarT>
dword stm::nrOfSetBits (ScalarT value)Function template returning the number of set bits of a ScalarT value.
• template<class StringT>
StringT::size_type stm::clamped_offset (const StringT &str, typename StringT::size_type pos)Function template returning the offset pos of the string str clamped by its length.
• template<class StringT>
StringT::size_type stm::clamped_rest (const StringT &str, typename StringT::size_type pos)Function template returning the length of the string str beginning with offset pos clamped by the string’slength.
• template<class StringT>
StringT stm::trim_back (const StringT &str)Function template returning a copy of str.substr without trailing white space characters as defined by thecurrent locale.
• template<class StringT>
StringT stm::trim_back (const StringT &str, typename StringT::size_type pos)Function template returning a copy of str.substr (0, pos) without trailing white space characters as definedby the current locale.
• template<class StringT>
StringT::size_type stm::find_trim_back (const StringT &str)Function template returning trim_back (str).size ().
• template<class StringT>
StringT::size_type stm::find_trim_back (const StringT &str, typename StringT::size_type pos)Function template returning trim_back (str, pos).size ().
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.12 divxaids.hpp File Reference 520
• template<class StringT>
StringT::size_type stm::find_token_end (const StringT &str, typename StringT::size_type pos=0)Function template returning the least index npos >= pos such that npos == str.length () or str [npos] iswhite space.
• template<class StringT>
StringT stm::trim_back (const StringT &str, const StringT &sepchars)Function template returning a copy of str without trailing characters from sepchars.
• template<class StringT>
StringT stm::trim_back (const StringT &str, const StringT &sepchars, typename StringT::size_typepos)
Function template returning a copy of str.substr (0, pos) without trailing characters from sepchars.
• template<class StringT>
StringT::size_type stm::find_trim_back (const StringT &str, const StringT &sepchars)Function template returning trim_back (str, sepchars).size ().
• template<class StringT>
StringT::size_type stm::find_trim_back (const StringT &str, const StringT &sepchars, typenameStringT::size_type pos)
Function template returning trim_back (str, sepchars, pos).size ().
• template<class StringT>
StringT::size_type stm::find_token_end (const StringT &str, const StringT &sepchars, typenameStringT::size_type pos=0)
Function template returning the least index npos >= pos with npos == str.length () or str [npos] is one ofthe characters of sepchars.
• template<class StringT>
StringT stm::trim_front (const StringT &str, typename StringT::size_type pos=0)Function template returning a copy of str.substr (pos) without leading white space characters as defined bythe current locale.
• template<class StringT>
StringT::size_type stm::find_trim_front (const StringT &str, typename StringT::size_type pos=0)Function template returning str.size () - trim_front (str, pos).size ().
• template<class StringT>
StringT stm::trim_front (const StringT &str, const StringT &sepchars, typename StringT::size_typepos=0)
Function template returning a copy of str.substr (pos) without leading characters from sepchars.
• template<class StringT>
StringT::size_type stm::find_trim_front (const StringT &str, const StringT &sepchars, typenameStringT::size_type pos=0)
Function template returning str.size () - trim_front (str, sepchars, pos).size ().
• template<class StringT>
StringT stm::trim (const StringT &str)Function template returning a copy of str without leading and trailing white space characters as defined bythe current locale.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.13 dspmsg.cpp File Reference 521
• template<class StringT>
StringT stm::trim (const StringT &str, const StringT &sepchars)Function template returning a copy of str without leading and trailing characters from sepchars.
13.12.2 Define Documentation
13.12.2.1 #define STM_DIVXAIDS_HPP
Definition at line 3624 of file divxaids.hpp.
13.13 dspmsg.cpp File Reference
13.13.1 Detailed Description
Implementation of the DSP message model.
Version:
1.04-r4
Date:
2006-11-18 09:01:33 (tom)
Author:
Tom MichaelisSysToMathWittelsbacherstr. 7D-80469 Munich
Contact:
http://www.SysToMath.commailto:[email protected]
This C++ program file contains the definitions of the declarations contained in the C++ header filesdspmsg.hpp and xdspmsg.hpp belonging to the SysToMath Tool Aids C++ Library stmtoolaids.
Definition in file dspmsg.cpp.
#include <stm/toolaids/dspmsg.hpp>
Include dependency graph for dspmsg.cpp:
dspmsg.cpp
stm/toolaids/dspmsg.hpp
stm/toolaids/impl/xdspmsg.hpp
stddef.h exception
stm/filesysaids.hpp
stm/divaids.hpp
stm/toolaids/binmsg.hpp
stm/toolaids/impl/toolaidsconfig.hpp
stm/impl/filesysxaids.hpp
assert.h stdio.h string.h ctype.h
errno.hfstream sstream algorithmstdexcept utility
memory iterator
string locale
list map
set
boost/static_assert.hpp
boost/type_traits.hpp
boost/algorithm/string.hpp boost/filesystem/operations.hpp boost/filesystem/path.hpp boost/filesystem/exception.hpp boost/function.hpp boost/bind.hpp
stm/system.h stm/match.h stm/impl/aidsconfig.hppstm/debugaids.hpp
stm/impl/divxaids.hpp
limits.h setjmp.h iomanip functional boost/range.hpp boost/integer.hpp boost/integer_traits.hpp boost/integer/static_log2.hpp
stm/internal/config.h
stm/toolaids/impl/xbinmsg.hpp
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.14 dspmsg.hpp File Reference 522
Namespaces
• namespace stm• namespace stm::tools• namespace stm::tools::local
13.14 dspmsg.hpp File Reference
13.14.1 Detailed Description
Declarations for the DSP message model.
Version:
1.04-r5
Date:
2006-11-30 12:41:45 (demx18a6)
Author:
Tom MichaelisSysToMathWittelsbacherstr. 7D-80469 Munich
Contact:
http://www.SysToMath.commailto:[email protected]
This C++ header file contains declarations of a class template providing a DSP message model. They areimplemented in the C++ inline file xdspmsg.hpp and in the C++ program file dspmsg.cpp belonging to theSysToMath Tool Aids C++ Library stmtoolaids.
Definition in file dspmsg.hpp.
#include <stm/toolaids/impl/xdspmsg.hpp>
Include dependency graph for dspmsg.hpp:
dspmsg.hpp
stm/toolaids/impl/xdspmsg.hpp
stddef.h exception
stm/filesysaids.hpp
stm/divaids.hpp
stm/toolaids/binmsg.hpp
stm/toolaids/impl/toolaidsconfig.hpp
stm/impl/filesysxaids.hpp
assert.h stdio.h string.h ctype.h
errno.h fstream sstream algorithmstdexcept utility
memory iterator
string locale
list map
set
boost/static_assert.hpp
boost/type_traits.hpp
boost/algorithm/string.hpp boost/filesystem/operations.hpp boost/filesystem/path.hpp boost/filesystem/exception.hpp boost/function.hpp boost/bind.hpp
stm/system.h stm/match.h stm/impl/aidsconfig.hppstm/debugaids.hpp
stm/impl/divxaids.hpp
limits.h setjmp.h iomanip functional boost/range.hpp boost/integer.hpp boost/integer_traits.hpp boost/integer/static_log2.hpp boost/utility/enable_if.hpp
stm/internal/config.h
stm/toolaids/impl/xbinmsg.hpp
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.15 filesysaids.cpp File Reference 523
This graph shows which files directly or indirectly include this file:
dspmsg.hpp
toolaids.hpp dspmsg.cpp
Namespaces
• namespace stm• namespace stm::tools
Classes
• class stm::tools::DspMessage< ContextT >
DSP message contained in a binary message.
• class stm::tools::DspMessage< ContextT >::TraceHeaderType representing a trace header.
13.15 filesysaids.cpp File Reference
13.15.1 Detailed Description
Implementation of file system related utilities.
Version:
1.04-r7
Date:
2006-12-07 19:12:27 (demx18a6)
Author:
Tom MichaelisSysToMathWittelsbacherstr. 7D-80469 Munich
Contact:
http://www.SysToMath.commailto:[email protected]
This C++ program file contains the definitions of the declarations contained in the C++ header files filesy-saids.hpp and filesysxaids.hpp belonging to the SysToMath Aids C++ Library stmaids.
Definition in file filesysaids.cpp.
#include <stm/filesysaids.hpp>
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.16 filesysaids.hpp File Reference 524
Include dependency graph for filesysaids.cpp:
filesysaids.cpp
stm/filesysaids.hpp
stm/impl/filesysxaids.hpp
assert.h
stddef.hstdio.h
string.h ctype.h
errno.h
fstream sstream
algorithm
exception
stdexcept utility
memory iterator
string
locale
list map
set
boost/static_assert.hpp
boost/type_traits.hpp
boost/algorithm/string.hpp boost/filesystem/operations.hpp boost/filesystem/path.hpp boost/filesystem/exception.hpp boost/function.hpp boost/bind.hpp
stm/system.h
stm/match.h
stm/divaids.hpp
stm/impl/aidsconfig.hpp
stm/debugaids.hpp
stm/impl/divxaids.hpp
limits.h setjmp.h iomanip functionalboost/range.hpp boost/integer.hpp boost/integer_traits.hpp boost/integer/static_log2.hpp boost/utility/enable_if.hpp boost/cstdint.hpp boost/mpl/bool.hpp stm/basetype.h
stm/internal/config.h
stm/impl/debugxaids.hpp
Namespaces
• namespace stm• namespace stm::local
Defines
• #define PsepChars "/"• #define PsepRe "/"• #define Esc "\\"• #define EscRe "\\"
Functions
• int stm::makedir (const boost::filesystem::path &path)Make directory path.
13.16 filesysaids.hpp File Reference
13.16.1 Detailed Description
Declarations for file system aids.
Version:
1.09-r320
Date:
2007-11-15 18:15:16 (Tom)
Author:
Tom MichaelisSysToMathWittelsbacherstr. 7D-80469 Munich
Contact:
http://www.SysToMath.commailto:[email protected]
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.16 filesysaids.hpp File Reference 525
This C++ header file contains declarations of functions, function templates, classes and class templates forfile system aids. They are implemented in the C++ inline file filesysxaids.hpp and the C++ program filefilesysaids.cpp belonging to the SysToMath Aids C++ Library stmaids.
Definition in file filesysaids.hpp.
#include <stm/impl/filesysxaids.hpp>
Include dependency graph for filesysaids.hpp:
filesysaids.hpp
stm/impl/filesysxaids.hpp
assert.h
stddef.hstdio.h
string.h ctype.h
errno.h
fstream sstream
algorithm
exception
stdexcept utility
memory iterator
string
locale
list map
set
boost/static_assert.hpp
boost/type_traits.hpp
boost/algorithm/string.hpp boost/filesystem/operations.hpp boost/filesystem/path.hpp boost/filesystem/exception.hpp boost/function.hpp boost/bind.hpp
stm/system.h
stm/match.h
stm/divaids.hpp
stm/impl/aidsconfig.hpp
stm/debugaids.hpp
stm/impl/divxaids.hpp
limits.h setjmp.h iomanip functionalboost/range.hpp boost/integer.hpp boost/integer_traits.hpp boost/integer/static_log2.hpp boost/utility/enable_if.hpp boost/cstdint.hpp boost/mpl/bool.hpp stm/basetype.h
stm/internal/config.h
stm/impl/debugxaids.hpp
ios
This graph shows which files directly or indirectly include this file:
filesysaids.hpp
aids.hpp xbinmsg.hpp
xdspmsg.hpp xlvdspacket.hppxmcbspmsg.hpp xprintkbinmsg.hpp
xctaids.hpp filesysaids.cpp filesystest.cpp smartptrtest.cpp
sudoku.cpp binmsg.hpp
toolaids.hpp
dspmsg.hpp
dspmsg.cpp
lvdspacket.hppmcbspmsg.hpp printkbinmsg.hpp
ctaids.hpp
ctaids.cpp
Namespaces
• namespace stm
Classes
• class stm::pstringClass to represent a std::string with a case unsensitive order relation on Windows systems else with a casesensitive order relation used for file system element naming.
• class stm::numpstringClass to represent a file system name with a case unsensitive order relation on Windows systems else with acase case sensitive order relation collating numerically correct.
• class stm::path< NameT >
Class template path refining boost::filesystem::path.
• class stm::path< NameT >::recursionenv
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.16 filesysaids.hpp File Reference 526
Type of or public base class of the global recursion environment used by the methods recurse() and tra-verse().
• class stm::path< NameT >::dirdata< DataT, EnvT >
Abstract base class template of directory data created for each directory the recusion handles.
• class stm::readablefile< NameT >
Class template representing a file named by its NameT subobject which is guaranteed to be accessible forreading and holding its size at the time of definition.
• class stm::inputrange< FileRangeT, bufSize >
Class template representing a range of input files.
• class stm::inputseq< InputFileT, bufSize >
• class stm::inputrange_iterator< BufRangeT, ContextT >
Input iterator class template reading successive byte ranges from the input range of the ContextT object forwhich it was constructed.
• class stm::filespecClass to specify file system element names.
• class stm::filespeclistList class of filespec objects.
• class stm::filefind< PathContainerT >
Container class representing existing file system elements defined by a file spec using pattern matchingbased file name expansion.
Typedefs
• typedef numpstring stm::numpath• typedef readablefile< numpstring > stm::sizedfile
For cenvenience sizedfile is a synonym for readablefile<numpstring>.
Functions
• int stm::makedir (const boost::filesystem::path &path)Make directory path.
• int stm::getkey ()Read one character from the console and return it as int on success, else return -1 and set the variable errnoaccording to the error.
• bool stm::isWin32Executable (const std::string &path)The function isWin32Executable returns true, if path (which may not exist) designates a WIN32 executablefile (case unsensitively the extension ’.exe’, ’.dll’, ’.msi’ or ’.com’).
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.17 filesystest.cpp File Reference 527
• template<class SequenceT>
SequenceT & stm::brace_expand (SequenceT &result, const std::string &str, bool allowCom-maSep=false)
The function template brace_expand appends the maybe brace expanded words of str to the sequence resultand returns result.
• bool stm::designateSame (const pstring &p1, const pstring &p2)Return true, if the pstring object p1 designates the same file system element than that p2 designates.
• bool stm::operator< (const pstring &p1, const pstring &p2)Order relation for pstring objects.
• bool stm::operator== (const pstring &p1, const pstring &p2)Equality relation for pstring objects.
• bool stm::operator< (const numpstring &p1, const numpstring &p2)Order relation for numpstring objects.
• bool stm::operator== (const numpstring &p1, const numpstring &p2)Equality relation for numpstring objects.
• template<class NameT>
void stm::swap (readablefile< NameT > &rf1, readablefile< NameT > &rf2)Swaps the readablefile objects rf1 and rf2.
• template<class BufRangeT, class ContextT>
bool stm::operator== (const inputrange_iterator< BufRangeT, ContextT > &x, const inputrange_-iterator< BufRangeT, ContextT > &y)
Equality operator.
• template<class BufRangeT, class ContextT>
bool stm::operator!= (const inputrange_iterator< BufRangeT, ContextT > &x, const inputrange_-iterator< BufRangeT, ContextT > &y)
Inequality operator.
13.17 filesystest.cpp File Reference
13.17.1 Detailed Description
Implementation of a console program demostrating the usage and testing the implementation of the Sys-ToMath Aids C++ Library module FilesysAids.
Version:
1.10-r347
Date:
2008-01-03 19:42:43 (Tom)
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.18 filesysxaids.hpp File Reference 528
Author:
Tom MichaelisSysToMathWittelsbacherstr. 7D-80469 Munich
Contact:
http://www.SysToMath.commailto:[email protected]
This C++ program file contains the implementation of the console program filesystest.
Definition in file filesystest.cpp.
#include <string>
#include <iostream>
#include <exception>
#include <stdexcept>
#include <stm/filesysaids.hpp>
#include <stm/loggeraids.hpp>
#include <stm/getopts.h>
Include dependency graph for filesystest.cpp:
filesystest.cpp
string iostreamexception
stdexcept
stm/filesysaids.hpp stm/loggeraids.hpp stm/getopts.h
stm/impl/filesysxaids.hpp
assert.h
stddef.hstdio.h
string.h ctype.h
errno.h
fstream sstream
algorithmutility
memory iterator
locale
list map
set
boost/static_assert.hpp
boost/type_traits.hpp
boost/algorithm/string.hpp boost/filesystem/operations.hpp boost/filesystem/path.hpp boost/filesystem/exception.hpp boost/function.hppboost/bind.hpp
stm/system.h
stm/match.h
stm/divaids.hpp
stm/impl/aidsconfig.hpp
stm/debugaids.hpp
stm/impl/divxaids.hpp
limits.h setjmp.h iomanip functional boost/range.hpp
stm/internal/config.h
stm/impl/debugxaids.hpp
stm/impl/loggerxaids.hpp
boost/mpl/if.hpp boost/mpl/int.hpp boost/mpl/void.hpp
Functions
• int main (int argc, char ∗argv[ ])
Variables
• const char ∗ Copyright = "(C) 2006-2008 Tom Michaelis, SysToMath"• const char ∗ Version = "1.10-r347"• static const char ∗ man [ ]
Man page.
13.18 filesysxaids.hpp File Reference
13.18.1 Detailed Description
Implementation of file system aids.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.18 filesysxaids.hpp File Reference 529
Version:
1.08-r53
Date:
2007-11-05 11:14:20 (Tom)
Author:
Tom MichaelisSysToMathWittelsbacherstr. 7D-80469 Munich
Contact:
http://www.SysToMath.commailto:[email protected]
This C++ inline file contains inline definitions and declarations implementing file system aids. They aredeclared in the C++ header file filesysaids.hpp belonging to the SysToMath Aids C++ Library stmaids.
Definition in file filesysxaids.hpp.
#include <assert.h>
#include <stddef.h>
#include <stdio.h>
#include <string.h>
#include <ctype.h>
#include <errno.h>
#include <fstream>
#include <sstream>
#include <algorithm>
#include <exception>
#include <stdexcept>
#include <utility>
#include <memory>
#include <iterator>
#include <string>
#include <locale>
#include <list>
#include <map>
#include <set>
#include <boost/static_assert.hpp>
#include <boost/type_traits.hpp>
#include <boost/algorithm/string.hpp>
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.18 filesysxaids.hpp File Reference 530
#include <boost/filesystem/operations.hpp>
#include <boost/filesystem/path.hpp>
#include <boost/filesystem/exception.hpp>
#include <boost/function.hpp>
#include <boost/bind.hpp>
#include <stm/system.h>
#include <stm/match.h>
#include <stm/divaids.hpp>
#include <stm/impl/aidsconfig.hpp>
#include <stm/debugaids.hpp>
Include dependency graph for filesysxaids.hpp:
filesysxaids.hpp
assert.h
stddef.hstdio.h
string.h ctype.h
errno.h
fstream sstream
algorithm
exception
stdexcept utility
memory iterator
string
locale
list map
set
boost/static_assert.hpp
boost/type_traits.hpp
boost/algorithm/string.hpp boost/filesystem/operations.hpp boost/filesystem/path.hpp boost/filesystem/exception.hpp boost/function.hpp boost/bind.hpp
stm/system.h
stm/match.h
stm/divaids.hpp
stm/impl/aidsconfig.hpp
stm/debugaids.hpp
stm/impl/divxaids.hpp
limits.h setjmp.h iomanipfunctional boost/range.hpp boost/integer.hpp boost/integer_traits.hpp boost/integer/static_log2.hpp boost/utility/enable_if.hpp boost/cstdint.hpp boost/mpl/bool.hpp stm/basetype.h
stm/internal/config.h
stm/impl/debugxaids.hpp
ios iostream
This graph shows which files directly or indirectly include this file:
filesysxaids.hpp
filesysaids.hpp
aids.hpp xbinmsg.hpp
xdspmsg.hpp xlvdspacket.hppxmcbspmsg.hpp xprintkbinmsg.hpp
xctaids.hpp filesysaids.cpp filesystest.cpp smartptrtest.cpp
sudoku.cpp binmsg.hpp
toolaids.hpp
dspmsg.hpp
dspmsg.cpp
lvdspacket.hppmcbspmsg.hpp printkbinmsg.hpp
ctaids.hpp
ctaids.cpp
Namespaces
• namespace stm• namespace stm::local
Classes
• class stm::local::xrecursionenv
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.18 filesysxaids.hpp File Reference 531
stm::path::recursionenv implementation base class.
• class stm::local::xdirdata< DataT, EnvT >
stm::path::dirdata implementation base class template.
• class stm::local::xreadablefilestm::readablefile implementation base class.
• class stm::local::xinputrange< FileRangeT, bufSize >
stm::inputrange implementation base class template.
• class stm::local::xinputrange_iterator< BufRangeT, ContextT >
stm::inputrange_iterator implementation base class template.
• class stm::local::xfilespecstm::filespec implementation base class.
• struct stm::local::xfilespec::EnvEnvironment for regular expression creation.
• struct stm::local::xfilespec::RollbackRollback data for regular expression creation.
• class stm::local::xfilespecliststm::filespeclist implementation base class.
• class stm::local::xfilefind< PathContainerT >
stm::filefind implementation base class template.
• class stm::local::BraceExpandBrace expansion implementation class.
• struct stm::local::BraceExpand::Data• struct stm::local::BraceExpand::Data::Tail
Defines
• #define STM_FILESYSXAIDS_HPP
Functions
• template<class StringT>
StringT stm::trim (const StringT &str)Function template returning a copy of str without leading and trailing white space characters as defined bythe current locale.
• bool stm::designateSame (const pstring &p1, const pstring &p2)Return true, if the pstring object p1 designates the same file system element than that p2 designates.
• bool stm::operator< (const pstring &p1, const pstring &p2)
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.19 gencrc.hpp File Reference 532
Order relation for pstring objects.
• bool stm::operator== (const pstring &p1, const pstring &p2)Equality relation for pstring objects.
• bool stm::operator< (const numpstring &p1, const numpstring &p2)Order relation for numpstring objects.
• bool stm::operator== (const numpstring &p1, const numpstring &p2)Equality relation for numpstring objects.
• template<class NameT>
void stm::swap (readablefile< NameT > &rf1, readablefile< NameT > &rf2)Swaps the readablefile objects rf1 and rf2.
• template<class BufRangeT, class ContextT>
bool stm::operator== (const inputrange_iterator< BufRangeT, ContextT > &x, const inputrange_-iterator< BufRangeT, ContextT > &y)
Equality operator.
• template<class BufRangeT, class ContextT>
bool stm::operator!= (const inputrange_iterator< BufRangeT, ContextT > &x, const inputrange_-iterator< BufRangeT, ContextT > &y)
Inequality operator.
• int stm::getkey ()Read one character from the console and return it as int on success, else return -1 and set the variable errnoaccording to the error.
• bool stm::isWin32Executable (const std::string &path)The function isWin32Executable returns true, if path (which may not exist) designates a WIN32 executablefile (case unsensitively the extension ’.exe’, ’.dll’, ’.msi’ or ’.com’).
• template<class SequenceT>
SequenceT & stm::brace_expand (SequenceT &result, const std::string &str, bool allowCom-maSep=false)
The function template brace_expand appends the maybe brace expanded words of str to the sequence resultand returns result.
13.18.2 Define Documentation
13.18.2.1 #define STM_FILESYSXAIDS_HPP
Definition at line 2535 of file filesysxaids.hpp.
13.19 gencrc.hpp File Reference
13.19.1 Detailed Description
Declarations of generic CRC remainder polynomial generation.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.19 gencrc.hpp File Reference 533
Version:
1.09-r320
Date:
2007-11-15 18:15:16 (Tom)
Author:
Tom MichaelisSysToMathWittelsbacherstr. 7D-80469 Munich
Contact:
http://www.SysToMath.commailto:[email protected]
This C++ header file contains the declaration of a class template for generic CRC generation. It is imple-mented in the C++ inline file genxcrc.hpp belonging to the SysToMath Aids C++ Library stmaids.
Definition in file gencrc.hpp.
#include <stm/impl/genxcrc.hpp>
Include dependency graph for gencrc.hpp:
gencrc.hpp
stm/impl/genxcrc.hpp
stddef.h limits.h stm/impl/aidsconfig.hpp
stm/internal/config.h
This graph shows which files directly or indirectly include this file:
gencrc.hpp
aids.hpp gencrctest.cpp
sudoku.cpp
Namespaces
• namespace stm
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.20 gencrctest.cpp File Reference 534
Classes
• class stm::crc< RemPolT >
Class template crc provides a means to generate cyclic redundancy check (CRC) remainder polynomials oftype RemPolT over buffers of byte-like objects.
13.20 gencrctest.cpp File Reference
13.20.1 Detailed Description
Implementation of a console program demostrating the usage and testing the functionality of the classtemplate stm::crc which provides a generic CRC generator.
Version:
1.10-r347
Date:
2008-01-03 19:42:43 (Tom)
Author:
Tom MichaelisSysToMathWittelsbacherstr. 7D-80469 Munich
Contact:
http://www.SysToMath.commailto:[email protected]
This C++ program file contains the implementation of the console program gencrctest.
Definition in file gencrctest.cpp.
#include <string>
#include <iostream>
#include <boost/crc.hpp>
#include <stm/divaids.hpp>
#include <stm/gencrc.hpp>
Include dependency graph for gencrctest.cpp:
gencrctest.cpp
stringiostream
boost/crc.hppstm/divaids.hpp stm/gencrc.hpp
stm/impl/divxaids.hpp
stddef.h
limits.hsetjmp.h errno.h locale iomanip
fstream sstream
utility algorithm functional
exception
stdexcept setboost/range.hpp boost/integer.hpp boost/integer_traits.hpp boost/integer/static_log2.hpp boost/utility/enable_if.hpp boost/type_traits.hpp boost/cstdint.hpp boost/mpl/bool.hpp stm/basetype.h
stm/system.h
stm/match.h
stm/impl/aidsconfig.hpp
stm/debugaids.hpp
stm/internal/config.h
stm/impl/debugxaids.hpp
stdio.h ios
stm/impl/genxcrc.hpp
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.21 genxcrc.hpp File Reference 535
Functions
• int main (int argc, char ∗argv[ ])
Variables
• const char ∗ Copyright = "(C) 2003-2008 Tom Michaelis, SysToMath"• const char ∗ Version = "1.10-r347"
13.21 genxcrc.hpp File Reference
13.21.1 Detailed Description
Implementation of generic CRC remainder polynomial generation.
Version:
1.09-r320
Date:
2007-11-15 18:15:16 (Tom)
Author:
Tom MichaelisSysToMathWittelsbacherstr. 7D-80469 Munich
Contact:
http://www.SysToMath.commailto:[email protected]
This C++ inline file contains the implementation of a class template for generic CRC generation. It isdeclared in the C++ header file gencrc.hpp belonging to the SysToMath Aids C++ Library stmaids.
Definition in file genxcrc.hpp.
#include <stddef.h>
#include <limits.h>
#include <stm/impl/aidsconfig.hpp>
Include dependency graph for genxcrc.hpp:
genxcrc.hpp
stddef.h limits.h stm/impl/aidsconfig.hpp
stm/internal/config.h
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.22 loggeraids.hpp File Reference 536
This graph shows which files directly or indirectly include this file:
genxcrc.hpp
gencrc.hpp
aids.hpp gencrctest.cpp
sudoku.cpp
Namespaces
• namespace stm• namespace stm::local
Classes
• class stm::local::xcrc< RemPolT >
stm::crc implementation base class template.
Defines
• #define STM_GENXCRC_HPP
13.21.2 Define Documentation
13.21.2.1 #define STM_GENXCRC_HPP
Definition at line 355 of file genxcrc.hpp.
13.22 loggeraids.hpp File Reference
13.22.1 Detailed Description
Declarations of formatted logging aids.
Version:
1.09-r320
Date:
2007-11-15 18:15:16 (Tom)
Author:
Tom Michaelis
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.22 loggeraids.hpp File Reference 537
SysToMathWittelsbacherstr. 7D-80469 Munich
Contact:
http://www.SysToMath.commailto:[email protected]
This C++ header file contains the declarations of function and class templates for formatted logging aids.They are implemented in the C++ inline file loggerxaids.hpp belonging to the SysToMath Aids C++ Librarystmaids.
Definition in file loggeraids.hpp.
#include <stm/impl/loggerxaids.hpp>
Include dependency graph for loggeraids.hpp:
loggeraids.hpp
stm/impl/loggerxaids.hpp
errno.h
assert.h
stddef.hstdio.h
locale
iostream sstream
algorithm
string
boost/mpl/if.hpp boost/mpl/int.hpp boost/mpl/void.hppstm/divaids.hpp
stm/impl/aidsconfig.hpp
stm/impl/divxaids.hpp
limits.hsetjmp.h iomanip
fstream
utility functional
exception
stdexcept set boost/range.hpp boost/integer.hpp boost/integer_traits.hpp boost/integer/static_log2.hpp boost/utility/enable_if.hpp boost/type_traits.hpp boost/cstdint.hpp boost/mpl/bool.hpp stm/basetype.h
stm/system.h
stm/match.h stm/debugaids.hpp
stm/internal/config.h
stm/impl/debugxaids.hpp
ios
This graph shows which files directly or indirectly include this file:
loggeraids.hpp
aids.hpp xctaids.hpp filesystest.cpp smartptrtest.cpp
sudoku.cpp ctaids.hpp
toolaids.hpp ctaids.cpp
Namespaces
• namespace stm
Classes
• class stm::logger_baseCommon base class of all basic_logger class template specializations.
• class stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >
Class template to manage formatted logging on an output stream (normally a log file) and optionally on asecond stream (normally a console) and on the system log (see stm::syslog()).
• struct stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::Fmt
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.23 loggerxaids.hpp File Reference 538
Format information for output streams.
• struct stm::basic_logger< StringT, stdIndent, lineLength, lockingPolicy >::lockerScoped locking for output streams.
• class stm::logger< stdIndent, lineLength, errorConsole, lockingPolicy >
Class template to manage formatted logging on a std::string based output stream (normally a log file)and optionally on a second std::string based stream (normally a console, by default std::cout, if templateparameter errorConsole is false (the default), or else std::cerr).
• class stm::wlogger< stdIndent, lineLength, errorConsole, lockingPolicy >
Class template to manage formatted logging on a std::wstring based output stream (normally a log file) andoptionally on a second std::wstring based stream (normally a console, by default std::wcout, if templateparameter errorConsole is false (the default), or else std::wcerr).
13.23 loggerxaids.hpp File Reference
13.23.1 Detailed Description
Implementation of formatted logging aids.
Version:
1.07-r47
Date:
2007-09-04 01:10:12 (Tom)
Author:
Tom MichaelisSysToMathWittelsbacherstr. 7D-80469 Munich
Contact:
http://www.SysToMath.commailto:[email protected]
This C++ inline file contains the implementation of function and class templates for formatted loggingaids. They are declared in the C++ header file loggeraids.hpp belonging to the SysToMath Aids C++Library stmaids.
Definition in file loggerxaids.hpp.
#include <errno.h>
#include <assert.h>
#include <stddef.h>
#include <stdio.h>
#include <locale>
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.23 loggerxaids.hpp File Reference 539
#include <iostream>
#include <sstream>
#include <algorithm>
#include <string>
#include <boost/mpl/if.hpp>
#include <boost/mpl/int.hpp>
#include <boost/mpl/void.hpp>
#include <stm/divaids.hpp>
#include <stm/impl/aidsconfig.hpp>
Include dependency graph for loggerxaids.hpp:
loggerxaids.hpp
errno.h
assert.h
stddef.hstdio.h
locale
iostream sstream
algorithm
string
boost/mpl/if.hpp boost/mpl/int.hpp boost/mpl/void.hppstm/divaids.hpp
stm/impl/aidsconfig.hpp
stm/impl/divxaids.hpp
limits.hsetjmp.h iomanip
fstream
utility functional
exception
stdexcept set boost/range.hpp boost/integer.hpp boost/integer_traits.hpp boost/integer/static_log2.hpp boost/utility/enable_if.hpp boost/type_traits.hpp boost/cstdint.hpp boost/mpl/bool.hpp stm/basetype.h
stm/system.h
stm/match.h stm/debugaids.hpp
stm/internal/config.h
stm/impl/debugxaids.hpp
ios
This graph shows which files directly or indirectly include this file:
loggerxaids.hpp
loggeraids.hpp
aids.hpp xctaids.hpp filesystest.cpp smartptrtest.cpp
sudoku.cpp ctaids.hpp
toolaids.hpp ctaids.cpp
Namespaces
• namespace stm• namespace stm::local
Classes
• class stm::local::basic_xlogger< StringT, lockingPolicy >
stm::basic_logger implementation base class template.
• struct stm::local::basic_xlogger< StringT, lockingPolicy >::Fmt• struct stm::local::basic_xlogger< StringT, lockingPolicy >::Stream• class stm::local::basic_xlogger< StringT, lockingPolicy >::no_lock
Dummy type for no locking.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.24 lvdspacket.hpp File Reference 540
• class stm::local::basic_xlogger< StringT, lockingPolicy >::locker
Defines
• #define STM_LOGGERXAIDS_HPP
13.23.2 Define Documentation
13.23.2.1 #define STM_LOGGERXAIDS_HPP
Definition at line 1405 of file loggerxaids.hpp.
13.24 lvdspacket.hpp File Reference
13.24.1 Detailed Description
Declarations for the LVDS packet model.
Version:
1.04-r5
Date:
2006-11-30 12:41:49 (demx18a6)
Author:
Tom MichaelisSysToMathWittelsbacherstr. 7D-80469 Munich
Contact:
http://www.SysToMath.commailto:[email protected]
This C++ header file contains declarations of a class template providing a LVDS packet model. They areimplemented in the C++ inline file xlvdspacket.hpp belonging to the SysToMath Tool Aids C++ Librarystmtoolaids.
Definition in file lvdspacket.hpp.
#include <stm/toolaids/impl/xlvdspacket.hpp>
Include dependency graph for lvdspacket.hpp:
lvdspacket.hpp
stm/toolaids/impl/xlvdspacket.hpp
stddef.h exception
stm/filesysaids.hpp
stm/divaids.hpp
stm/toolaids/binmsg.hpp
stm/toolaids/impl/toolaidsconfig.hpp
stm/impl/filesysxaids.hpp
assert.h stdio.h string.h ctype.h
errno.h fstream sstream algorithmstdexcept utility
memory iterator
string locale
list map
set
boost/static_assert.hpp
boost/type_traits.hpp
boost/algorithm/string.hpp boost/filesystem/operations.hpp boost/filesystem/path.hpp boost/filesystem/exception.hpp boost/function.hpp boost/bind.hpp
stm/system.h stm/match.h stm/impl/aidsconfig.hppstm/debugaids.hpp
stm/impl/divxaids.hpp
limits.h setjmp.h iomanip functional boost/range.hpp boost/integer.hpp boost/integer_traits.hpp boost/integer/static_log2.hpp boost/utility/enable_if.hpp
stm/internal/config.h
stm/toolaids/impl/xbinmsg.hpp
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.25 mcbspmsg.hpp File Reference 541
This graph shows which files directly or indirectly include this file:
lvdspacket.hpp
toolaids.hpp
Namespaces
• namespace stm• namespace stm::tools
Classes
• class stm::tools::LvdsPacket< ContextT >
LVDS packet contained in a binary message.
• struct stm::tools::LvdsPacket< ContextT >::DataTypeLVDS packet data type values.
• struct stm::tools::LvdsPacket< ContextT >::PriorityLVDS packet priority values.
• struct stm::tools::LvdsPacket< ContextT >::AichLVDS packet Aich values.
13.25 mcbspmsg.hpp File Reference
13.25.1 Detailed Description
Declarations for the McBSP message model.
Version:
1.04-r5
Date:
2006-11-30 12:41:49 (demx18a6)
Author:
Tom MichaelisSysToMathWittelsbacherstr. 7D-80469 Munich
Contact:
http://www.SysToMath.commailto:[email protected]
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.26 msgtimestamp.hpp File Reference 542
This C++ header file contains declarations of a class template providing a McBSP message model. Theyare implemented in the C++ inline file xmcbspmsg.hpp belonging to the SysToMath Tool Aids C++ Librarystmtoolaids.
Definition in file mcbspmsg.hpp.
#include <stm/toolaids/impl/xmcbspmsg.hpp>
Include dependency graph for mcbspmsg.hpp:
mcbspmsg.hpp
stm/toolaids/impl/xmcbspmsg.hpp
stddef.h exception
stm/filesysaids.hpp
stm/divaids.hpp
stm/toolaids/binmsg.hpp
stm/toolaids/impl/toolaidsconfig.hpp
stm/impl/filesysxaids.hpp
assert.h stdio.h string.h ctype.h
errno.h fstream sstream algorithmstdexcept utility
memory iterator
string locale
list map
set
boost/static_assert.hpp
boost/type_traits.hpp
boost/algorithm/string.hpp boost/filesystem/operations.hpp boost/filesystem/path.hpp boost/filesystem/exception.hpp boost/function.hpp boost/bind.hpp
stm/system.h stm/match.h stm/impl/aidsconfig.hppstm/debugaids.hpp
stm/impl/divxaids.hpp
limits.h setjmp.h iomanip functional boost/range.hpp boost/integer.hpp boost/integer_traits.hpp boost/integer/static_log2.hpp boost/utility/enable_if.hpp
stm/internal/config.h
stm/toolaids/impl/xbinmsg.hpp
This graph shows which files directly or indirectly include this file:
mcbspmsg.hpp
toolaids.hpp
Namespaces
• namespace stm• namespace stm::tools
Classes
• class stm::tools::McBspMessage< ContextT >
McBSP message scanning from a BaseMessage’s byte_iterator_range.
13.26 msgtimestamp.hpp File Reference
13.26.1 Detailed Description
Declarations for the message timestamp model.
Version:
1.04-r5
Date:
2006-11-30 12:41:50 (demx18a6)
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.26 msgtimestamp.hpp File Reference 543
Author:
Tom MichaelisSysToMathWittelsbacherstr. 7D-80469 Munich
Contact:
http://www.SysToMath.commailto:[email protected]
This C++ header file contains declarations of a class providing a message timestamp model. They areimplemented in the C++ inline file xmsgtimestamp.hpp belonging to the SysToMath Tool Aids C++ Librarystmtoolaids.
Definition in file msgtimestamp.hpp.
#include <stm/toolaids/impl/xmsgtimestamp.hpp>
Include dependency graph for msgtimestamp.hpp:
msgtimestamp.hpp
stm/toolaids/impl/xmsgtimestamp.hpp
stddef.h
stm/divaids.hpp
stm/toolaids/impl/toolaidsconfig.hppstm/impl/divxaids.hpp
limits.h setjmp.herrno.h locale iomanip
fstreamsstream
utility algorithm functional
exception
stdexcept
string
set boost/range.hpp boost/integer.hpp boost/integer_traits.hpp boost/integer/static_log2.hpp boost/utility/enable_if.hpp boost/type_traits.hpp boost/cstdint.hpp boost/mpl/bool.hpp stm/basetype.h
stm/system.h
stm/match.h
stm/impl/aidsconfig.hpp
stm/debugaids.hpp
stm/internal/config.h
stm/impl/debugxaids.hpp
stdio.h iosiostream
This graph shows which files directly or indirectly include this file:
msgtimestamp.hpp
xbinmsg.hpp
toolaids.hpp
binmsg.hpp
xdspmsg.hpp xlvdspacket.hpp xmcbspmsg.hpp xprintkbinmsg.hpp
dspmsg.hpp
dspmsg.cpp
lvdspacket.hpp mcbspmsg.hpp printkbinmsg.hpp
Namespaces
• namespace stm• namespace stm::tools
Classes
• class stm::tools::MsgTimestamp
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.27 printkbinmsg.hpp File Reference 544
Message timestamp type.
13.27 printkbinmsg.hpp File Reference
13.27.1 Detailed Description
Declarations for the PrintkBin message model.
Version:
1.04-r5
Date:
2006-11-30 12:41:50 (demx18a6)
Author:
Tom MichaelisSysToMathWittelsbacherstr. 7D-80469 Munich
Contact:
http://www.SysToMath.commailto:[email protected]
This C++ header file contains declarations of a class template providing a PrintkBin message model. Theyare implemented in the C++ inline file xprintkbin.hpp belonging to the SysToMath Tool Aids C++ Librarystmtoolaids.
Definition in file printkbinmsg.hpp.
#include <stm/toolaids/impl/xprintkbinmsg.hpp>
Include dependency graph for printkbinmsg.hpp:
printkbinmsg.hpp
stm/toolaids/impl/xprintkbinmsg.hpp
stddef.h exception
stm/filesysaids.hpp
stm/divaids.hpp
stm/toolaids/binmsg.hpp
stm/toolaids/impl/toolaidsconfig.hpp
stm/impl/filesysxaids.hpp
assert.h stdio.h string.h ctype.h
errno.h fstream sstream algorithmstdexcept utility
memory iterator
string locale
list map
set
boost/static_assert.hpp
boost/type_traits.hpp
boost/algorithm/string.hpp boost/filesystem/operations.hpp boost/filesystem/path.hpp boost/filesystem/exception.hpp boost/function.hpp boost/bind.hpp
stm/system.h stm/match.h stm/impl/aidsconfig.hppstm/debugaids.hpp
stm/impl/divxaids.hpp
limits.h setjmp.h iomanip functional boost/range.hpp boost/integer.hpp boost/integer_traits.hpp boost/integer/static_log2.hpp boost/utility/enable_if.hpp
stm/internal/config.h
stm/toolaids/impl/xbinmsg.hpp
This graph shows which files directly or indirectly include this file:
printkbinmsg.hpp
toolaids.hpp
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.28 smartptraids.hpp File Reference 545
Namespaces
• namespace stm• namespace stm::tools
Classes
• class stm::tools::PrintkBinMessage< ContextT >
PrintkBin message scanning from a the BaseMessage’s byte_iterator_range.
13.28 smartptraids.hpp File Reference
13.28.1 Detailed Description
Declarations of smart pointer aids.
Version:
1.04-r5
Date:
2006-11-30 12:41:44 (demx18a6)
Author:
Tom MichaelisSysToMathWittelsbacherstr. 7D-80469 Munich
Contact:
http://www.SysToMath.commailto:[email protected]
This C++ header file contains the declarations of class templates for smart pointer aids. They are imple-mented in the C++ inline file smartptrxaids.hpp belonging to the SysToMath Aids C++ Library stmaids.
Definition in file smartptraids.hpp.
#include <stm/impl/smartptrxaids.hpp>
Include dependency graph for smartptraids.hpp:
smartptraids.hpp
stm/impl/smartptrxaids.hpp
vector
sstream
iterator
functional exception stdexcept
climitsstm/divaids.hpp
boost/utility/enable_if.hpp boost/type_traits.hpp boost/mpl/bool.hpp stm/impl/aidsconfig.hpp
boost/static_assert.hpp boost/utility.hpp boost/archive/text_oarchive.hpp boost/archive/text_iarchive.hpp boost/archive/xml_oarchive.hpp boost/archive/xml_iarchive.hpp boost/archive/binary_oarchive.hpp boost/archive/binary_iarchive.hpp boost/multi_index_container.hpp boost/multi_index/ordered_index.hpp boost/multi_index/key_extractors.hpp boost/serialization/serialization.hpp boost/serialization/access.hpp boost/serialization/split_member.hpp boost/serialization/nvp.hpp boost/serialization/tracking.hpp boost/serialization/shared_ptr.hpp boost/serialization/set.hpp boost/serialization/map.hpp
stm/impl/divxaids.hpp
stddef.h limits.h setjmp.h errno.h locale iomanip fstream utility algorithmstring set boost/range.hpp boost/integer.hpp boost/integer_traits.hpp boost/integer/static_log2.hpp
stm/internal/config.h
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.28 smartptraids.hpp File Reference 546
This graph shows which files directly or indirectly include this file:
smartptraids.hpp
aids.hpp smartptrtest.cpp
sudoku.cpp
Namespaces
• namespace stm• namespace stm::smartptr
Classes
• struct stm::smartptr::policy< Flags >
Class template serving as Policy template parameter for class templates injective_ptr and injective_set.
• struct stm::smartptr::MakeSurjective< Policy >
Class template serving as wrapper of template parameter Policy to ensure the surjective policy property.
• struct stm::smartptr::MakeMultirange< Policy >
Class template serving as wrapper of template parameter Policy to ensure the multirange policy property.
• class stm::smartptr::injective_ptr< T, Compare, Allocator, Policy >
The class template injective_ptr is a smart pointer pointing to unique constant objects of element type Tstored using a static repository.
• class stm::smartptr::injective_set< T, Compare, Allocator, Policy >
The class template injective_set is a container of unique constant objects of value type T stored wrapping aspecific range of the static repository of an injective_ptr<T, Compare, Allocator, Policy> object.
• class stm::smartptr::injective_set< T, Compare, Allocator, Policy >::accessorSubclass of injective_ptr<T, Compare, Allocator, MakeMultirange<Policy> > representing an element ofthis injective_set object.
• class stm::smartptr::injective< T, Compare, Allocator, Policy >
The traits class template injective combines the class template injective_ptr and its associated class templateinjective_set having either the surjective or the not surjective policy property.
• class stm::smartptr::bijective< T, Compare, Allocator, Policy >
The traits class template bijective combines the class template injective_ptr and its associated class templateinjective_set having the surjective policy property.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.28 smartptraids.hpp File Reference 547
Policy Flags
The policy flag bits are bitwise orable.
• const stm::dword stm::smartptr::Surjective = 0x00000001Surjective policy flag.
• const stm::dword stm::smartptr::Multirange = 0x00000002Multirange policy flag.
Functions
• template<class T, class Compare, class Allocator, class Policy>
bool stm::smartptr::operator== (const injective_ptr< T, Compare, Allocator, Policy > &ptr1, constinjective_ptr< T, Compare, Allocator, Policy > &ptr2)
Returns true, if both ptr1 and ptr2 are empty or ptr1 and ptr2 are not empty and point to elements beingequivalent under the equivalence relation induced by Compare, else false.
• template<class T, class Compare, class Allocator, class Policy>
bool stm::smartptr::operator!= (const injective_ptr< T, Compare, Allocator, Policy > &ptr1, constinjective_ptr< T, Compare, Allocator, Policy > &ptr2)
Returns true, if either ptr1 or ptr2 is not empty and ptr1 or ptr2 is empty or else point to elements beingnon-equivalent under the equivalence relation induced by Compare, else false.
• template<class T, class Compare, class Allocator, class Policy>
bool stm::smartptr::operator< (const injective_ptr< T, Compare, Allocator, Policy > &ptr1, constinjective_ptr< T, Compare, Allocator, Policy > &ptr2)
Returns a bool value such that operator< is a strict weak ordering as decribed in (25.3) and that under theequivalence relation.
• template<class T, class Compare, class Allocator, class Policy>
void stm::smartptr::swap (injective_ptr< T, Compare, Allocator, Policy > &ptr1, injective_ptr< T,Compare, Allocator, Policy > &ptr2)
Exchanges the contents of the injective_ptr objects ptr1 and ptr2.
• template<class T, class Compare, class Allocator, class Policy>
const T ∗ stm::smartptr::get_pointer (const injective_ptr< T, Compare, Allocator, Policy > &ptr)Returns a constant pointer to the element pointed to by the injective_ptr object ptr, if ptr is not be empty,else the null pointer.
• template<class OStreamT, class T, class Compare, class Allocator, class Policy>
OStreamT & stm::smartptr::operator<< (OStreamT &os, const injective_ptr< T, Compare, Alloca-tor, Policy > &ptr)
Inserts a string representation of the address of the element pointed to by ptr into the output stream os.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.29 smartptrtest.cpp File Reference 548
13.29 smartptrtest.cpp File Reference
13.29.1 Detailed Description
Implementation of a console program demostrating the usage and testing the implementation of the Sys-ToMath Aids C++ Library module SmartptrAids.
Version:
1.10-r347
Date:
2008-01-03 19:42:44 (Tom)
Author:
Tom MichaelisSysToMathWittelsbacherstr. 7D-80469 Munich
Contact:
http://www.SysToMath.commailto:[email protected]
This C++ program file contains the implementation of the console program smartptrtest.
Definition in file smartptrtest.cpp.
#include <string>
#include <iostream>
#include <exception>
#include <stdexcept>
#include <stm/smartptraids.hpp>
#include <stm/filesysaids.hpp>
#include <stm/divaids.hpp>
#include <stm/debugaids.hpp>
#include <stm/loggeraids.hpp>
#include <stm/getopts.h>
Include dependency graph for smartptrtest.cpp:
smartptrtest.cpp
stringiostream exception
stdexcept
stm/smartptraids.hpp
stm/divaids.hpp
stm/debugaids.hpp
stm/filesysaids.hppstm/loggeraids.hpp stm/getopts.h
stm/impl/smartptrxaids.hpp
vector
sstream
iterator
functional
climits
boost/utility/enable_if.hppboost/type_traits.hpp boost/mpl/bool.hpp
stm/impl/aidsconfig.hpp
boost/static_assert.hpp boost/utility.hpp boost/archive/text_oarchive.hpp boost/archive/text_iarchive.hpp boost/archive/xml_oarchive.hpp boost/archive/xml_iarchive.hpp boost/archive/binary_oarchive.hpp boost/archive/binary_iarchive.hpp boost/multi_index_container.hpp boost/multi_index/ordered_index.hpp boost/multi_index/key_extractors.hpp boost/serialization/serialization.hpp boost/serialization/access.hpp boost/serialization/split_member.hpp boost/serialization/nvp.hpp boost/serialization/tracking.hpp boost/serialization/shared_ptr.hpp boost/serialization/set.hpp boost/serialization/map.hpp
stm/impl/divxaids.hpp
stddef.h
errno.h
stm/impl/debugxaids.hpp
stdio.h
stm/impl/filesysxaids.hpp
assert.h string.h ctype.h
stm/impl/loggerxaids.hpp
Classes
• struct Xyz
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.30 smartptrxaids.hpp File Reference 549
• class Slot• class Node• struct Operation• struct Operation::Type• struct Operation::Mode• struct Operation::Archive• struct TestPtr< Policy >
• struct TestSet< Policy >
Typedefs
• typedef stm::injective_ptr< Xyz > XyzPtr• typedef stm::bijective< Node >::set NodeSet
Functions
• bool operator< (const Xyz &e1, const Xyz &e2)• template<class Policy>
void testptr (const Operation &op)• template<class Policy>
void testset (const Operation &op)• int main (int argc, char ∗argv[ ])
Variables
• const char ∗ Copyright = "(C) 2006-2008 Tom Michaelis, SysToMath"• const char ∗ Version = "1.10-r347"• static const char ∗ man [ ]
Man page.
• XyzPtr ptr1• XyzPtr ptr2 = Xyz (3)• Xyz xyz1 = ∗ptr2• Xyz xyz2 (7, ptr1)• const Xyz ∗ p = xyz2.ptr.get ()• NodeSet nodes• Slot rootSlot• Node::Ptr rootNode = nodes.insert (Node (rootSlot))
13.30 smartptrxaids.hpp File Reference
13.30.1 Detailed Description
Implementation of smart pointer aids.
Version:
1.07-r44
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.30 smartptrxaids.hpp File Reference 550
Date:
2007-08-31 16:12:46 (Tom)
Author:
Tom MichaelisSysToMathWittelsbacherstr. 7D-80469 Munich
Contact:
http://www.SysToMath.commailto:[email protected]
This C++ inline file contains the implementation of class templates for smart pointer aids. They are declaredin the C++ header file smartptraids.hpp belonging to the SysToMath Aids C++ Library stmaids.
Definition in file smartptrxaids.hpp.
#include <vector>
#include <sstream>
#include <iterator>
#include <functional>
#include <exception>
#include <stdexcept>
#include <climits>
#include <stm/divaids.hpp>
#include <stm/impl/aidsconfig.hpp>
#include <boost/static_assert.hpp>
#include <boost/utility.hpp>
#include <boost/utility/enable_if.hpp>
#include <boost/type_traits.hpp>
#include <boost/mpl/bool.hpp>
#include <boost/archive/text_oarchive.hpp>
#include <boost/archive/text_iarchive.hpp>
#include <boost/archive/xml_oarchive.hpp>
#include <boost/archive/xml_iarchive.hpp>
#include <boost/archive/binary_oarchive.hpp>
#include <boost/archive/binary_iarchive.hpp>
#include <boost/multi_index_container.hpp>
#include <boost/multi_index/ordered_index.hpp>
#include <boost/multi_index/key_extractors.hpp>
#include <boost/serialization/serialization.hpp>
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.30 smartptrxaids.hpp File Reference 551
#include <boost/serialization/access.hpp>
#include <boost/serialization/split_member.hpp>
#include <boost/serialization/nvp.hpp>
#include <boost/serialization/tracking.hpp>
#include <boost/serialization/shared_ptr.hpp>
#include <boost/serialization/set.hpp>
#include <boost/serialization/map.hpp>
Include dependency graph for smartptrxaids.hpp:
smartptrxaids.hpp
vector
sstream
iterator
functional exception stdexcept
climitsstm/divaids.hpp
boost/utility/enable_if.hpp boost/type_traits.hpp boost/mpl/bool.hpp stm/impl/aidsconfig.hpp
boost/static_assert.hpp boost/utility.hpp boost/archive/text_oarchive.hpp boost/archive/text_iarchive.hpp boost/archive/xml_oarchive.hpp boost/archive/xml_iarchive.hpp boost/archive/binary_oarchive.hpp boost/archive/binary_iarchive.hpp boost/multi_index_container.hpp boost/multi_index/ordered_index.hpp boost/multi_index/key_extractors.hpp boost/serialization/serialization.hpp boost/serialization/access.hpp boost/serialization/split_member.hpp boost/serialization/nvp.hpp boost/serialization/tracking.hpp boost/serialization/shared_ptr.hpp boost/serialization/set.hpp boost/serialization/map.hpp
stm/impl/divxaids.hpp
stddef.h limits.h setjmp.h errno.h locale iomanip fstream utilityalgorithm string set boost/range.hpp boost/integer.hpp boost/integer_traits.hpp boost/integer/static_log2.hpp boost/cstdint.hpp
stm/internal/config.h
This graph shows which files directly or indirectly include this file:
smartptrxaids.hpp
smartptraids.hpp
aids.hpp smartptrtest.cpp
sudoku.cpp
Namespaces
• namespace stm• namespace stm::smartptr• namespace stm::smartptr::local
Classes
• class stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange >
stm::smartptr::injective_ptr implementation base class template.
• class stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, multirange>::rangeid_type
• struct stm::smartptr::local::pcomp< T, Compare >
• class stm::smartptr::local::pointee_type< T >
• struct stm::smartptr::local::item_type< T, Compare >
• struct stm::smartptr::local::item_descr< T, Compare, true, true >
• struct stm::smartptr::local::item_descr< T, Compare, false, true >
• struct stm::smartptr::local::increfcount< T, Compare, refcounted, multirange >
• struct stm::smartptr::local::decrefcount< T, Compare, refcounted, multirange >
• struct stm::smartptr::local::comp_value_id< T, Compare >
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.30 smartptrxaids.hpp File Reference 552
• struct stm::smartptr::local::comp_id< T, Compare >
• struct stm::smartptr::local::comp_value< T, Compare >
• class stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, multirange >
• class stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, multirange>::range_iterator
• class stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, false >
• class stm::smartptr::local::mapped_ptr< T, Compare, Allocator, refcounted, false >::rangeid_type• struct stm::smartptr::local::item_descr< T, Compare, true, false >
• struct stm::smartptr::local::item_descr< T, Compare, false, false >
• class stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, false >
• class stm::smartptr::local::repository_type< T, Compare, Allocator, refcounted, false >::range_-iterator
Defines
• #define STM_SMARTPTRXAIDS_HPP
Typedefs
• typedef long stm::smartptr::local::refcount_typeTo be compatible with boost::shared_ptr.
Functions
• template<class T, class Compare, class Allocator, class Policy>
bool stm::smartptr::operator== (const injective_ptr< T, Compare, Allocator, Policy > &ptr1, constinjective_ptr< T, Compare, Allocator, Policy > &ptr2)
Returns true, if both ptr1 and ptr2 are empty or ptr1 and ptr2 are not empty and point to elements beingequivalent under the equivalence relation induced by Compare, else false.
• template<class T, class Compare, class Allocator, class Policy>
bool stm::smartptr::operator!= (const injective_ptr< T, Compare, Allocator, Policy > &ptr1, constinjective_ptr< T, Compare, Allocator, Policy > &ptr2)
Returns true, if either ptr1 or ptr2 is not empty and ptr1 or ptr2 is empty or else point to elements beingnon-equivalent under the equivalence relation induced by Compare, else false.
• template<class T, class Compare, class Allocator, class Policy>
bool stm::smartptr::operator< (const injective_ptr< T, Compare, Allocator, Policy > &ptr1, constinjective_ptr< T, Compare, Allocator, Policy > &ptr2)
Returns a bool value such that operator< is a strict weak ordering as decribed in (25.3) and that under theequivalence relation.
• template<class T, class Compare, class Allocator, class Policy>
const T ∗ stm::smartptr::get_pointer (const injective_ptr< T, Compare, Allocator, Policy > &ptr)Returns a constant pointer to the element pointed to by the injective_ptr object ptr, if ptr is not be empty,else the null pointer.
• template<class OStreamT, class T, class Compare, class Allocator, class Policy>
OStreamT & stm::smartptr::operator<< (OStreamT &os, const injective_ptr< T, Compare, Alloca-tor, Policy > &ptr)
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.31 sudoku.cpp File Reference 553
Inserts a string representation of the address of the element pointed to by ptr into the output stream os.
13.30.2 Define Documentation
13.30.2.1 #define STM_SMARTPTRXAIDS_HPP
Definition at line 2599 of file smartptrxaids.hpp.
13.31 sudoku.cpp File Reference
13.31.1 Detailed Description
Implementation of a console program demostrating the usage and testing the implementation of the Sys-ToMath Aids C++ Library stmaids.
Version:
1.10-r347
Date:
2008-01-03 19:42:44 (Tom)
Author:
Tom MichaelisSysToMathWittelsbacherstr. 7D-80469 Munich
Contact:
http://www.SysToMath.commailto:[email protected]
This C++ program file contains the implementation of the console program sudoku.
Definition in file sudoku.cpp.
#include <stdio.h>
#include <stdlib.h>
#include <stdarg.h>
#include <time.h>
#include <errno.h>
#include <ctype.h>
#include <limits.h>
#include <exception>
#include <stdexcept>
#include <algorithm>
#include <vector>
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.32 toolaids.hpp File Reference 554
#include <set>
#include <boost/utility.hpp>
#include <boost/shared_ptr.hpp>
#include <boost/date_time/posix_time/posix_time.hpp>
#include <stm/getopts.h>
#include <stm/dvec.h>
#include <stm/aids.hpp>
Include dependency graph for sudoku.cpp:
sudoku.cpp
stdio.h
stdlib.h stdarg.h time.h
errno.h
ctype.h
limits.h
exception
stdexcept algorithm
vector
set
boost/utility.hpp
boost/shared_ptr.hpp boost/date_time/posix_time/posix_time.hpp stm/getopts.h stm/dvec.hstm/aids.hpp
stm/debugaids.hpp
stm/filesysaids.hpp
stm/divaids.hpp
stm/loggeraids.hppstm/smartptraids.hpp stm/gencrc.hpp
stm/impl/debugxaids.hpp
stddef.hios iostreamsstreamfstream stringstm/system.hstm/impl/aidsconfig.hpp
stm/impl/filesysxaids.hpp
assert.hstring.h
utility
memoryiterator
locale
list mapboost/static_assert.hpp
boost/type_traits.hpp
boost/algorithm/string.hpp
stm/impl/divxaids.hpp
stm/impl/loggerxaids.hppstm/impl/smartptrxaids.hpp
stm/impl/genxcrc.hpp
Classes
• class SudokuSudoku model.
• class Sudoku::StateSudoku state.
Functions
• int main (int argc, char ∗∗argv)Main function implementing the command sudoku.
Variables
• const char ∗ Copyright = "(C) 2006-2008 Tom Michaelis, SysToMath"• const char ∗ Version = "1.10-r347"• static const char ∗ man [ ]
Man page.
13.32 toolaids.hpp File Reference
13.32.1 Detailed Description
Central include file for SysToMath Tool Aids C++ library.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.33 toolaidsconfig.hpp File Reference 555
Version:
1.04-r4
Date:
2006-11-18 09:01:41 (tom)
Author:
Tom MichaelisSysToMathWittelsbacherstr. 7D-80469 Munich
Contact:
http://www.SysToMath.commailto:[email protected]
This C++ header file includes all other library object interface header files of to the SysToMath Tool AidsC++ Library stmtoolaids.
Definition in file toolaids.hpp.
#include <stm/toolaids/ctaids.hpp>
#include <stm/toolaids/binmsg.hpp>
#include <stm/toolaids/dspmsg.hpp>
#include <stm/toolaids/lvdspacket.hpp>
#include <stm/toolaids/mcbspmsg.hpp>
#include <stm/toolaids/msgtimestamp.hpp>
#include <stm/toolaids/printkbinmsg.hpp>
Include dependency graph for toolaids.hpp:
toolaids.hpp
stm/toolaids/ctaids.hpp stm/toolaids/binmsg.hpp
stm/toolaids/msgtimestamp.hpp
stm/toolaids/dspmsg.hpp stm/toolaids/lvdspacket.hppstm/toolaids/mcbspmsg.hppstm/toolaids/printkbinmsg.hpp
stm/toolaids/impl/xctaids.hpp
stddef.h
vector
list
exceptionstdexcept
stm/filesysaids.hpp
stm/divaids.hpp
stm/loggeraids.hpp
stm/toolaids/impl/toolaidsconfig.hpp
stm/impl/filesysxaids.hpp
assert.h stdio.h string.h ctype.h
errno.h fstreamsstream algorithm utility
memory iterator
string locale
map
set
boost/static_assert.hpp
boost/type_traits.hpp
boost/algorithm/string.hpp boost/filesystem/operations.hpp boost/filesystem/path.hpp boost/filesystem/exception.hppboost/function.hpp
stm/impl/divxaids.hpp
stm/impl/loggerxaids.hpp
stm/internal/config.h
stm/toolaids/impl/xbinmsg.hpp
stm/toolaids/impl/xmsgtimestamp.hpp
stm/toolaids/impl/xdspmsg.hpp stm/toolaids/impl/xlvdspacket.hppstm/toolaids/impl/xmcbspmsg.hppstm/toolaids/impl/xprintkbinmsg.hpp
13.33 toolaidsconfig.hpp File Reference
13.33.1 Detailed Description
Management of library generation and of automatic library choice for the SysToMath Tool Aids C++ librarystmaids.
Version:
1.04-r4
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.33 toolaidsconfig.hpp File Reference 556
Date:
2006-11-18 09:01:34 (tom)
Author:
Tom MichaelisSysToMathWittelsbacherstr. 7D-80469 Munich
Contact:
http://www.SysToMath.commailto:[email protected]
This C++ header file defines the macro StmDllSpec necessary for correct library usage and the pragmacomment(lib) responsible for correct library choice.
Definition in file toolaidsconfig.hpp.
#include <stm/internal/config.h>
Include dependency graph for toolaidsconfig.hpp:
toolaidsconfig.hpp
stm/internal/config.h
This graph shows which files directly or indirectly include this file:
toolaidsconfig.hpp
xbinmsg.hpp
xdspmsg.hpp xlvdspacket.hppxmcbspmsg.hpp xprintkbinmsg.hpp
xctaids.hppxmsgtimestamp.hpp
binmsg.hpp
toolaids.hpp
dspmsg.hpp
dspmsg.cpp
lvdspacket.hppmcbspmsg.hpp printkbinmsg.hpp
ctaids.hpp
ctaids.cpp
msgtimestamp.hpp
Defines
• #define STM_LIB_NAME "stmtoolaids"
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.34 xbinmsg.hpp File Reference 557
13.33.2 Define Documentation
13.33.2.1 #define STM_LIB_NAME "stmtoolaids"
Definition at line 80 of file toolaidsconfig.hpp.
13.34 xbinmsg.hpp File Reference
13.34.1 Detailed Description
Implementation of the abstract binary message model.
Version:
1.04-r5
Date:
2006-11-30 12:41:46 (demx18a6)
Author:
Tom MichaelisSysToMathWittelsbacherstr. 7D-80469 Munich
Contact:
http://www.SysToMath.commailto:[email protected]
This C++ inline file contains inline definitions and declarations implementing the abstract binary messagemodel. They are declared in the C++ header file xbinmsg.hpp belonging to the SysToMath Tool Aids C++Library stmtoolaids.
Definition in file xbinmsg.hpp.
#include <stddef.h>
#include <exception>
#include <stdexcept>
#include <set>
#include <stm/filesysaids.hpp>
#include <stm/divaids.hpp>
#include <stm/toolaids/msgtimestamp.hpp>
#include <stm/toolaids/impl/toolaidsconfig.hpp>
Include dependency graph for xbinmsg.hpp:
xbinmsg.hpp
stddef.hexceptionstdexcept set
stm/filesysaids.hpp
stm/divaids.hpp
stm/toolaids/msgtimestamp.hpp
stm/toolaids/impl/toolaidsconfig.hpp
stm/impl/filesysxaids.hpp
assert.h stdio.h string.h ctype.h
errno.h fstream sstream algorithm utility
memory iterator
string locale
list map boost/static_assert.hpp
boost/type_traits.hpp
boost/algorithm/string.hpp boost/filesystem/operations.hpp boost/filesystem/path.hpp boost/filesystem/exception.hpp boost/function.hppboost/bind.hpp
stm/system.h stm/match.h stm/impl/aidsconfig.hppstm/debugaids.hpp
stm/impl/divxaids.hpp
limits.h setjmp.h iomanip functional boost/range.hpp boost/integer.hpp boost/integer_traits.hpp boost/integer/static_log2.hpp boost/utility/enable_if.hppboost/cstdint.hpp
stm/internal/config.h
stm/toolaids/impl/xmsgtimestamp.hpp
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.34 xbinmsg.hpp File Reference 558
This graph shows which files directly or indirectly include this file:
xbinmsg.hpp
binmsg.hpp
xdspmsg.hpp
toolaids.hpp
xlvdspacket.hpp xmcbspmsg.hpp xprintkbinmsg.hpp
dspmsg.hpp
dspmsg.cpp
lvdspacket.hpp mcbspmsg.hpp printkbinmsg.hpp
Namespaces
• namespace stm• namespace stm::tools• namespace stm::tools::local
Classes
• class stm::tools::local::xBaseMessageContext< DataT, InputRangeT, ContextT >
stm::tools::BaseMessageContext implementation base class template.
• class stm::tools::local::xBaseMessage< ContextT >
stm::tools::BaseMessage implementation base class template.
• class stm::tools::local::xBinMessageGapstm::tools::BinMessageContext::Gap implementation base class.
• class stm::tools::local::xBinMessageContext< ContextT >
stm::tools::BinMessageContext implementation base class template.
• class stm::tools::local::xBinMessage< ContextT >
stm::tools::BinMessage implementation base class template.
Defines
• #define STM_TOOLAIDS_XBINMSG_HPP
13.34.2 Define Documentation
13.34.2.1 #define STM_TOOLAIDS_XBINMSG_HPP
Definition at line 821 of file xbinmsg.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.35 xctaids.hpp File Reference 559
13.35 xctaids.hpp File Reference
13.35.1 Detailed Description
Implementation of ClearCase cleartool aids.
Version:
1.04-r8
Date:
2006-12-08 23:20:48 (tom)
Author:
Tom MichaelisSysToMathWittelsbacherstr. 7D-80469 Munich
Contact:
http://www.SysToMath.commailto:[email protected]
This C++ inline file contains inline definitions and declarations implementing ClearCase cleartool aids.They are declared in the C++ header file ctaids.hpp belonging to the SysToMath Tool Aids C++ Librarystmtoolaids.
Definition in file xctaids.hpp.
#include <stddef.h>
#include <vector>
#include <list>
#include <exception>
#include <stdexcept>
#include <stm/filesysaids.hpp>
#include <stm/divaids.hpp>
#include <stm/loggeraids.hpp>
#include <stm/toolaids/impl/toolaidsconfig.hpp>
Include dependency graph for xctaids.hpp:
xctaids.hpp
stddef.h
vector
list
exception stdexcept
stm/filesysaids.hpp
stm/divaids.hpp
stm/loggeraids.hpp
stm/toolaids/impl/toolaidsconfig.hpp
stm/impl/filesysxaids.hpp
assert.h stdio.hstring.hctype.h
errno.hfstream sstream algorithmutility
memory iterator
string locale
map
set
boost/static_assert.hpp
boost/type_traits.hpp
boost/algorithm/string.hpp boost/filesystem/operations.hpp boost/filesystem/path.hpp boost/filesystem/exception.hpp boost/function.hpp boost/bind.hpp
stm/system.h stm/match.h stm/impl/aidsconfig.hppstm/debugaids.hpp
stm/impl/divxaids.hpp
limits.h setjmp.h iomanip functional boost/range.hpp boost/integer.hppboost/integer_traits.hpp boost/integer/static_log2.hpp boost/utility/enable_if.hpp
stm/internal/config.h
stm/impl/loggerxaids.hpp
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.36 xdspmsg.hpp File Reference 560
This graph shows which files directly or indirectly include this file:
xctaids.hpp
ctaids.hpp
toolaids.hpp ctaids.cpp
Namespaces
• namespace stm• namespace stm::tools• namespace stm::tools::local
Classes
• class stm::tools::local::xArgListstm::tools::Ct::ArgList implementation base class.
• class stm::tools::local::xCtstm::tools::Ct implementation base class.
• class stm::tools::local::xCtOperationstm::tools::CtOperation implementation base class.
• class stm::tools::local::xCtOperation::LabelList
Defines
• #define STM_TOOLAIDS_XCTAIDS_HPP
13.35.2 Define Documentation
13.35.2.1 #define STM_TOOLAIDS_XCTAIDS_HPP
Definition at line 478 of file xctaids.hpp.
13.36 xdspmsg.hpp File Reference
13.36.1 Detailed Description
Implementation of the DSP message model.
Version:
1.04-r5
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.36 xdspmsg.hpp File Reference 561
Date:
2006-11-30 12:41:47 (demx18a6)
Author:
Tom MichaelisSysToMathWittelsbacherstr. 7D-80469 Munich
Contact:
http://www.SysToMath.commailto:[email protected]
This C++ inline file contains inline definitions and declarations implementing the DSP message model.They are declared in the C++ header file dspmsg.hpp belonging to the SysToMath Tool Aids C++ Librarystmtoolaids.
Definition in file xdspmsg.hpp.
#include <stddef.h>
#include <exception>
#include <stm/filesysaids.hpp>
#include <stm/divaids.hpp>
#include <stm/toolaids/binmsg.hpp>
#include <stm/toolaids/impl/toolaidsconfig.hpp>
Include dependency graph for xdspmsg.hpp:
xdspmsg.hpp
stddef.h exception
stm/filesysaids.hpp
stm/divaids.hpp
stm/toolaids/binmsg.hpp
stm/toolaids/impl/toolaidsconfig.hpp
stm/impl/filesysxaids.hpp
assert.h stdio.h string.h ctype.h
errno.hfstream sstream algorithmstdexcept utility
memory iterator
string locale
list map
set
boost/static_assert.hpp
boost/type_traits.hpp
boost/algorithm/string.hpp boost/filesystem/operations.hpp boost/filesystem/path.hpp boost/filesystem/exception.hpp boost/function.hpp boost/bind.hpp
stm/system.h stm/match.h stm/impl/aidsconfig.hppstm/debugaids.hpp
stm/impl/divxaids.hpp
limits.h setjmp.h iomanip functional boost/range.hpp boost/integer.hpp boost/integer_traits.hppboost/integer/static_log2.hpp boost/utility/enable_if.hpp boost/cstdint.hpp
stm/internal/config.h
stm/toolaids/impl/xbinmsg.hpp
This graph shows which files directly or indirectly include this file:
xdspmsg.hpp
dspmsg.hpp
toolaids.hpp dspmsg.cpp
Namespaces
• namespace stm• namespace stm::tools• namespace stm::tools::local
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.37 xlvdspacket.hpp File Reference 562
Classes
• class stm::tools::local::xTraceHeaderstm::tools::DspMessage::TraceHeader implementation base class.
• class stm::tools::local::xDspMessage< ContextT >
stm::tools::DspMessage implementation base class template.
Defines
• #define STM_TOOLAIDS_XDSPMSG_HPP
13.36.2 Define Documentation
13.36.2.1 #define STM_TOOLAIDS_XDSPMSG_HPP
Definition at line 329 of file xdspmsg.hpp.
13.37 xlvdspacket.hpp File Reference
13.37.1 Detailed Description
Implementation of the LVDS packet model.
Version:
1.04-r5
Date:
2006-11-30 12:41:47 (demx18a6)
Author:
Tom MichaelisSysToMathWittelsbacherstr. 7D-80469 Munich
Contact:
http://www.SysToMath.commailto:[email protected]
This C++ inline file contains inline definitions and declarations implementing the LVDS packet model.They are declared in the C++ header file lvdspacket.hpp belonging to the SysToMath Tool Aids C++Library stmtoolaids.
Definition in file xlvdspacket.hpp.
#include <stddef.h>
#include <exception>
#include <stm/filesysaids.hpp>
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.37 xlvdspacket.hpp File Reference 563
#include <stm/divaids.hpp>
#include <stm/toolaids/binmsg.hpp>
#include <stm/toolaids/impl/toolaidsconfig.hpp>
Include dependency graph for xlvdspacket.hpp:
xlvdspacket.hpp
stddef.h exception
stm/filesysaids.hpp
stm/divaids.hpp
stm/toolaids/binmsg.hpp
stm/toolaids/impl/toolaidsconfig.hpp
stm/impl/filesysxaids.hpp
assert.h stdio.h string.h ctype.h
errno.hfstream sstream algorithmstdexcept utility
memory iterator
string locale
list map
set
boost/static_assert.hpp
boost/type_traits.hpp
boost/algorithm/string.hpp boost/filesystem/operations.hpp boost/filesystem/path.hpp boost/filesystem/exception.hpp boost/function.hpp boost/bind.hpp
stm/system.h stm/match.h stm/impl/aidsconfig.hppstm/debugaids.hpp
stm/impl/divxaids.hpp
limits.h setjmp.h iomanip functional boost/range.hpp boost/integer.hpp boost/integer_traits.hppboost/integer/static_log2.hpp boost/utility/enable_if.hpp boost/cstdint.hpp
stm/internal/config.h
stm/toolaids/impl/xbinmsg.hpp
This graph shows which files directly or indirectly include this file:
xlvdspacket.hpp
lvdspacket.hpp
toolaids.hpp
Namespaces
• namespace stm• namespace stm::tools• namespace stm::tools::local
Classes
• class stm::tools::local::xLvdsPacket< ContextT >
stm::tools::LvdsPacket implementation base class template.
Defines
• #define STM_TOOLAIDS_XLVDSPACKET_HPP
13.37.2 Define Documentation
13.37.2.1 #define STM_TOOLAIDS_XLVDSPACKET_HPP
Definition at line 432 of file xlvdspacket.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.38 xmcbspmsg.hpp File Reference 564
13.38 xmcbspmsg.hpp File Reference
13.38.1 Detailed Description
Implementation of the McBSP message model.
Version:
1.04-r5
Date:
2006-11-30 12:41:48 (demx18a6)
Author:
Tom MichaelisSysToMathWittelsbacherstr. 7D-80469 Munich
Contact:
http://www.SysToMath.commailto:[email protected]
This C++ inline file contains inline definitions and declarations implementing the McBSP message model.They are declared in the C++ header file mcbspmsg.hpp belonging to the SysToMath Tool Aids C++Library stmtoolaids.
Definition in file xmcbspmsg.hpp.
#include <stddef.h>
#include <exception>
#include <stm/filesysaids.hpp>
#include <stm/divaids.hpp>
#include <stm/toolaids/binmsg.hpp>
#include <stm/toolaids/impl/toolaidsconfig.hpp>
Include dependency graph for xmcbspmsg.hpp:
xmcbspmsg.hpp
stddef.h exception
stm/filesysaids.hpp
stm/divaids.hpp
stm/toolaids/binmsg.hpp
stm/toolaids/impl/toolaidsconfig.hpp
stm/impl/filesysxaids.hpp
assert.h stdio.h string.h ctype.h
errno.hfstream sstream algorithmstdexcept utility
memory iterator
string locale
list map
set
boost/static_assert.hpp
boost/type_traits.hpp
boost/algorithm/string.hpp boost/filesystem/operations.hpp boost/filesystem/path.hpp boost/filesystem/exception.hpp boost/function.hpp boost/bind.hpp
stm/system.h stm/match.h stm/impl/aidsconfig.hppstm/debugaids.hpp
stm/impl/divxaids.hpp
limits.h setjmp.h iomanip functional boost/range.hpp boost/integer.hpp boost/integer_traits.hppboost/integer/static_log2.hpp boost/utility/enable_if.hpp boost/cstdint.hpp
stm/internal/config.h
stm/toolaids/impl/xbinmsg.hpp
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.39 xmsgtimestamp.hpp File Reference 565
This graph shows which files directly or indirectly include this file:
xmcbspmsg.hpp
mcbspmsg.hpp
toolaids.hpp
Namespaces
• namespace stm• namespace stm::tools• namespace stm::tools::local
Classes
• class stm::tools::local::xMcBspMessage< ContextT >
stm::tools::McBspMessage implementation base class template.
• class stm::tools::local::xMcBspMessage< ContextT >::IdentificationType managing the identification of a McBSP message in a byte stream.
Defines
• #define STM_TOOLAIDS_XMCBSPMSG_HPP
13.38.2 Define Documentation
13.38.2.1 #define STM_TOOLAIDS_XMCBSPMSG_HPP
Definition at line 496 of file xmcbspmsg.hpp.
13.39 xmsgtimestamp.hpp File Reference
13.39.1 Detailed Description
Implementation of the message timestamp model.
Version:
1.04-r5
Date:
2006-11-30 12:41:48 (demx18a6)
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.39 xmsgtimestamp.hpp File Reference 566
Author:
Tom MichaelisSysToMathWittelsbacherstr. 7D-80469 Munich
Contact:
http://www.SysToMath.commailto:[email protected]
This C++ inline file contains inline definitions and declarations implementing the message timestampmodel. They are declared in the C++ header file msgtimestamp.hpp belonging to the SysToMath ToolAids C++ Library stmtoolaids.
Definition in file xmsgtimestamp.hpp.
#include <stddef.h>
#include <stm/divaids.hpp>
#include <stm/toolaids/impl/toolaidsconfig.hpp>
Include dependency graph for xmsgtimestamp.hpp:
xmsgtimestamp.hpp
stddef.h
stm/divaids.hpp
stm/toolaids/impl/toolaidsconfig.hppstm/impl/divxaids.hpp
limits.h setjmp.herrno.h locale iomanip
fstreamsstream
utility algorithm functional
exception
stdexcept
string
set boost/range.hpp boost/integer.hpp boost/integer_traits.hpp boost/integer/static_log2.hpp boost/utility/enable_if.hpp boost/type_traits.hpp boost/cstdint.hpp boost/mpl/bool.hpp stm/basetype.h
stm/system.h
stm/match.h
stm/impl/aidsconfig.hpp
stm/debugaids.hpp
stm/internal/config.h
stm/impl/debugxaids.hpp
stdio.h iosiostream
This graph shows which files directly or indirectly include this file:
xmsgtimestamp.hpp
msgtimestamp.hpp
xbinmsg.hpp
toolaids.hpp
binmsg.hpp
xdspmsg.hpp xlvdspacket.hpp xmcbspmsg.hpp xprintkbinmsg.hpp
dspmsg.hpp
dspmsg.cpp
lvdspacket.hpp mcbspmsg.hpp printkbinmsg.hpp
Namespaces
• namespace stm
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.40 xprintkbinmsg.hpp File Reference 567
• namespace stm::tools• namespace stm::tools::local
Classes
• class stm::tools::local::xMsgTimestampstm::tools::MsgTimestamp implementation base class.
Defines
• #define STM_TOOLAIDS_XMSGTIMESTAMP_HPP
13.39.2 Define Documentation
13.39.2.1 #define STM_TOOLAIDS_XMSGTIMESTAMP_HPP
Definition at line 321 of file xmsgtimestamp.hpp.
13.40 xprintkbinmsg.hpp File Reference
13.40.1 Detailed Description
Implementation of the PrintkBin message model.
Version:
1.04-r5
Date:
2006-11-30 12:41:49 (demx18a6)
Author:
Tom MichaelisSysToMathWittelsbacherstr. 7D-80469 Munich
Contact:
http://www.SysToMath.commailto:[email protected]
This C++ inline file contains inline definitions and declarations implementing the PrintkBin messagemodel. They are declared in the C++ header file printkbinmsg.hpp belonging to the SysToMath ToolAids C++ Library stmtoolaids.
Definition in file xprintkbinmsg.hpp.
#include <stddef.h>
#include <exception>
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
13.40 xprintkbinmsg.hpp File Reference 568
#include <stm/filesysaids.hpp>
#include <stm/divaids.hpp>
#include <stm/toolaids/binmsg.hpp>
#include <stm/toolaids/impl/toolaidsconfig.hpp>
Include dependency graph for xprintkbinmsg.hpp:
xprintkbinmsg.hpp
stddef.h exception
stm/filesysaids.hpp
stm/divaids.hpp
stm/toolaids/binmsg.hpp
stm/toolaids/impl/toolaidsconfig.hpp
stm/impl/filesysxaids.hpp
assert.h stdio.h string.h ctype.h
errno.hfstream sstream algorithmstdexcept utility
memory iterator
string locale
list map
set
boost/static_assert.hpp
boost/type_traits.hpp
boost/algorithm/string.hpp boost/filesystem/operations.hpp boost/filesystem/path.hpp boost/filesystem/exception.hpp boost/function.hpp boost/bind.hpp
stm/system.h stm/match.h stm/impl/aidsconfig.hppstm/debugaids.hpp
stm/impl/divxaids.hpp
limits.h setjmp.h iomanip functional boost/range.hpp boost/integer.hpp boost/integer_traits.hppboost/integer/static_log2.hpp boost/utility/enable_if.hpp boost/cstdint.hpp
stm/internal/config.h
stm/toolaids/impl/xbinmsg.hpp
This graph shows which files directly or indirectly include this file:
xprintkbinmsg.hpp
printkbinmsg.hpp
toolaids.hpp
Namespaces
• namespace stm• namespace stm::tools• namespace stm::tools::local
Classes
• class stm::tools::local::xPrintkBinMessage< ContextT >
• class stm::tools::local::xPrintkBinMessage< ContextT >::Identification
Defines
• #define STM_TOOLAIDS_XPRINTKBINMSG_HPP
13.40.2 Define Documentation
13.40.2.1 #define STM_TOOLAIDS_XPRINTKBINMSG_HPP
Definition at line 555 of file xprintkbinmsg.hpp.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14 SysToMath C++ Libraries Implementation Example Documentation 569
14 SysToMath C++ Libraries Implementation Example Documen-tation
14.1 divaidstest.cpp
This example is a CLI based console C++ program demonstrating the usage and testing the implementationof the SysToMath Aids C++ Library module DivAids: Diverse Aids.
/* ***** BEGIN LICENSE BLOCK ****** Version: MPL 1.1/GPL 2.0/LGPL 2.1
** The contents of this file are subject to the Mozilla Public License Version
* 1.1 (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
* http://www.mozilla.org/MPL/
** Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
* for the specific language governing rights and limitations under the
* License.
** The Original Code is the SysToMath C++ Libraries package (LibStmCpp).
** The Initial Developer of the Original Code is
* Tom Michaelis, SysToMath.
* Portions created by the Initial Developer are Copyright (C) 2006-2008
* the Initial Developer. All Rights Reserved.
** Contributor(s):
** Alternatively, the contents of this file may be used under the terms of
* either the GNU General Public License Version 2 or later (the "GPL"), or
* the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
* in which case the provisions of the GPL or the LGPL are applicable instead
* of those above. If you wish to allow use of your version of this file only
* under the terms of either the GPL or the LGPL, and not to allow others to
* use your version of this file under the terms of the MPL, indicate your
* decision by deleting the provisions above and replace them with the notice
* and other provisions required by the GPL or the LGPL. If you do not delete
* the provisions above, a recipient may use your version of this file under
* the terms of any one of the MPL, the GPL or the LGPL.
** ***** END LICENSE BLOCK ***** */
/******************************************************************************* First Release 2006-11-04
******************************************************************************/
const char *Copyright = "(C) 2006-2008 Tom Michaelis, SysToMath";const char *Version = "1.10-r347";
#include <iostream>#include <stm/divaids.hpp>
int main (int argc, char *argv []){
typedef stm::integral_range<stm::word> Ir;typedef stm::integral_set<Ir> Is;Is is;std::cout << "Is is: is = ’" << is << "’\n";is |= Ir (5, 8);std::cout << "is |= Ir (5, 8): is = ’" << is << "’\n";
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.2 filesystest.cpp 570
is -= Ir (4, 7);std::cout << "is -= Ir (4, 7): is = ’" << is << "’\n";is |= 88;std::cout << "is |= 88: is = ’" << is << "’\n";is &= Ir (3,88);std::cout << "is &= Ir (3,88): is = ’" << is << "’\n";is ^= Ir (32,78);std::cout << "is ^= Ir (32,78): is = ’" << is << "’\n";is.assign ("7-35, 44-89");std::cout << "is.assign (\"7-35, 44-89\"): is = ’" << is << "’\n";return 0;
}
14.2 filesystest.cpp
This example is a CLI based console C++ program demonstrating the usage and testing the implementationof the SysToMath Aids C++ Library module FilesysAids: File System Aids.
/* ***** BEGIN LICENSE BLOCK ****** Version: MPL 1.1/GPL 2.0/LGPL 2.1
** The contents of this file are subject to the Mozilla Public License Version
* 1.1 (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
* http://www.mozilla.org/MPL/
** Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
* for the specific language governing rights and limitations under the
* License.
** The Original Code is the SysToMath C++ Libraries package (LibStmCpp).
** The Initial Developer of the Original Code is
* Tom Michaelis, SysToMath.
* Portions created by the Initial Developer are Copyright (C) 2006-2008
* the Initial Developer. All Rights Reserved.
** Contributor(s):
** Alternatively, the contents of this file may be used under the terms of
* either the GNU General Public License Version 2 or later (the "GPL"), or
* the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
* in which case the provisions of the GPL or the LGPL are applicable instead
* of those above. If you wish to allow use of your version of this file only
* under the terms of either the GPL or the LGPL, and not to allow others to
* use your version of this file under the terms of the MPL, indicate your
* decision by deleting the provisions above and replace them with the notice
* and other provisions required by the GPL or the LGPL. If you do not delete
* the provisions above, a recipient may use your version of this file under
* the terms of any one of the MPL, the GPL or the LGPL.
** ***** END LICENSE BLOCK ***** */
/******************************************************************************* First Release 2006-09-24
******************************************************************************/
const char *Copyright = "(C) 2006-2008 Tom Michaelis, SysToMath";const char *Version = "1.10-r347";
static const char *man [] =
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.2 filesystest.cpp 571
{"NAME "," filesystest - test classes and class templates of stm/filesysaids.hpp "," ","SYNOPSIS "," filesystest [(--option=<flag>)...] [--stem=<spec>] <spec> "," filesystest --help "," filesystest --version "," ","DESCRIPTION "," <flag> is one of "," NoCharClass "," NoBracketExpr "," UseExtRegularExpr "," UseMultipleDirOperator "," NoBraceExpansion "," SingleSpec "," NoDirectories "," NoPlainFiles "," StoreRelative "};
#include <string>#include <iostream>#include <exception>#include <stdexcept>#include <stm/filesysaids.hpp>#include <stm/loggeraids.hpp>#include <stm/getopts.h>
int main (int argc, char *argv []){
typedef stm::logger<> Logger;int ret = 0;Logger logger;logger.setConsole ();
// Prepare the command line.const StmCmdOptSpec optSpec [] ={
{StmId (h), "h\0help\0", StmCmdOptSpecOnlyOption},{StmId (V), "V\0version\0", StmCmdOptSpecOnlyOption},{StmId (f), "f\0flag\0", StmCmdOptSpecRequiresArg},{StmId (s), "s\0stem\0", StmCmdOptSpecRequiresArg},{0, NULL}
};StmCmdLine cmdLine = stmCmdLineCreate (argc, const_cast<const char **> (argv), optSpec);const char *prog = stmCmdLineGetProg (cmdLine);
try{
// Configure stm::rectrl to throw std::logic_error, if appropriate.StmRectrlTry (ErrorEnv);
// Initialize boost::filesystem::path.boost::filesystem::initial_path ();boost::filesystem::path::default_name_check (boost::filesystem::native);
// Evaluate command line options.stm::dword flags = stm::filespec::NoFlags;std::string options;std::string stem;StmDword optId;for (optId = stmCmdLineGetFirstOptionId (cmdLine);
optId;
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.2 filesystest.cpp 572
optId = stmCmdLineGetNextOptionId (cmdLine)){
if (optId == StmId (h)){
FILE *pp;if (! (pp = popen ("more", "w"))){
throw std::runtime_error (StmDebugAidsErrmsg ("popen failed"));}ret =
stmPrintManual (pp, 79,Version, Copyright, StmElements (man), man) < 0 ?
1 : // Error.2; // Success.
if (pclose (pp)){
throw std::runtime_error (StmDebugAidsErrmsg ("pclose failed"));}return ret;
}if (optId == StmId (V)){
std::cout << Version << std::endl;return 2;
}if (optId == StmId (f)){
std::string flag = stmCmdLineGetCurrentOptionArg (cmdLine);if (!options.empty ()) options += " | ";if (flag == "NoCharClass"){
flags |= stm::filespec::NoCharClass;options += "NoCharClass";continue;
}if (flag == "NoBracketExpr"){
flags |= stm::filespec::NoBracketExpr;options += "NoBracketExpr";continue;
}if (flag == "UseExtRegularExpr"){
flags |= stm::filespec::UseExtRegularExpr;options += "UseExtRegularExpr";continue;
}if (flag == "UseMultipleDirOperator"){
flags |= stm::filespec::UseMultipleDirOperator;options += "UseMultipleDirOperator";continue;
}if (flag == "NoBraceExpansion"){
flags |= stm::filespeclist::NoBraceExpansion;options += "NoBraceExpansion";continue;
}if (flag == "SingleSpec"){
flags |= stm::filespeclist::SingleSpec;options += "SingleSpec";continue;
}if (flag == "NoDirectories"){
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.2 filesystest.cpp 573
flags |= stm::filefind<>::NoDirectories;options += "NoDirectories";continue;
}if (flag == "NoPlainFiles"){
flags |= stm::filefind<>::NoPlainFiles;options += "NoPlainFiles";continue;
}if (flag == "StoreRelative"){
flags |= stm::filefind<>::StoreRelative;options += "StoreRelative";continue;
}if (stmCmdLinePrintfErrbuf
(cmdLine,"%s: option %s: %s: illegal flag: aborted.\n",prog,stmCmdLineGetCurrentOptionName (cmdLine),flag.c_str ()
) < 0){
throw std::runtime_error (StmDebugAidsErrmsg ("stmCmdLinePrintfErrbuf failed"));}stmCmdLineSetOpterr (cmdLine, StmCmdLineOptionArgError);continue;
}if (optId == StmId (s)){
if (stem.empty ()){
stem = stmCmdLineGetCurrentOptionArg (cmdLine);}else{
if (stmCmdLinePrintfErrbuf(
cmdLine,"%s: option %s is allowed at most once: aborted.\n",prog,stmCmdLineGetCurrentOptionName (cmdLine)
) < 0){
throw std::runtime_error (StmDebugAidsErrmsg ("stmCmdLinePrintfErrbuf failed"));}stmCmdLineSetOpterr (cmdLine, StmCmdLineOptionArgError);
}continue;
}}
// Exit on error.if (stmCmdLineGetOpterr (cmdLine)){
std::string what (stmCmdLineGetErrbuf (cmdLine));if (what.find (prog)){
what = std::string (prog) + ": " + what;}Logger elogger (std::cerr);elogger << what << std::endl;elogger (Logger::AutoInd | Logger::NoPara);stmPrintSynopsis (stderr, 79, StmElements (man), man);return 1;
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.2 filesystest.cpp 574
}if (stmCmdLineGetArgCount (cmdLine) - stmCmdLineGetCurrentArgIndex (cmdLine) != 1){
Logger elogger (std::cerr);elogger << prog
<< ": exactly one <spec> argument must be supplied: aborted."<< std::endl;
elogger (Logger::AutoInd | Logger::NoPara);stmPrintSynopsis (stderr, 79, StmElements (man), man);return 1;
}
// Do the command operation.logger << " - initial path: "
<< Logger::mkPath (boost::filesystem::initial_path ().string ())<< std::endl;
logger (Logger::Indent | Logger::NoPara);std::string spec =
stmCmdLineGetArg(
cmdLine,stmCmdLineGetCurrentArgIndex (cmdLine)
);logger << " - spec: "
<< spec<< std::endl;
logger (Logger::Indent | Logger::NoPara);logger << " - flags: "
<< (options.empty () ? std::string ("NoFlags") : options)<< std::endl;
logger (Logger::Indent | Logger::NoPara);logger << " - stem: "
<< (stem.empty () ? std::string ("-empty-") : stem)<< std::endl;
logger (Logger::Indent | Logger::NoPara);stm::filefind<> fileFind(
spec,flags,stem
);logger.paragraph ();for (stm::filefind<>::const_iterator it = fileFind.begin ();
it != fileFind.end ();++ it)
{logger << " " << Logger::mkPath (*it) << std::endl;logger (Logger::Indent | Logger::NoPara);
}}catch (std::exception &exc){
ret = 1;std::string what (exc.what ());if (what.empty ()) what = "Unspecified error";else if (what [what.size () - 1] == ’.’) what.erase (what.size () - 1);logger.paragraph ();logger << " - " << what << ": " << prog << " aborted.\n";logger (Logger::Indent | Logger::NoPara);
}catch (...){
ret = 1;logger.paragraph ();logger << " - Unknown error: " << prog << " aborted.\n";logger (Logger::Indent | Logger::NoPara);
}
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.3 gencrctest.cpp 575
return ret;}
14.3 gencrctest.cpp
This example is a console C++ program demonstrating the usage and testing the implementation of theSysToMath Aids C++ Library module GenCRC: Generic CRC Generation.
/* ***** BEGIN LICENSE BLOCK ****** Version: MPL 1.1/GPL 2.0/LGPL 2.1
** The contents of this file are subject to the Mozilla Public License Version
* 1.1 (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
* http://www.mozilla.org/MPL/
** Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
* for the specific language governing rights and limitations under the
* License.
** The Original Code is the SysToMath C++ Libraries package (LibStmCpp).
** The Initial Developer of the Original Code is
* Tom Michaelis, SysToMath.
* Portions created by the Initial Developer are Copyright (C) 2003-2008
* the Initial Developer. All Rights Reserved.
** Contributor(s):
** Alternatively, the contents of this file may be used under the terms of
* either the GNU General Public License Version 2 or later (the "GPL"), or
* the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
* in which case the provisions of the GPL or the LGPL are applicable instead
* of those above. If you wish to allow use of your version of this file only
* under the terms of either the GPL or the LGPL, and not to allow others to
* use your version of this file under the terms of the MPL, indicate your
* decision by deleting the provisions above and replace them with the notice
* and other provisions required by the GPL or the LGPL. If you do not delete
* the provisions above, a recipient may use your version of this file under
* the terms of any one of the MPL, the GPL or the LGPL.
** ***** END LICENSE BLOCK ***** */
/******************************************************************************* First Release 2003-03-15
******************************************************************************/
const char *Copyright = "(C) 2003-2008 Tom Michaelis, SysToMath";const char *Version = "1.10-r347";
#include <string>#include <iostream>#include <boost/crc.hpp>#include <stm/divaids.hpp>#include <stm/gencrc.hpp>
int main (int argc, char *argv []){
// Define CRC types.typedef stm::crc<unsigned short> crc16;
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.3 gencrctest.cpp 576
typedef stm::crc<unsigned int> crc32;
// Buffers to check.std::string hello = "Hello ";std::string world = "world!";
// CRC16 generator polynomial as designated by CCITT (Comitonsultatif// International Tgraphique et Tphonique).crc16 ccittcheck (0x1021, 0xffff);
// CCITT CRC16 check sum of the concatenation of the strings hello and// world.unsigned short ccittCheckSum =
ccittcheck(
ccittcheck(
hello.begin (),hello.end ()
),world.c_str (),world.size ()
);
// CRC16 generator polynomial as used by BISYNCH and ARC.crc16 crc16check (0x8005, 0, true);
// CRC16 check sum of the concatenation of the strings hello and world.unsigned short crc16CheckSum =
crc16check(
crc16check(
hello.begin (),hello.end ()
),world.c_str (),world.size (),true
);
// CRC16 generator polynomial as used by XMODEM.crc16 xmodemcheck (0x8408, 0, true);
// XMODEM check sum of the concatenation of the strings hello and world.unsigned short xmodemCheckSum =
xmodemcheck(
xmodemcheck(
hello.begin (),hello.end ()
),world.c_str (),world.size (),true
);
// Commonly used CRC32 generator polynomial.crc32 crc32check (0x04C11DB7, 0xFFFFFFFF, true);
// CRC32 check sum of the concatenation of the strings hello and world.unsigned int crc32CheckSum =
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.4 smartptrtest.cpp 577
crc32check(
crc32check(
hello.begin (),hello.end ()
),world.c_str (),world.size (),true,0xFFFFFFFF
);
std::string helloWorld = hello + world;boost::crc_ccitt_type boostccitt;boostccitt.process_bytes (helloWorld.c_str (), helloWorld.size ());std::cout << "CCITT: "
<< stm::hexfmt<unsigned short, stm::fmtflags::LowerCase> (ccittCheckSum)<< ", "<< stm::hexfmt<unsigned short, stm::fmtflags::LowerCase> (boostccitt ())<< std::endl;
boost::crc_16_type boostcrc16;boostcrc16.process_bytes (helloWorld.c_str (), helloWorld.size ());std::cout << "CRC16: "
<< stm::hexfmt<unsigned short, stm::fmtflags::LowerCase> (crc16CheckSum)<< ", "<< stm::hexfmt<unsigned short, stm::fmtflags::LowerCase> (boostcrc16 ())<< std::endl;
boost::crc_xmodem_type boostxmodem;boostxmodem.process_bytes (helloWorld.c_str (), helloWorld.size ());std::cout << "XMODEM: "
<< stm::hexfmt<unsigned short, stm::fmtflags::LowerCase> (xmodemCheckSum)<< ", "<< stm::hexfmt<unsigned short, stm::fmtflags::LowerCase> (boostxmodem ())<< std::endl;
boost::crc_32_type boostcrc32;boostcrc32.process_bytes (helloWorld.c_str (), helloWorld.size ());std::cout << "CRC32: "
<< stm::hexfmt<unsigned int, stm::fmtflags::LowerCase> (crc32CheckSum)<< ", "<< stm::hexfmt<unsigned int, stm::fmtflags::LowerCase> (boostcrc32 ())<< std::endl;
return 0;}
14.4 smartptrtest.cpp
This example is a CLI based console C++ program demonstrating the usage and testing the implementationof the SysToMath Aids C++ Library module SmartptrAids: Smart Pointer Aids.
/* ***** BEGIN LICENSE BLOCK ****** Version: MPL 1.1/GPL 2.0/LGPL 2.1
** The contents of this file are subject to the Mozilla Public License Version
* 1.1 (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
* http://www.mozilla.org/MPL/
** Software distributed under the License is distributed on an "AS IS" basis,
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.4 smartptrtest.cpp 578
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
* for the specific language governing rights and limitations under the
* License.
** The Original Code is the SysToMath C++ Libraries package (LibStmCpp).
** The Initial Developer of the Original Code is
* Tom Michaelis, SysToMath.
* Portions created by the Initial Developer are Copyright (C) 2006-2008
* the Initial Developer. All Rights Reserved.
** Contributor(s):
** Alternatively, the contents of this file may be used under the terms of
* either the GNU General Public License Version 2 or later (the "GPL"), or
* the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
* in which case the provisions of the GPL or the LGPL are applicable instead
* of those above. If you wish to allow use of your version of this file only
* under the terms of either the GPL or the LGPL, and not to allow others to
* use your version of this file under the terms of the MPL, indicate your
* decision by deleting the provisions above and replace them with the notice
* and other provisions required by the GPL or the LGPL. If you do not delete
* the provisions above, a recipient may use your version of this file under
* the terms of any one of the MPL, the GPL or the LGPL.
** ***** END LICENSE BLOCK ***** */
/******************************************************************************* First Release 2006-09-24
******************************************************************************/
const char *Copyright = "(C) 2006-2008 Tom Michaelis, SysToMath";const char *Version = "1.10-r347";
static const char *man [] ={"NAME "," smartptrtest - test classes and class templates of smartptraids.hpp "," ","SYNOPSIS "," smartptrtest [--load-only] [--type=<test-type>] [--mode=<test-mode>] "," [--archive=<archive-type>] [--dir=<directory>] "," smartptrtest --help [<option-name>...] "," smartptrtest --version "," ","DESCRIPTION "," The command ’smartptrtest’ tests classes and class templates of the "" SysToMath library ’libstmaids’ declared in the C++ header file "" ’stm/smartptraids.hpp’. "," Unless option --load-only is used, at first boost serialization "" archives of the types configured by option --archive containing "" reference data of test types selected by option --type in the modes "" given by option --mode are created. Then these archives are loaded "" and their contents are compared with the reference data used to create"" the archives. "," The archive files are stored in the directory supplied by option --dir"" and are named ’test-<test-mode>_<test-type>.<archive-type>’. "," The test protocol is written to standard output. "" ","OPTIONS "," --help "," -h If no argument <option-name> follows, print the command man "" page on standard output, else the description of the options "" <option-name> and exit with exit code 2. The arguments "" <option-name> shall be stated without leading ’-’ or ’--’. "," ",
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.4 smartptrtest.cpp 579
" --version "," -V Print version info on standard output and exit with exit code "" 2. "," "," --load-only "," -l "," Do not create boost serialization archives before loading them."" Assume that the archives to be loaded already exist. "," By default all archives needed are created before loading them "" again. "," "," --type=<test-type> "," -t test-type "," Test type templates to be handled: <test-type> is one of the "" following arguments: "," ’ptr’: TestPtr test type template "," ’set’: TestSet test type template, "," ’all’: all of the above test type templates (default). "," "," --mode=<test-mode> "," -m test-mode "," Test modes to be handled: <test-mode> is one of the following "" arguments: "," ’injective’ or ’inj’: injective_ptr based test mode, "," ’bijective’ or ’bij’: bijective_ptr based test mode, "," ’all’: all of the above test modes (default). "," "," --archive=<archive-type> "," -a <archive-type> "," Boost serialization archive types to be handled: <archive-type>"" is one of the following arguments: "," ’txt’: text archive type "," ’bin’: binary archive type, "," ’xml’: XML archive type, "," ’all’: all of the above archive types (default). "," "," --dir=<directory> "," -d <directory> "," Set <directory> as the directory where archive files are "" created and loaded from. By default this is the current "" directory. "};
#include <string>#include <iostream>#include <exception>#include <stdexcept>
#include <stm/smartptraids.hpp>#include <stm/filesysaids.hpp>#include <stm/divaids.hpp>#include <stm/debugaids.hpp>#include <stm/loggeraids.hpp>#include <stm/getopts.h>
// Example for stm::injective_ptr showing the definition of a pointer// variable of an incomplete element type.struct Xyz;typedef stm::injective_ptr<Xyz> XyzPtr; // Xyz needs not be complete here.XyzPtr ptr1; // Xyz needs not be complete here.
bool operator< (const Xyz &e1, const Xyz &e2);
struct Xyz{
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.4 smartptrtest.cpp 580
Xyz (stm::dword id = 0, XyzPtr ptr = XyzPtr ()) :id (id),ptr (ptr)
{}
stm::dword id;XyzPtr ptr;
};
XyzPtr ptr2 = Xyz (3); // Xyz has to be complete here.Xyz xyz1 = *ptr2;Xyz xyz2 (7, ptr1);const Xyz *p = xyz2.ptr.get ();
bool operator< (const Xyz &e1, const Xyz &e2){
returne1.id < e2.id ||e1.id == e2.id && e1.ptr < e2.ptr;
}
// Example for stm::injective_set showing the definition of a set// variable of an incomplete value type.class Node;typedef stm::bijective<Node>::set NodeSet; // Node needs not be complete here.NodeSet nodes; // Node needs not be complete here.
class Slot{public:
Slot (stm::dword disp = 0) :disp_ (disp)
{}
Slot child (stm::dword index) const{
return children_ [index];}
stm::dword disp (stm::dword index) const{
return children_ [index].disp_;}
bool operator< (const Slot &other) const{
returnchildren_.size () < other.children_.size () ||children_.size () == other.children_.size () &&disp_ < other.disp_;
}
private:std::vector<Slot> children_;stm::dword disp_;
};
class Node{public:
typedef NodeSet::accessor Ptr;
Node (const Slot &root) :index_ (0),slot_ (root),offset_ (0)
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.4 smartptrtest.cpp 581
{}
Node (Ptr parent, stm::dword index) :parent_ (parent),index_ (index)
{StmDebugAidsVerify (parent_);slot_ = parent_ -> slot ().child (index_);offset_ = parent_ -> offset () + parent_ -> slot ().disp (index_);
}
const Slot &slot () const{
return slot_;}
stm::dword offset () const{
return offset_;}
bool operator< (const Node &other) const{
returnoffset () < other.offset () ||offset () == other.offset () &&slot () < other.slot ();
}
private:Ptr parent_;stm::dword index_;Slot slot_;stm::dword offset_;
};
Slot rootSlot;Node::Ptr rootNode = nodes.insert (Node (rootSlot)); // Node must be complete here.
// Functional tests.struct Operation{
struct Type{
enum{
Ptr = 0x00000001,Set = 0x00000002,All = Ptr | Set
};};
struct Mode{
enum{
Inj = 0x00000001,Bij = 0x00000002,All = Inj | Bij
};};
struct Archive{
enum{
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.4 smartptrtest.cpp 582
Txt = 0x00000001,Bin = 0x00000002,Xml = 0x00000004,All = Txt | Bin | Xml
};};
Operation () :loadOnly (false),type (Type::All),mode (Mode::All),archive (Archive::All),dir (boost::filesystem::initial_path ())
{}
bool loadOnly;stm::dword type;stm::dword mode;stm::dword archive;stm::path<> dir;
};
template <class Policy>struct TestPtr{
typedef typename stm::injective<
stm::dword,std::less<stm::dword>,std::allocator<stm::dword>,Policy
>::ptr DwordPtr;
typedef typename stm::injective<
std::string,std::less<std::string>,std::allocator<std::string>,Policy
>::ptr StrPtr;
TestPtr () {}
TestPtr(
stm::dword dw0,stm::dword dw1,const std::string &str0,const std::string &str1
) :dwptr0 (dw0),dwptr1 (dw1),strptr0 (str0),strptr1 (str1)
{strptr2 = strptr0;
}
template <class ArchiveT>void save (const std::string &file) const{
std::ofstream ofs (file.c_str ());ArchiveT oa (ofs);oa << BOOST_SERIALIZATION_NVP (dwptr0);oa << BOOST_SERIALIZATION_NVP (dwptr1);oa << BOOST_SERIALIZATION_NVP (strptr0);
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.4 smartptrtest.cpp 583
oa << BOOST_SERIALIZATION_NVP (strptr1);oa << BOOST_SERIALIZATION_NVP (strptr2);return;
}
template <class ArchiveT>void load (const std::string &file){
std::ifstream ifs (file.c_str ());ArchiveT ia (ifs);ia >> BOOST_SERIALIZATION_NVP (dwptr0);ia >> BOOST_SERIALIZATION_NVP (dwptr1);ia >> BOOST_SERIALIZATION_NVP (strptr0);ia >> BOOST_SERIALIZATION_NVP (strptr1);ia >> BOOST_SERIALIZATION_NVP (strptr2);return;
}
void tell (const std::string &title) const{
std::cout << title<< std::endl;
if (dwptr0){
std::cout << " DwordPtr dwptr0: value = "<< *dwptr0<< ", addr = "<< dwptr0<< std::endl;
}if (dwptr1){
std::cout << " DwordPtr dwptr1: value = "<< *dwptr1<< ", addr = "<< dwptr1<< std::endl;
}if (strptr0){
std::cout << " StrPtr strptr0: str = ’"<< *strptr0<< "’, len = "<< stm::dword (strptr0 -> size ())<< ", addr = "<< strptr0<< std::endl;
}if (strptr1){
std::cout << " StrPtr strptr1: str = ’"<< *strptr1<< "’, len = "<< stm::dword (strptr1 -> size ())<< ", addr = "<< strptr1<< std::endl;
}if (strptr2){
std::cout << " StrPtr strptr2: str = ’"<< *strptr2<< "’, len = "<< stm::dword (strptr2 -> size ())<< ", addr = "<< strptr2<< std::endl;
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.4 smartptrtest.cpp 584
}const typename DwordPtr::range_type &dwRange = dwptr0.range ();StmDebugAidsVerify (dwptr1.range () == dwRange);std::cout << " DwordPtr range: addr = "
<< stm::hexfmt<const typename DwordPtr::range_type *> (&dwRange)<< ", "<< stm::dword (dwRange.size ())<< (dwRange.size () ?
dwRange.size () > 1 ? " entries:" :" entry:" : " entries")
<< std::endl;for (typename DwordPtr::range_type::iterator it = dwRange.begin ();
it != dwRange.end ();++ it)
{std::cout << " value = "
<< *it<< ", addr = "<< stm::hexfmt<const stm::dword *> (&*it)<< std::endl;
}const typename StrPtr::range_type &strRange = strptr0.range ();StmDebugAidsVerify (strptr1.range () == strRange);StmDebugAidsVerify (strptr2.range () == strRange);std::cout << " StrPtr range: addr = "
<< stm::hexfmt<const typename StrPtr::range_type *> (&strRange)<< ", "<< stm::dword (strRange.size ())<< (strRange.size () ?
strRange.size () > 1 ? " entries:" :" entry:" : " entries")
<< std::endl;for (typename StrPtr::range_type::iterator it = strRange.begin ();
it != strRange.end ();++ it)
{std::cout << " value = ’"
<< *it<< "’, addr = "<< stm::hexfmt<const std::string *> (&*it)<< std::endl;
}std::cout << std::endl;return;
}
bool operator== (const TestPtr &other){
return
*dwptr0 == *other.dwptr0 &&
*dwptr1 == *other.dwptr1 &&
*strptr0 == *other.strptr0 &&
*strptr1 == *other.strptr1 &&
*strptr2 == *other.strptr2;}
DwordPtr dwptr0;DwordPtr dwptr1;StrPtr strptr0;StrPtr strptr1;StrPtr strptr2;
};
template <class Policy>void testptr (const Operation &op);
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.4 smartptrtest.cpp 585
template <class Policy>struct TestSet{
typedef typename stm::injective<
stm::dword,std::less<stm::dword>,std::allocator<stm::dword>,Policy
>::set DwordSet;
typedef typename stm::injective<
std::string,std::less<std::string>,std::allocator<std::string>,Policy
>::set StrSet;
TestSet () :dwset (),strset (),dwptr0 (dwset.nil ()),dwptr1 (dwset.nil ()),strptr0 (strset.nil ()),strptr1 (strset.nil ())
{}
void define(
stm::dword dw0 = 0,stm::dword dw1 = 0,const std::string &str0 = std::string (),const std::string &str1 = std::string ()
){
dwptr0 = dwset.insert (dw0);dwptr1 = dwset.insert (dw1);strptr0 = strset.insert (str0);strptr1 = strset.insert (str1);long str0count = strptr0.use_count ();{
bool inserted = true;typename StrSet::accessor strptr2 = strset.insert (str0, inserted);StmDebugAidsVerify (dwptr0 && *dwptr0 == dw0);StmDebugAidsVerify (dwptr1 && *dwptr1 == dw1);StmDebugAidsVerify (strptr0 && *strptr0 == str0);StmDebugAidsVerify (strptr1 && *strptr1 == str1);StmDebugAidsVerify (strptr2.get () == strptr0.get () && !inserted);StmDebugAidsVerify (!StrSet::accessor::is_surjective () ||
strptr0.use_count () == str0count + 1);}StmDebugAidsVerify (!StrSet::accessor::is_surjective () ||
strptr0.use_count () == str0count);return;
}
template <class ArchiveT>void save (const std::string &file) const{
std::ofstream ofs (file.c_str ());ArchiveT oa (ofs);oa << BOOST_SERIALIZATION_NVP (dwptr0);oa << BOOST_SERIALIZATION_NVP (dwptr1);oa << BOOST_SERIALIZATION_NVP (strptr0);oa << BOOST_SERIALIZATION_NVP (strptr1);
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.4 smartptrtest.cpp 586
return;}
template <class ArchiveT>void load (const std::string &file){
std::ifstream ifs (file.c_str ());ArchiveT ia (ifs);ia >> BOOST_SERIALIZATION_NVP (dwptr0);ia >> BOOST_SERIALIZATION_NVP (dwptr1);ia >> BOOST_SERIALIZATION_NVP (strptr0);ia >> BOOST_SERIALIZATION_NVP (strptr1);return;
}
void tell (const std::string &title) const{
std::cout << title<< std::endl;
if (strptr0){
typename StrSet::accessor strptr2 = strset.find (*strptr0);StmDebugAidsVerify (strptr2);StmDebugAidsVerify (*strptr2 == *strptr0);
}if (dwptr0){
std::cout << " DwordSet::accessor dwptr0: value = "<< *dwptr0<< ", addr = "<< stm::hexfmt<const stm::dword *> (dwptr0.get ())<< std::endl;
}if (dwptr1){
std::cout << " DwordSet::accessor dwptr1: value = "<< *dwptr1<< ", addr = "<< stm::hexfmt<const stm::dword *> (dwptr1.get ())<< std::endl;
}if (strptr0){
std::cout << " StrSet::accessor strptr0: str = ’"<< *strptr0<< "’, len = "<< stm::dword (strptr0 -> size ())<< ", addr = "<< stm::hexfmt<const std::string *> (strptr0.get ())<< std::endl;
}if (strptr1){
std::cout << " StrSet::accessor strptr1: str = ’"<< *strptr1<< "’, len = "<< stm::dword (strptr1 -> size ())<< ", addr = "<< stm::hexfmt<const std::string *> (strptr1.get ())<< std::endl;
}std::cout << " dwset: addr = "
<< stm::hexfmt<const DwordSet *> (&dwset)<< ", "<< stm::dword (dwset.size ())<< (dwset.size () ? dwset.size () > 1 ? " entries:" : " entry:" : " entries")<< std::endl;
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.4 smartptrtest.cpp 587
for (typename DwordSet::range_type::iterator it = dwset.begin ();it != dwset.end ();++ it)
{std::cout << " value = "
<< *it<< ", addr = "<< stm::hexfmt<const stm::dword *> (&*it)<< std::endl;
}std::cout << " strset: addr = "
<< stm::hexfmt<const StrSet *> (&strset)<< ", "<< stm::dword (strset.size ())<< (strset.size () ? strset.size () > 1 ? " entries:" : " entry:" : " entries")<< std::endl;
for (typename StrSet::range_type::iterator it = strset.begin ();it != strset.end ();++ it)
{std::cout << " value = ’"
<< *it<< "’, addr = "<< stm::hexfmt<const std::string *> (&*it)<< std::endl;
}std::cout << std::endl;return;
}
bool operator== (const TestSet &other){
returndwptr0 == other.dwptr0 &&dwptr1 == other.dwptr1 &&strptr0 == other.strptr0 &&strptr1 == other.strptr1;
}
DwordSet dwset;StrSet strset;typename DwordSet::accessor dwptr0;typename DwordSet::accessor dwptr1;typename StrSet::accessor strptr0;typename StrSet::accessor strptr1;
};
template <class Policy>void testset (const Operation &op);
int main (int argc, char *argv []){
int ret = 0;typedef stm::logger<> Logger;Logger logger;logger.setConsole ();
// Prepare the command line.const StmCmdOptSpec optSpec [] ={
{StmId (h), "h\0help\0", StmCmdOptSpecOnlyOption},{StmId (V), "V\0version\0", StmCmdOptSpecOnlyOption},{StmId (l), "l\0load-only\0"},{StmId (t), "t\0type\0", StmCmdOptSpecRequiresArg},{StmId (m), "m\0mode\0", StmCmdOptSpecRequiresArg},
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.4 smartptrtest.cpp 588
{StmId (a), "a\0archive\0", StmCmdOptSpecRequiresArg},{StmId (t), "d\0dir\0", StmCmdOptSpecRequiresArg},{0, NULL}
};StmCmdLine cmdLine = stmCmdLineCreate (argc, const_cast<const char **> (argv), optSpec);const char *prog = stmCmdLineGetProg (cmdLine);
try{
// Initialize boost::filesystem::path.boost::filesystem::initial_path ();boost::filesystem::path::default_name_check (boost::filesystem::native);
// Evaluate command line options.StmDword optId;bool printHelp = false;bool printVersion = false;Operation op;for (optId = stmCmdLineGetFirstOptionId (cmdLine);
optId;optId = stmCmdLineGetNextOptionId (cmdLine))
{if (optId == StmId (h)){
printHelp = true;continue;
}if (optId == StmId (V)){
printVersion = true;continue;
}if (optId == StmId (l)){
op.loadOnly = true;continue;
}if (optId == StmId (t)){
const char *optarg = stmCmdLineGetCurrentOptionArg (cmdLine);StmDebugAidsVerify (optarg);if (!strcmp (optarg, "ptr")){
op.type = Operation::Type::Ptr;}else if (!strcmp (optarg, "set")){
op.type = Operation::Type::Set;}else if (!strcmp (optarg, "all")){
op.type = Operation::Type::All;}else{
if (stmCmdLinePrintfErrbuf(
cmdLine,"%s: option %s: ""’%s’ designates no legal test type: aborted.\n",prog,stmCmdLineGetCurrentOptionName (cmdLine),optarg
) < 0){
throw std::runtime_error(
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.4 smartptrtest.cpp 589
StmDebugAidsErrmsg ("stmCmdLinePrintfErrbuf failed"));
}stmCmdLineSetOpterr (cmdLine, StmCmdLineOptionArgError);
}continue;
}if (optId == StmId (m)){
const char *optarg = stmCmdLineGetCurrentOptionArg (cmdLine);StmDebugAidsVerify (optarg);if (!strcmp (optarg, "inj") || !strcmp (optarg, "injective")){
op.mode = Operation::Mode::Inj;}if (!strcmp (optarg, "bij") || !strcmp (optarg, "bijective")){
op.mode = Operation::Mode::Bij;}else if (!strcmp (optarg, "all")){
op.mode = Operation::Mode::All;}else{
if (stmCmdLinePrintfErrbuf(
cmdLine,"%s: option %s: ""’%s’ designates no legal test type: aborted.\n",prog,stmCmdLineGetCurrentOptionName (cmdLine),optarg
) < 0){
throw std::runtime_error(
StmDebugAidsErrmsg ("stmCmdLinePrintfErrbuf failed"));
}stmCmdLineSetOpterr (cmdLine, StmCmdLineOptionArgError);
}continue;
}if (optId == StmId (a)){
const char *optarg = stmCmdLineGetCurrentOptionArg (cmdLine);StmDebugAidsVerify (optarg);if (!strcmp (optarg, "txt")){
op.archive = Operation::Archive::Txt;}else if (!strcmp (optarg, "bin")){
op.archive = Operation::Archive::Bin;}else if (!strcmp (optarg, "xml")){
op.archive = Operation::Archive::Xml;}else if (!strcmp (optarg, "all")){
op.archive = Operation::Archive::All;}else{
if (stmCmdLinePrintfErrbuf
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.4 smartptrtest.cpp 590
(cmdLine,"%s: option %s: ""’%s’ designates no legal archive type: aborted.\n",prog,stmCmdLineGetCurrentOptionName (cmdLine),optarg
) < 0){
throw std::runtime_error(
StmDebugAidsErrmsg ("stmCmdLinePrintfErrbuf failed"));
}stmCmdLineSetOpterr (cmdLine, StmCmdLineOptionArgError);
}continue;
}if (optId == StmId (d)){
const char *optarg = stmCmdLineGetCurrentOptionArg (cmdLine);StmDebugAidsVerify (optarg);op.dir = optarg;if (!boost::filesystem::exists (op.dir) ||
!boost::filesystem::is_directory (op.dir)){
if (stmCmdLinePrintfErrbuf(
cmdLine,"%s: option %s: ""’%s’ designates no accessible directory: aborted.\n",prog,stmCmdLineGetCurrentOptionName (cmdLine),optarg
) < 0){
throw std::runtime_error(
StmDebugAidsErrmsg ("stmCmdLinePrintfErrbuf failed"));
}stmCmdLineSetOpterr (cmdLine, StmCmdLineOptionArgError);
}continue;
}}
// Exit on option error.if (stmCmdLineGetOpterr (cmdLine)){
std::string what (stmCmdLineGetErrbuf (cmdLine));if (what.find (prog)){
what = std::string (prog) + ": " + what;}Logger elogger (std::cerr);elogger << what << std::endl;elogger (Logger::AutoInd | Logger::NoPara);stmPrintSynopsis (stderr, 79, StmElements (man), man);return 1;
}
// Handle help option.if (printHelp){
FILE *pp;ret = 2;
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.4 smartptrtest.cpp 591
if (! (pp = popen ("more", "w"))){
throw std::runtime_error(
StmDebugAidsErrmsg ("popen failed"));
}if (stmCmdLineGetCurrentArgIndex (cmdLine) ==
stmCmdLineGetArgCount (cmdLine)){
ret =stmPrintManual(
pp,79,Version,Copyright,StmElements (man),man
) < 0 ?1 : // Error.2; // Success.
}else{
if ((ret = stmPrintManualHeader(
pp,79,Version,StmElements (man),man
)) >= 0 &&(ret = stmPrintSynopsis
(pp,79,StmElements (man),man
)) >= 0){
bool first = true;for (size_t i = stmCmdLineGetCurrentArgIndex (cmdLine);
i < stmCmdLineGetArgCount (cmdLine);++ i)
{fprintf (pp, "\n");if (first){
fprintf (pp, "OPTIONS HELP\n");first = false;
}if ((ret = stmPrintOptionHelp
(pp,79,stmCmdLineGetArg (cmdLine, i),StmElements (man),man
)) < 0){
break;}
}}ret =
ret < 0 ||
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.4 smartptrtest.cpp 592
(ret = stmPrintManualFooter(
pp,79,ret,Copyright
)) < 0 ?1 : // Error.2; // Success.
}if (pclose (pp)){
throw std::runtime_error(
StmDebugAidsErrmsg ("pclose failed"));
}return ret;
}
// Handle print versionif (printVersion){
std::cout << Version << std::endl;return 2;
}
if (stmCmdLineGetArgCount (cmdLine) -stmCmdLineGetCurrentArgIndex (cmdLine) != 0)
{if (stmCmdLinePrintfErrbuf
(cmdLine,"%s: for now no arguments are allowed: aborted",prog
) < 0){
throw std::runtime_error(
StmDebugAidsErrmsg ("stmCmdLinePrintfErrbuf failed"));
}stmCmdLineSetOpterr (cmdLine, StmCmdLineOptionArgError);
}
// Exit on error.if (stmCmdLineGetOpterr (cmdLine)){
std::string what (stmCmdLineGetErrbuf (cmdLine));if (what.find (prog)){
what = std::string (prog) + ": " + what;}Logger elogger (std::cerr);elogger << what << std::endl;elogger (Logger::AutoInd | Logger::NoPara);stmPrintSynopsis (stderr, 79, StmElements (man), man);return 1;
}
// Do the command operation.if (op.type & Operation::Type::Ptr){
if (op.mode & Operation::Mode::Inj){
testptr<stm::smartptr::policy<> > (op);}
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.4 smartptrtest.cpp 593
if (op.mode & Operation::Mode::Bij){
testptr<stm::smartptr::policy<stm::smartptr::Surjective> > (op);}
}if (op.type & Operation::Type::Set){
if (op.mode & Operation::Mode::Inj){
testset<stm::smartptr::policy<> > (op);}if (op.mode & Operation::Mode::Bij){
testset<stm::smartptr::policy<stm::smartptr::Surjective> > (op);}
}}catch (std::exception &exc){
ret = 1;std::string what (exc.what ());if (what.empty ()) what = "Unspecified error";else if (what [what.size () - 1] == ’.’) what.erase (what.size () - 1);logger.paragraph ();logger << " - " << what << ": " << prog << " aborted.\n";logger (Logger::Indent | Logger::NoPara);
}catch (...){
ret = 1;logger.paragraph ();logger << " - Unknown error: " << prog << " aborted.\n";logger (Logger::Indent | Logger::NoPara);
}stmCmdLineDestroy (cmdLine);return ret;
}
template <class Policy>void testptr (const Operation &op){
TestPtr<Policy> test, tref (87654321, 12345678, "zzz", "yyy");
std::string type = Policy::surjective::value ? "bijective_ptr" : "injective_ptr";stm::path<> astub = op.dir / ("test-" + type);std::string title = "Testing type " + type;if (op.loadOnly){
title += " (loadonly)";}else{
const TestPtr<Policy> &t = tref;if (op.archive & Operation::Archive::Txt){
t.template save<boost::archive::text_oarchive> (astub.string () + ".txt");}if (op.archive & Operation::Archive::Bin){
t.template save<boost::archive::binary_oarchive> (astub.string () + ".bin");}if (op.archive & Operation::Archive::Xml){
t.template save<boost::archive::xml_oarchive> (astub.string () + ".xml");}
}
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.4 smartptrtest.cpp 594
std::cout << title + "\n" + std::string (title.size (), ’=’) + "\n\n";
test.tell ("Test item (initially empty)");tref.tell ("Reference item");
if (op.archive & Operation::Archive::Txt){
test.template load<boost::archive::text_iarchive> (astub.string () + ".txt");test.tell ("Test item (loaded from text archive)");StmDebugAidsVerify (test == tref);
}
if (op.archive & Operation::Archive::Bin){
test.template load<boost::archive::binary_iarchive> (astub.string () + ".bin");test.tell ("Test item (loaded from binary archive)");StmDebugAidsVerify (test == tref);
}
if (op.archive & Operation::Archive::Xml){
test.template load<boost::archive::xml_iarchive> (astub.string () + ".xml");test.tell ("Test item (loaded from XML archive)");StmDebugAidsVerify (test == tref);
}
std::cout << std::endl;return;
}
template <class Policy>void testset (const Operation &op){
TestSet<Policy> test, tref;tref.define (87654321, 12345678, "zzz", "yyy");
std::string type = Policy::surjective::value ? "bijective_set" : "injective_set";stm::path<> astub = op.dir / ("test-" + type);std::string title = "Testing type " + type;if (op.loadOnly){
title += " (loadonly)";}else{
test.define (*tref.dwptr0, *tref.dwptr1, *tref.strptr0, *tref.strptr1);const TestSet<Policy> &t = test;if (op.archive & Operation::Archive::Txt){
t.template save<boost::archive::text_oarchive> (astub.string () + ".txt");}if (op.archive & Operation::Archive::Bin){
t.template save<boost::archive::binary_oarchive> (astub.string () + ".bin");}if (op.archive & Operation::Archive::Xml){
t.template save<boost::archive::xml_oarchive> (astub.string () + ".xml");}test.define ();
}std::cout << title + "\n" + std::string (title.size (), ’=’) + "\n\n";
test.tell ("Test item (initially empty)");tref.tell ("Reference item");
if (op.archive & Operation::Archive::Txt)
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.5 sudoku.cpp 595
{test.template load<boost::archive::text_iarchive> (astub.string () + ".txt");test.tell ("Test item (loaded from text archive)");StmDebugAidsVerify (test == tref);
}
if (op.archive & Operation::Archive::Bin){
test.template load<boost::archive::binary_iarchive> (astub.string () + ".bin");test.tell ("Test item (loaded from binary archive)");StmDebugAidsVerify (test == tref);
}
if (op.archive & Operation::Archive::Xml){
test.template load<boost::archive::xml_iarchive> (astub.string () + ".xml");test.tell ("Test item (loaded from XML archive)");StmDebugAidsVerify (test == tref);
}
std::cout << std::endl;return;
}
14.5 sudoku.cpp
This example is a CLI based console C++ program demonstrating the usage and testing the implementationof the SysToMath Aids C++ Library stmaids.
/* ***** BEGIN LICENSE BLOCK ****** Version: MPL 1.1/GPL 2.0/LGPL 2.1
** The contents of this file are subject to the Mozilla Public License Version
* 1.1 (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
* http://www.mozilla.org/MPL/
** Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
* for the specific language governing rights and limitations under the
* License.
** The Original Code is the SysToMath C++ Libraries package (LibStmCpp).
** The Initial Developer of the Original Code is
* Tom Michaelis, SysToMath.
* Portions created by the Initial Developer are Copyright (C) 2006-2008
* the Initial Developer. All Rights Reserved.
** Contributor(s):
** Alternatively, the contents of this file may be used under the terms of
* either the GNU General Public License Version 2 or later (the "GPL"), or
* the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
* in which case the provisions of the GPL or the LGPL are applicable instead
* of those above. If you wish to allow use of your version of this file only
* under the terms of either the GPL or the LGPL, and not to allow others to
* use your version of this file under the terms of the MPL, indicate your
* decision by deleting the provisions above and replace them with the notice
* and other provisions required by the GPL or the LGPL. If you do not delete
* the provisions above, a recipient may use your version of this file under
* the terms of any one of the MPL, the GPL or the LGPL.
** ***** END LICENSE BLOCK ***** */
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.5 sudoku.cpp 596
/******************************************************************************* First Release 2006-08-05
******************************************************************************/
const char *Copyright = "(C) 2006-2008 Tom Michaelis, SysToMath";const char *Version = "1.10-r347";
static const char *man [] ={"NAME "," sudoku - generate and/or solve a sudoku "," ","SYNOPSIS "," sudoku [--silent] "," ([--generate=<dim>] | "," [--gen-only=<dim>] | "," [--input=<file> [--solution=(first|random|unique)]]) "," [--output=<file>] "," sudoku --help [<option-name>...] "," sudoku --version "," ","DESCRIPTION "," The command solves a sudoku which it either generates or reads from "" its input. Unless suppresed by option --gen-only, the sudoku is "" solved according to option --choice, if applicable. The resulting "" sudoku either solved or not is written to the output. "," The input format is ASCII based. Empty lines and line parts after the"" comment character ’#’ are ignored. "," The first relevant file entry shall be a decimal number in the range "" [2, 10] which defines the dimension n of the sudoku. After that n^4 "" decimal numbers in the range [0, n] shall follow. The numbers shall "" be separated by whitespace or comments as stated above. The number 0 "" designates the positions to determine for the solution. "," On success the command returns with exit code 0. If a usage or "" processing error occurred, the exit code is 1. "," ","OPTIONS "," --help "," -h If no argument <option-name> follows, print the command man "" page on standard output, else the description of the options "" <option-name> and exit with exit code 2. The arguments "" <option-name> shall be stated without leading ’-’ or ’--’. "," "," --version "," -V Print version info on standard output and exit with exit code "" 2. "," "," --silent "," -s Suppress all diagnostic messages on stdout and stderr. "," "," --generate=<dim> "," --gen=<dim> "," -g <dim> "," Generate the sudoku to be solved with dimension <dim> in the "" range [2, 10] instead of reading it from the input and solve "" it. This option is mutually exclusive to the options --input "" and --gen-only. "," "," --gen-only <dim> "," -G <dim> "," Generate the sudoku to be solved with dimension <dim> in the "" range [2, 10] instead of reading it from the input without "" solving it. This option is mutually exclusive to the options "" --input and --generate. "," "," --input=<file> ",
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.5 sudoku.cpp 597
" -i <file> "," Read the sudoku to be solved from <file> and solve it. The "" default input is stdin. This option is mutually exclusive to "" the options --generate and --gen-only. "," "," --solution=(first|random|unique) "," -S (first|random|unique) "," Determines the output, if the sudoku read with option --input "" is not uniquely solvable. Unless the option argument is "" ’unique’, according to the option argument the first or a "" randomly chosen solution constitutes the output. If the option"" argument is ’unique’, the non-null output elements are exactly "" those belonging to each possible solution. The default "" behaviour is --solution=first. "," As this option is only allowed in conjunction with option "" --input, it is mutually exclusive to the options --generate and"" --gen-only. "," "," --output=<file> "," -o <file> "," Write the output to <file>. The default output is stdout. If "" this option is the last one, the option specification --output="" or -o can be omitted for convenience. "};
#ifdef _MSC_VER// Disable warnings about potential loss of data when converting to int.// This is needed for posix_time.hpp#pragma warning (disable : 4244)#endif // _MSC_VER
#include <stdio.h>#include <stdlib.h>#include <stdarg.h>#include <time.h>#include <errno.h>#include <ctype.h>#include <limits.h>#include <exception>#include <stdexcept>#include <algorithm>#include <vector>#include <set>#include <boost/utility.hpp>#include <boost/shared_ptr.hpp>#include <boost/date_time/posix_time/posix_time.hpp>#include <stm/getopts.h>#include <stm/dvec.h>#include <stm/aids.hpp>
class Sudoku : boost::noncopyable{public:
enum{
FirstSolution,RandomSolution,UniqueSolution
};
Sudoku (bool silent = false);
int generate (stm::word dim);
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.5 sudoku.cpp 598
int read (FILE *input);
int test () const;
int solve (stm::dword solution = FirstSolution);
int write (FILE *output) const;
private:// Forward reference.class State;friend class State;typedef boost::shared_ptr<State> StatePtr;
int init ();
StatePtr state;
bool silent;stm::word n;stm::word n2;stm::word n3;stm::word n4;std::vector<std::vector<stm::word> > row;std::vector<std::vector<stm::word> > col;std::vector<std::vector<stm::word> > sub;
};
class Sudoku::State{
friend class Sudoku;
private:State (const Sudoku &sudoku) :
sudoku (sudoku){
a.resize (sudoku.n4, 0);pot.resize (sudoku.n4);init ();
}
int solve (stm::dword solution);
int read (const char *input);
bool test () const;
void init ();
int generate ();
stm::word getRow (stm::word k) const{
return k / sudoku.n2;}
stm::word getCol (stm::word k) const{
return k % sudoku.n2;}
stm::word getSub (stm::word k) const{
return(getRow (k) / sudoku.n ) * sudoku.n +(getCol (k) / sudoku.n) % sudoku.n;
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.5 sudoku.cpp 599
}
bool define (stm::byte el, stm::word k);
void undefine (stm::word k);
void restore (State &other){
u = other.u;a = other.a;pot = other.pot;
}
static stm::word randomVal (stm::word limit){
StmDebugAidsVerify (limit);return rand () % limit;
}
const Sudoku &sudoku;
stm::word u;std::vector<stm::byte> a;std::vector<std::set<stm::byte> > pot;
};
int main (int argc, char **argv);
Sudoku::Sudoku (bool silent) :n (0),silent (silent),state ()
{// Seed the random number generator.srand(
boost::posix_time::microsec_clock::local_time ().time_of_day ().total_microseconds ()
);}
int Sudoku::generate (stm::word dim){
n = dim;if (init () < 0){
return -1;}state = StatePtr (new State (*this));return state -> generate ();
}
int Sudoku::read (FILE *input){
int ret = 0;if (!input){
errno = EINVAL;return -1;
}char *numbers = NULL;int offs = 0;
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.5 sudoku.cpp 600
for (char *str = NULL;str = stmFgetDstr (input, str, StmFgdPreserveNl, StmFgdAppend);numbers = str)
{char *comment = strchr (str + offs, ’#’);if (comment){
*comment ++ = ’\n’;if (! (str = stmDstrDel (str, unsigned (comment - str), 0))){
return -1;}
}offs = stmDstrLen (str);
}if (feof (input)){
char *rest;unsigned long dim = strtoul (numbers, &rest, 10);if (dim == ULONG_MAX || !isspace (*rest)){
errno = EIO;ret = -1;
}else{
n = dim;if (init () < 0){
ret = -1;}else{
state = StatePtr (new State (*this));if (state -> read (rest) < 0){
ret = -1;}
}}
}else{
if (!ferror (input)){
numbers = NULL;}ret = -1;
}stmDvecFree (numbers);return ret;
}
int Sudoku::init (){
if (n < 1 || n > 10){
errno = ERANGE;return -1;
}n2 = n * n;n3 = n * n2;n4 = n2 * n2;row.resize (n2);col.resize (n2);sub.resize (n2);
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.5 sudoku.cpp 601
for (stm::word i = 0; i < n2; ++ i){
row [i].resize (n2);col [i].resize (n2);sub [i].resize (n2);for (stm::word j = 0; j < n2; ++ j){
row [i] [j] = i * n2 + j;col [i] [j] = j * n2 + i;sub [i] [j] = (i / n) * n3 + (j / n) * n2 + (i % n) * n + j % n;
}}return 0;
}
int Sudoku::test () const{
if (!state){
errno = EINVAL;return -1;
}return
state -> test () ?int (state -> u) :-1;
}
int Sudoku::solve (stm::dword solution){
if (!state || solution > UniqueSolution){
errno = EINVAL;return -1;
}return state -> solve (solution);
}
int Sudoku::write (FILE *output) const{
StmDebugAidsVerify (!n || state);int ret = 0;for (stm::word i = 0; i < n; ++ i){
for (stm::word ii = 0; ii < n; ++ ii){
for (stm::word j = 0; j < n; ++ j){
for (stm::word jj = 0; jj < n; ++ jj){
stm::word k = n3 * i + n2 * ii + n * j + jj;if (state -> a [k]){
fprintf (output, "%4d", state -> a [k]);}else{
fprintf (output, " ?");}
}if (j < n - 1){
fprintf (output, " ");}
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.5 sudoku.cpp 602
}fprintf (output, "\n");
}fprintf (output, "\n");
}return ret;
}
int Sudoku::State::read (const char *input){
if (!input){
errno = EINVAL;return -1;
}for (stm::word i = 0; i < sudoku.n4; ++ i){
char *rest;unsigned long elem = strtoul (input, &rest, 10);if (elem == ULONG_MAX || !isspace (*rest)){
errno = EIO;return -1;
}if (elem > sudoku.n2){
errno = ERANGE;return -1;
}a [i] = stm::byte (elem);input = rest;
}init ();if (!test ()){
errno = EINVAL;return -1;
}return 0;
}
void Sudoku::State::init (){
StmDebugAidsVerify (a.size () == sudoku.n4);StmDebugAidsVerify (pot.size () == sudoku.n4);u = 0;for (stm::word k = 0; k < sudoku.n4; ++ k){
pot [k].clear ();if (!a [k]){
++ u;for (stm::byte i = 1; i <= sudoku.n2; ++ i){
pot [k].insert (i);}stm::word r = getRow (k);stm::word c = getCol (k);stm::word s = getSub (k);
// Handle row.for (stm::byte i = 0; i < sudoku.n2; ++ i){
if (a [sudoku.row [r] [i]]){
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.5 sudoku.cpp 603
pot [k].erase (a [sudoku.row [r] [i]]);}
}
// Handle column.for (stm::byte i = 0; i < sudoku.n2; ++ i){
if (a [sudoku.col [c] [i]]){
pot [k].erase (a [sudoku.col [c] [i]]);}
}
// Handle subsquare.for (stm::byte i = 0; i < sudoku.n2; ++ i){
if (a [sudoku.sub [s] [i]]){
pot [k].erase (a [sudoku.sub [s] [i]]);}
}StmDebugAidsVerify (!pot [k].empty ());
}}return;
}
bool Sudoku::State::test () const{
for (stm::word k = 0; k < sudoku.n4; ++ k){
if (a [k]){
stm::word r = getRow (k);stm::word c = getCol (k);stm::word s = getSub (k);
// Test row.for (stm::word i = 0; i < sudoku.n2; ++ i){
if (i != c && a [sudoku.row [r] [i]] == a [k]){
return false;}
}
// Test column.for (stm::word i = 0; i < sudoku.n2; ++ i){
if (i != r && a [sudoku.col [c] [i]] == a [k]){
return false;}
}
// Test subsquare.for (stm::word i = 0; i < sudoku.n2; ++ i){
if (sudoku.sub [s] [i] != k && a [sudoku.sub [s] [i]] == a [k]){
return false;}
}}
}return true;
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.5 sudoku.cpp 604
}
int Sudoku::State::solve (stm::dword solution){
StmDebugAidsVerify (solution <= Sudoku::UniqueSolution);if (!test ()){
return -2;}bool success = true;bool unique = true;while (success && u){
bool progress = false;stm::word minPotIndex = sudoku.n4;stm::word minPotSize = sudoku.n2 + 1;for (stm::word k = 0; success && k < sudoku.n4; ++ k){
stm::word potSize = pot [k].size ();switch (potSize){case 0:
break;case 1:
if (success = define (*pot [k].begin (), k)){
progress = true;}break;
default:if (potSize < minPotSize){
minPotSize = potSize;minPotIndex = k;
}break;
}}if (success && !progress){
StmDebugAidsVerify (minPotIndex < sudoku.n4);StmDebugAidsVerify (minPotSize <= sudoku.n2);StmDebugAidsVerify (minPotSize > 0);StmDebugAidsVerify (minPotSize == pot [minPotIndex].size ());std::vector<stm::byte> minPot(
pot [minPotIndex].begin (),pot [minPotIndex].end ()
);enum{
SearchSolution,CheckUniqueness,Ready
}solutionState = SearchSolution;State resultState (*this);for (stm::word i = 0,
j = solution == Sudoku::RandomSolution ? randomVal (minPotSize) : 0;solutionState != Ready && i < minPotSize;++ i)
{State subState (*this);if (subState.define (minPot [(i + j) % minPotSize], minPotIndex)){
switch (subState.solve (solution))
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.5 sudoku.cpp 605
{case -2:
StmDebugAidsVerify (u);solutionState = Ready;break;
case -1:unique = false;// Fall through.
case 0:StmDebugAidsVerify(
solution == Sudoku::UniqueSolution || !subState.u);switch (solutionState){case SearchSolution:
if (unique){
resultState.restore (subState);solutionState = CheckUniqueness;
}else if (solution == Sudoku::UniqueSolution){
restore (resultState);return -1;
}else{
restore (subState);solutionState = Ready;
}break;
case CheckUniqueness:unique = false;restore (resultState);solutionState = Ready;break;
}break;
default:break;
}}
}if (solutionState != Ready){
restore (resultState);}if (u){
success = false;}
}}StmDebugAidsVerify (test ());return
u ?int (u) :unique ? 0 : -1;
}
int Sudoku::State::generate (){
StmDebugAidsVerify (u == sudoku.n4);if (!sudoku.silent){
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.5 sudoku.cpp 606
fprintf (stderr, "Compute initial solution...");}int ret = solve (Sudoku::RandomSolution);if (ret != -1){
errno = EINVAL;return -1;
}StmDebugAidsVerify (!u);std::set<stm::word> defined;for (stm::word k = 0; k < sudoku.n4; ++ k){
defined.insert (k);}if (!sudoku.silent){
fprintf (stderr, "\r \r");fprintf (stderr, "Undefined positions: ");
}do{
// Choose a position to undefine randomly and undefine that// position.if (!sudoku.silent){
fprintf (stderr, "%4u\b\b\b\b", u);}std::vector<stm::word> pos (defined.begin (), defined.end ());stm::word k = pos [randomVal (pos.size ())];StmDebugAidsVerify (a [k]);stm::byte el = a [k];undefine (k);defined.erase (k);
State resultState (*this);switch (ret = resultState.solve (Sudoku::RandomSolution)){case -1:
define (el, k);if (!sudoku.silent){
fprintf (stderr, "%4u\n", u);}break;
case 0:break;
default:errno = EINVAL;return -1;break;
}}while (!ret);if (!test ()){
errno = EINVAL;return -1;
}return 0;
}
bool Sudoku::State::define (stm::byte el, stm::word k){
StmDebugAidsVerify (pot [k].count (el));StmDebugAidsVerify (!a [k]);stm::word r = getRow (k);
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.5 sudoku.cpp 607
stm::word c = getCol (k);stm::word s = getSub (k);State saveState (*this);a [k] = el;
// Handle row.for (stm::byte i = 0; i < sudoku.n2; ++ i){
if (sudoku.row [r] [i] != k && !pot [sudoku.row [r] [i]].empty ()){
pot [sudoku.row [r] [i]].erase (el);if (pot [sudoku.row [r] [i]].empty ()){
restore (saveState);return false;
}}
}
// Handle column.for (stm::byte i = 0; i < sudoku.n2; ++ i){
if (sudoku.col [c] [i] != k && !pot [sudoku.col [c] [i]].empty ()){
pot [sudoku.col [c] [i]].erase (el);if (pot [sudoku.col [c] [i]].empty ()){
restore (saveState);return false;
}}
}
// Handle subsquare.for (stm::byte i = 0; i < sudoku.n2; ++ i){
if (sudoku.sub [s] [i] != k && !pot [sudoku.sub [s] [i]].empty ()){
pot [sudoku.sub [s] [i]].erase (el);if (pot [sudoku.sub [s] [i]].empty ()){
restore (saveState);return false;
}}
}
pot [k].clear ();-- u;return true;
}
void Sudoku::State::undefine (stm::word k){
StmDebugAidsVerify (a [k]);StmDebugAidsVerify (pot [k].empty ());stm::word undef = u;a [k] = 0;init ();StmDebugAidsVerify (u == undef + 1);return;
}
int main (int argc, char **argv){
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.5 sudoku.cpp 608
typedef stm::logger<> Logger;int ret = 0;Logger logger;logger.setConsole ();
const StmCmdOptSpec optSpec [] ={
{StmId (h), "h\0help\0", StmCmdOptSpecOnlyOption},{StmId (V), "V\0version\0", StmCmdOptSpecOnlyOption},{StmId (s), "s\0silent\0"},{StmId (g), "g\0gen\0generate\0", StmCmdOptSpecRequiresArg},{StmId (G), "G\0gen-only\0", StmCmdOptSpecRequiresArg},{StmId (i), "i\0input\0", StmCmdOptSpecRequiresArg},{StmId (S), "S\0solution\0", StmCmdOptSpecRequiresArg},{StmId (o), "o\0output\0", StmCmdOptSpecRequiresArg},{0, NULL}
};StmCmdLine cmdLine =
stmCmdLineCreate (argc, const_cast<const char **> (argv), optSpec);const char *prog = stmCmdLineGetProg (cmdLine);
try{
/* Evaluate command line options. */stm::word dim = 3;bool silent = false;bool generate = false;bool noSolve = false;bool inputOption = false;bool solutionOption = false;bool outputOption = false;FILE *input = stdin;FILE *output = stdout;int solution = Sudoku::FirstSolution;const char *helpMode = NULL;bool printVersion = false;stmCmdLineSetErrfp (cmdLine, stderr);for (stm::dword optId = stmCmdLineGetFirstOptionId (cmdLine);
optId;optId = stmCmdLineGetNextOptionId (cmdLine))
{if (optId == StmId (h)){
helpMode = stmCmdLineGetCurrentOptionName (cmdLine);continue;
}if (optId == StmId (V)){
printVersion = true;continue;
}if (optId == StmId (s)){
silent = true;continue;
}if (optId == StmId (g)){
if (noSolve || inputOption){
fprintf (stderr,"%s: option %s: mutually exclusive to options ""--input and --generate-only\n",prog,stmCmdLineGetCurrentOptionName (cmdLine));
stmCmdLineSetError (cmdLine, StmCmdLineOptionError);}
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.5 sudoku.cpp 609
else{
const char *optarg = stmCmdLineGetCurrentOptionArg (cmdLine);char *end;long ll;StmDebugAidsVerify (optarg);ll = strtol (optarg, &end, 10);if (*end || ll < 2 || ll > 10){
fprintf (stderr,"%s: option %s: illegal option argument: %s\n",prog,stmCmdLineGetCurrentOptionName (cmdLine),optarg);
stmCmdLineSetError (cmdLine, StmCmdLineOptionArgError);}else{
dim = (int) ll;generate = true;input = NULL;
}}continue;
}if (optId == StmId (G)){
if (generate && !noSolve || inputOption){
fprintf (stderr,"%s: option %s: mutually exclusive to options ""--generate and --input\n",prog,stmCmdLineGetCurrentOptionName (cmdLine));
stmCmdLineSetError (cmdLine, StmCmdLineOptionError);}else{
const char *optarg = stmCmdLineGetCurrentOptionArg (cmdLine);char *end;long ll;StmDebugAidsVerify (optarg);ll = strtol (optarg, &end, 10);if (*end || ll < 2 || ll > 10){
fprintf (stderr,"%s: option %s: illegal option argument: %s\n",prog,stmCmdLineGetCurrentOptionName (cmdLine),optarg);
stmCmdLineSetError (cmdLine, StmCmdLineOptionArgError);}else{
dim = (int) ll;generate = true;noSolve = true;input = NULL;
}}continue;
}if (optId == StmId (i)){
if (generate){
fprintf (stderr,
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.5 sudoku.cpp 610
"%s: option %s: mutually exclusive to options ""--generate and --generate-only\n",prog,stmCmdLineGetCurrentOptionName (cmdLine));
stmCmdLineSetError (cmdLine, StmCmdLineOptionError);}else if (inputOption){
fprintf (stderr,"%s: option %s: illegal redefinition of input\n",prog,stmCmdLineGetCurrentOptionName (cmdLine));
stmCmdLineSetError (cmdLine, StmCmdLineOptionError);}else{
const char *optarg = stmCmdLineGetCurrentOptionArg (cmdLine);StmDebugAidsVerify (optarg);if (! (input = fopen (optarg, "r"))){
fprintf (stderr,"%s: option %s: cannot open input file %s\n",prog,stmCmdLineGetCurrentOptionName (cmdLine),optarg);
stmCmdLineSetError (cmdLine, StmCmdLineOptionArgError);}inputOption = true;
}continue;
}if (optId == StmId (S)){
if (!inputOption){
fprintf (stderr,"%s: option %s: definition of input missing\n",prog,stmCmdLineGetCurrentOptionName (cmdLine));
stmCmdLineSetError (cmdLine, StmCmdLineOptionError);}else if (solutionOption){
fprintf (stderr,"%s: option %s: illegal redifinition of solution\n",prog,stmCmdLineGetCurrentOptionName (cmdLine));
stmCmdLineSetError (cmdLine, StmCmdLineOptionError);}else{
const char *optarg = stmCmdLineGetCurrentOptionArg (cmdLine);StmDebugAidsVerify (optarg);if (!strcmp (optarg, "first")){
solution = Sudoku::FirstSolution;}else if (!strcmp (optarg, "random")){
solution = Sudoku::RandomSolution;}else if (!strcmp (optarg, "unique")){
solution = Sudoku::UniqueSolution;}else{
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.5 sudoku.cpp 611
fprintf (stderr,"%s: option %s: illegal option argument: %s\n",prog,stmCmdLineGetCurrentOptionName (cmdLine),optarg);
stmCmdLineSetError (cmdLine, StmCmdLineOptionArgError);}solutionOption = true;
}continue;
}if (optId == StmId (o)){
if (outputOption){
fprintf (stderr,"%s: option %s: illegal redifinition of output\n",prog,stmCmdLineGetCurrentOptionName (cmdLine));
stmCmdLineSetError (cmdLine, StmCmdLineOptionError);}else{
const char *optarg = stmCmdLineGetCurrentOptionArg (cmdLine);StmDebugAidsVerify (optarg);if (! (output = fopen (optarg, "w"))){
fprintf (stderr,"%s: option %s: cannot open output file %s\n",prog,stmCmdLineGetCurrentOptionName (cmdLine),optarg);
stmCmdLineSetError (cmdLine, StmCmdLineOptionArgError);}outputOption = true;
}continue;
}}
/* Exit on option error. */if (stmCmdLineGetError (cmdLine)){
stmPrintSynopsis (stderr, 79, StmElements (man), man);return 1;
}
/* Handle help mode. */if (helpMode){
int ret = 2;FILE *pp;if (! (pp = popen ("more", "w"))){
fprintf (stderr, "popen failed: aborted\n");exit (1);
}if (stmCmdLineGetCurrentArgIndex (cmdLine) ==
stmCmdLineGetArgCount (cmdLine)){
ret =stmPrintManual (pp, 79,
Version, Copyright, StmElements (man), man) < 0 ?1 : /* Error. */2; /* Success. */
}else
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.5 sudoku.cpp 612
{if ((ret = stmPrintManualHeader (pp, 79, Version, StmElements (man), man)) >= 0 &&
(ret = stmPrintSynopsis (pp, 79, StmElements (man), man)) >= 0){
StmBool first = StmTrue;stm::word i;for (i = stmCmdLineGetCurrentArgIndex (cmdLine);
i < stmCmdLineGetArgCount (cmdLine);++ i)
{fprintf (pp, "\n");if (first){
fprintf (pp, "OPTIONS HELP\n");first = StmFalse;
}if ((ret = stmPrintOptionHelp (pp, 79,
stmCmdLineGetArg (cmdLine, i),StmElements (man), man)) < 0)
{break;
}}
}ret =
ret < 0 || (ret = stmPrintManualFooter (pp, 79, ret, Copyright)) < 0 ?1 : /* Error. */2; /* Success. */
}if (pclose (pp)){
fprintf (stderr, "pclose failed: aborted\n");exit (1);
}return ret;
}
/* Handle print version */if (printVersion){
fprintf (stdout, "%s\n", Version);exit (2);
}
/* Exit on argument error. */switch (stmCmdLineGetArgCount (cmdLine) - stmCmdLineGetCurrentArgIndex (cmdLine)){case 0:
break;case 1:
if (!outputOption){
const char *optarg =stmCmdLineGetArg (cmdLine, stmCmdLineGetCurrentArgIndex (cmdLine));
StmDebugAidsVerify (optarg);if (! (output = fopen (optarg, "w"))){
fprintf (stderr,"%s: cannot open output file %s\n",prog,optarg);
stmPrintSynopsis (stderr, 79, StmElements (man), man);exit (1);
}outputOption = true;break;
}
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
14.5 sudoku.cpp 613
// Fall through.default:
fprintf (stderr,"%s: ambigous arguments\n",prog);
stmPrintSynopsis (stderr, 79, StmElements (man), man);exit (1);
}
// Do command operation.Sudoku sudoku (silent);if (generate){
if (sudoku.generate (dim) < 0){
throw std::runtime_error ("error generating input");}
}else{
if (sudoku.read (input) < 0){
throw std::runtime_error ("error reading input");}
}if ((ret = sudoku.test ()) < 0){
if (!silent){
fprintf (output,"# %s: no valid sudoku\n",prog);
}}else if (noSolve || generate){
if (!silent){
fprintf (output,"# %s: %d undefined positions\n",prog,ret);
}sudoku.write (output);if (generate){
fprintf (output, "\n");}
}if (ret >= 0 && !noSolve){
int u = ret;ret = sudoku.solve (solution);if (!silent){
switch (ret){case -2:
fprintf (output,"# %s: no valid sudoku\n",prog);
break;case -1:
StmDebugAidsVerify (sudoku.test () >= 0);switch (solution){case Sudoku::FirstSolution:
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
15 SysToMath C++ Libraries Implementation Page Documentation 614
fprintf (output,"# %s: first of several solutions\n",prog);
break;case Sudoku::RandomSolution:
fprintf (output,"# %s: randomly chosen of several solutions\n",prog);
break;case Sudoku::UniqueSolution:
fprintf (output,"# %s: added %d elements of uniquely determined ""part of non-unique solution\n",prog,u - sudoku.test ());
break;}break;
case 0:fprintf (output,
"# %s: valid and unique solution\n",prog);
break;default:
fprintf (output,"# %s: failed to solve: still %d undefined positions\n",prog,ret);
}}sudoku.write (output);fprintf (output, "\n");
}}catch (std::exception &exc){
ret = 1;std::string what (exc.what ());if (what.empty ()) what = "Unspecified error";else if (what [what.size () - 1] == ’.’) what.erase (what.size () - 1);logger.paragraph ();logger << what << ": " << prog << " aborted.\n";logger (Logger::Indent | Logger::NoPara);
}catch (...){
ret = 1;logger.paragraph ();logger << "Unknown error: " << prog << " aborted.\n";logger (Logger::Indent | Logger::NoPara);
}
// Cleanup.stmCmdLineDestroy (cmdLine);return ret;
}
15 SysToMath C++ Libraries Implementation Page Documentation
15.1 Microsoft Visual Studio Tool Family
The Microsoft Visual Studio tool family consists of the tool sets:
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
15.1 Microsoft Visual Studio Tool Family 615
• Microsoft Visual Studio .NET 2003 (vc71)
• Microsoft Visual Studio 2005 (vc80)
15.1.1 Automatic Linking with Microsoft Visual Studio
On Microsoft Visual Studio .NET 2003 (vc71) and Microsoft Visual Studio 2005 (vc80) the necessarylibraries are linked automatically when one of the main library interface header files stm/aids.hpp orstm/toolaids.hpp or one of the library object interface header files is included, unless this mechanism issuppressed by the definition of the preprocessor symbol STM_NO_LIB, STM_AIDS_NO_LIB or STM_-TOOLAIDS_NO_LIB before that inclusion.
The choice of the libraries depends on the tool set used (vc71 or vc80) and on the system runtime libraryselected for the executable to be built. The SysToMath C++ Libraries package provides for each of itslibrary modules four static library configurations (lib files) and two dynamic ones (dll files). In thefollowing list module stands for aids or toolaids and vcnn for vc71 or vc80:
• DebugMt: Static debug library libstmmodule-vcnn-mt-gd.lib together with its debugdatabase file libstmmodule-vcnn-mt-gd.pdb chosen when linking against the multithreadeddebug DLL runtime (Compiler switch /MDd).
• DebugDllMt: Dynamic debug library stmmodule-vcnn-mt-gd.dll togetherwith its import library stmmodule-vcnn-mt-gd.lib and its debug database filestmmodule-vcnn-mt-gd.pdb chosen when linking against the multithreaded debug DLLruntime (Compiler switch /MDd) and defining the preprocessor variable STM_DYN_LINK beforethe SysToMath C++ Libraries header file inclusion.
• DebugMtStaticRt: Static debug library libstmmodule-vcnn-mt-sgd.lib together with itsdebug database file libstmmodule-vcnn-mt-sgd.pdb chosen when linking against the mul-tithreaded static debug runtime(Compiler switch /MTd).
• ReleaseMt: Static release library libstmmodule-vcnn-mt.lib chosen when linking againstthe multithreaded release DLL runtime (Compiler switch /MD).
• ReleaseDllMt: Dynamic release library stmmodule-vcnn-mt.dll together with its import li-brary stmmodule-vcnn-mt.lib chosen when linking against the multithreaded release DLLruntime (Compiler switch /MD) and defining the preprocessor variable STM_DYN_LINK before theSysToMath C++ Libraries header file inclusion.
• ReleaseMtStaticRt: Static release library libstmmodule-vcnn-mt-s.lib chosen when link-ing against the multithreaded static release runtime (Compiler switch /MT).
15.1.2 Environment
It is recommended that all static libraries (lib files) and their debug database files (pdb files) are locatedin a directory contained in the compiler system library search path. Moreover, to satisfy the applicationruntime requirements, it is recommended that all dynamic link libraries (dll files) and their debug databasefiles (pdb files) are located in the application directory or in a directory contained in the system executablesearch path.
If you used the installation program LibStmCppSetup.exe to install the SysToMath C++ Librarieswith the installation root directory, say C:\Program Files\SysToMath where you also installed theprerequisite library packages
• LibStmC
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
15.2 GNU Tool Family 616
• Boost-1.34
and you use Microsoft Visual Studio .NET 2003 (vc71) or Microsoft Visual Studio 2005 (vc80), then theaforementioned compiler system directory recommendations are satisfied, if you add the following entriesin Visual Studio, menu Tools, Options, Projects, VC++ Directories:
• Executable Files: Add C:\Program Files\SysToMath\bin\w32
• Library Files: Add C:\Program Files\SysToMath\lib\w32
• Include Files: Add C:\Program Files\SysToMath\include
• Include Files: Add C:\Program Files\SysToMath\include\boost-1_34
The example programs can then be found in C:\Program Files\SysToMath\samples\LibStmCpptogether with ready to use Visual Studio solution files w32\LibStmCpp-vc71.sln andw32\LibStmCpp-vc80.sln.
15.2 GNU Tool Family
The GNU tool family consists of the tool sets:
• GNU gcc for POSIX environment (cygwin)
• GNU gcc for Microsoft environment (cygming)
The tool set cygwin (chosen by gcc or g++ without option -mno-cygwin) produces libraries dependingon the dynamic library cygwin1.dll and therefore is restricted to free open source software projects,whereas the tool set cygming (chosen by gcc or g++ with option -mno-cygwin) produces librariesonly depending on the Microsoft runtime libraries and thus also allows commercial closed source softwareprojects.
15.2.1 Linking with the GNU Tool Family
The libraries for the GNU tool family have to be linked explicitely.
The choice of the libraries depends on the tool set used (cygwin or cygming) and on the system runtimelibrary selected for the executable to be built. The SysToMath C++ Libraries package provides for eachof its library modules two static library configurations (a files) and two dynamic ones (dll files). In thefollowing list module stands for aids or toolaids and cygxxx for cygwin or cygming:
• DebugMt: Static debug library libstmmodule-cygxxx-mt-d.a to be chosen for multi-threaded debug enabled statically linked executables (the preprocessor variables _MT and _DEBUGshould be defined).
• DebugDllMt: Dynamic debug library stmmodule-cygxxx-mt-d.dll together with its importlibrary libstmmodule-cygxxx-mt-d.dll.a to be chosen for multithreaded debug enableddynamically linked executables (the preprocessor variables _MT, _DEBUG and STM_DYN_LINKshould be defined).
• ReleaseMt: Static release library libstmmodule-cygxxx-mt.a to be chosen for multi-threaded not debug enabled statically linked executables (the preprocessor variables _MT andNDEBUG should be defined).
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
15.3 SysToMath Aids C++ Library 617
• ReleaseDllMt: Dynamic release library stmmodule-cygxxx-mt.dll together with its importlibrary libstmmodule-cygxxx-mt.dll.a to be chosen for multithreaded not debug enableddynamically linked executables (the preprocessor variables _MT, NDEBUG and STM_DYN_LINKshould be defined).
15.2.2 Environment
It is recommended that all static libraries (a files) are located in a directory contained in the compilersystem library search path. Moreover, to satisfy the application runtime requirements, it is recommendedthat all dynamic link libraries (dll files) are located in the application directory or in a directory containedin the system executable search path.
If you used the installation program LibStmCppSetup.exe to install the SysToMath C++ Librarieswith the installation root directory, say C:\Program Files\SysToMath, where you also installed theprerequisite library packages
• LibStmC
• Boost-1.34
and you have added /cygdrive/c/Program Files/SysToMath/bin/w32 to your PATH envi-ronment variable, then the aforementioned compiler system directory recommendations are satisfied, if youuse the following options in your gcc or g++ command lines:
• Library Files: Use -L"/cygdrive/c/Program Files/SysToMath/lib/w32"
• Include Files: Use -I"/cygdrive/c/Program Files/SysToMath/include"
• Include Files: Use -I"/cygdrive/c/Program Files/SysToMath/include/boost-1_-34"
The example programs can then be found in /cygdrive/c/ProgramFiles/SysToMath/samples/LibStmCpp.
15.3 SysToMath Aids C++ Library
15.3.1 Content
The SysToMath Aids C++ Library consits of the following objects:
• DebugAids: Debugging Support Facilities
• DivAids: Diverse Aids
• FilesysAids: File System Aids
• GenCRC: Generic CRC Generation
• LoggerAids: Formatted Logging Aids
• SmartptrAids: Smart Pointer Aids
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
15.4 SysToMath Tool Aids C++ Library 618
15.3.2 Usage
To compile an application which uses the SysToMath Aids C++ Library, the public main library interfaceheader file
• stm/aids.hpp
or one of the public library object interface header files
• stm/debugaids.hpp
• stm/divaids.hpp
• stm/filesysaids.hpp
• stm/gencrc.hpp
• stm/loggeraids.hpp
• stm/smartptraids.hpp
shall be included and be located in a directory contained in the compiler system include search path.Moreover, the implementation header files
• stm/impl/aidsconfig.hpp
• stm/impl/debugxaids.hpp
• stm/impl/divxaids.hpp
• stm/impl/filesysxaids.hpp
• stm/impl/genxcrc.hpp
• stm/impl/loggerxaids.hpp
• stm/impl/smartptrxaids.hpp
shall also be located in a directory contained in the compiler system include search path.
For examples see filesystest.cpp, gencrctest.cpp smartptrtest.cpp, sudoku.cpp and divaidstest.cpp.
15.4 SysToMath Tool Aids C++ Library
15.4.1 Content
The SysToMath Tool Aids C++ Library consits of the following objects:
• CtAids: ClearCase cleartool Aids
• BinMsg: Abstract Binary Message Model
• DspMsg: DSP Message Model
• LvdsPacket: LVDS Packet Model
• McBspMsg: McBSP Message Model
• MsgTimestamp: Message Timestamp Model
• PrintkBinMsg: PrintkBin Message Model
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
15.5 Deprecated List 619
15.4.2 Usage
To compile an application which uses the SysToMath Tool Aids C++ Library, the public main libraryinterface header file
• stm/toolaids/toolaids.hpp
or one of the public library object interface header files
• stm/toolaids/ctaids.hpp
• stm/toolaids/binmsg.hpp
• stm/toolaids/dspmsg.hpp
• stm/toolaids/lvdspacket.hpp
• stm/toolaids/mcbspmsg.hpp
• stm/toolaids/msgtimestamp.hpp
• stm/toolaids/printkbinmsg.hpp
shall be included and be located in a directory contained in the compiler system include search path.Moreover, the implementation header files
• stm/toolaids/impl/toolaidsconfig.hpp
• stm/toolaids/impl/xctaids.hpp
• stm/toolaids/impl/xbinmsg.hpp
• stm/toolaids/impl/xdspmsg.hpp
• stm/toolaids/impl/xlvdspacket.hpp
• stm/toolaids/impl/xmcbspmsg.hpp
• stm/toolaids/impl/xmsgtimestamp.hpp
• stm/toolaids/impl/xprintkbinmsg.hpp
shall also be located in a directory contained in the compiler system include search path.
15.5 Deprecated List
Class stm::inputseq< InputFileT, bufSize > For historical reasons. Do not use for new code.
Member stm::LogInfo Use stm::SyslogInfo instead.
Member stm::LogWarning Use stm::SyslogWarning instead.
Member stm::LogError Use stm::SyslogError instead.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
15.5 Deprecated List 620
Member stm::LogLevelMask Use stm::SyslogLevelMask instead.
Member stm::LogPerror Use stm::SyslogPerror instead.
Member stm::LogNoPerror Use stm::SyslogNoPerror instead.
Member stm::hostlittleendian() use stm::littleendian () instead.
Member stm::hostbigendian() use stm::bigendian () instead.
Member stm::numpath For historical reasons numpath is an alternative name for numpstring.
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
Index∼BaseMessage
stm::tools::BaseMessage, 123∼BinMessage
stm::tools::BinMessage, 152∼Data
stm::local::BraceExpand::Data, 160∼DspMessage
stm::tools::DspMessage, 189∼LvdsPacket
stm::tools::LvdsPacket, 303∼Tail
stm::local::BraceExpand::Data::Tail, 161∼basic_logger
ModLoggerAids, 66∼condition
stm::condition, 167∼dirdata
stm::path::dirdata, 344∼injective_set
stm::smartptr::injective_set, 238∼inputrange
stm::inputrange, 247∼inputrange_iterator
stm::inputrange_iterator, 255∼locker
ModLoggerAids, 66stm::local::basic_xlogger::locker, 144
∼mapped_ptrstm::smartptr::local::mapped_ptr, 311stm::smartptr::local::mapped_ptr< T, Com-
pare, Allocator, refcounted, false >, 317∼repository_type
stm::smartptr::local::repository_type, 360stm::smartptr::local::repository_type< T,
Compare, Allocator, refcounted, false >,366
∼scoped_lockstm::scoped_lock, 370
∼system_conditionstm::system_condition, 386
∼system_scoped_lockstm::system_scoped_lock, 389
∼xcrcstm::local::xcrc, 415
∼xinputrangestm::local::xinputrange, 445
aSudoku::State, 385
accessorstm::smartptr::injective_set::accessor, 242
Actionsstm::tools::CtExceptions, 181
activestm::local::errmsg, 193stm::tools::Ct::ArgList, 178
addstm::tools::CtExceptions, 180
addBodyLengthstm::tools::local::xPrintkBinMessage::Identification,
480addLabels
stm::tools::CtOperation, 185addrword
ModDivAids, 30adjust
DivAidsImpl, 52adjustChild
ModLoggerAids, 68adjustSync
stm::local::basic_xlogger, 140, 141Aich
stm::tools::LvdsPacket::DataType, 306stm::tools::LvdsPacket::Priority, 307
aids.hpp, 492aidsconfig.hpp, 493
STM_LIB_NAME, 494Align
stm::local::xinputrange_iterator, 450All
Operation::Archive, 334Operation::Mode, 334Operation::Type, 335
allocator_typestm::smartptr::injective_ptr, 228stm::smartptr::injective_set, 237
allowedSeparatorsstm::pstring, 354
Amplitudestm::tools::LvdsPacket::DataType, 306stm::tools::LvdsPacket::Priority, 307
AmplNoOffsstm::tools::LvdsPacket::DataType, 306stm::tools::LvdsPacket::Priority, 307
antennaFlagsstm::tools::LvdsPacket, 304
antennaFlags_stm::tools::local::xLvdsPacket, 465
appCharstm::local::xfilespec, 431
appCirc
INDEX 622
stm::local::xfilespec, 432appDot
stm::local::xfilespec, 431appDotSeq
stm::local::xfilespec, 432append
stm::filespeclist, 209stm::local::xfilespec, 431
archiveOperation, 333
ArgListstm::tools::Ct::ArgList, 177
assignDivAidsImpl, 51stm::integral_range, 262stm::integral_set, 277stm::smartptr::injective_ptr, 230stm::tools::MsgTimestamp, 325
AutoIndModLoggerAids, 65stm::local::basic_xlogger, 139
availableids_stm::smartptr::local::repository_type, 362
basestm::inputseq, 257stm::local::xinputrange, 444stm::local::xIntegral_range, 454stm::path, 337stm::smartptr::injective_set::accessor, 242stm::smartptr::local::repository_type, 360stm::smartptr::local::repository_type< T,
Compare, Allocator, refcounted, false >,365
baseitstm::smartptr::local::repository_type::range_-
iterator, 363stm::smartptr::local::repository_type< T,
Compare, Allocator, refcounted, false>::range_iterator, 368
BaseMessagestm::tools::BaseMessage, 123
basemessage_typestm::tools::BaseMessage, 122stm::tools::BinMessage, 151stm::tools::BinMessageContext, 156stm::tools::local::xBinMessage, 406stm::tools::local::xBinMessageContext, 409stm::tools::local::xMcBspMessage, 468stm::tools::local::xPrintkBinMessage, 477stm::tools::McBspMessage, 321stm::tools::PrintkBinMessage, 351
BaseMessageContextstm::tools::BaseMessageContext, 128
BaseMessageContextImplstm::tools::BaseMessageContext, 127
BaseMessageImplstm::tools::BaseMessage, 122
basic_loggerModLoggerAids, 66
basic_xloggerstm::local::basic_xlogger, 139, 140
BbtOpCodestm::tools::local::xTraceHeader, 490
beginstm::integral_set, 275stm::smartptr::injective_set, 240
beginrangestm::integral_set, 275
beginsWithRootDirectorystm::filespec, 205
beginsWithRootNamestm::filespec, 204
bfnstm::tools::DspMessage::TraceHeader, 191stm::tools::local::xMcBspMessage::Identification,
471stm::tools::local::xPrintkBinMessage::Identification,
480stm::tools::MsgTimestamp, 325
bfn_stm::tools::local::xMcBspMessage::Identification,
472stm::tools::local::xMsgTimestamp, 475stm::tools::local::xPrintkBinMessage::Identification,
481stm::tools::local::xTraceHeader, 489
BfnMaskstm::tools::local::xPrintkBinMessage::Identification,
482bigendian
ModDivAids, 31Bij
Operation::Mode, 334Bin
Operation::Archive, 334BinMessage
stm::tools::BinMessage, 152BinMessageContext
stm::tools::BinMessageContext, 156BinMessageContext< DataT, InputRangeT, Con-
textT >stm::tools::BinMessageContext::Gap, 158
BinMessageContextImplstm::tools::BinMessageContext, 155
BinMessageImplstm::tools::BinMessage, 151
BinMsg Implementation, 78
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
INDEX 623
binmsg.hpp, 494BinMsg: Abstract Binary Message Model, 75boardTimeMs
stm::tools::local::xPrintkBinMessage::Identification,480
stm::tools::MsgTimestamp, 326boardTimeMs_
stm::tools::local::xMsgTimestamp, 475stm::tools::local::xPrintkBinMessage::Identification,
481boardTimeSec
stm::tools::local::xPrintkBinMessage::Identification,480
stm::tools::MsgTimestamp, 326boardTimeSec_
stm::tools::local::xMsgTimestamp, 475stm::tools::local::xPrintkBinMessage::Identification,
481body
stm::tools::BaseMessage, 124stm::tools::BinMessage, 153stm::tools::DspMessage, 190stm::tools::LvdsPacket, 304
body_stm::tools::local::xBaseMessage, 402stm::tools::local::xDspMessage, 424stm::tools::local::xLvdsPacket, 466
bodyLengthstm::tools::local::xMcBspMessage::Identification,
471stm::tools::local::xPrintkBinMessage::Identification,
480bodyLength_
stm::tools::local::xMcBspMessage::Identification,472
stm::tools::local::xPrintkBinMessage::Identification,482
boost::serialization::accessstm::smartptr::injective_ptr, 234stm::smartptr::local::mapped_ptr, 313stm::smartptr::local::mapped_ptr< T, Com-
pare, Allocator, refcounted, false >, 318stm::smartptr::local::pointee_type, 348
BOOST_STATIC_ASSERTstm::local::xinputrange, 445stm::local::xinputrange_iterator, 451stm::local::xIntegral_range, 455
brace_expandModFilesysAids, 41
bracketExprstm::local::xfilespec, 432
broadcaststm::condition, 167stm::system_condition, 387
bufAdvancestm::inputrange, 250
bufEndstm::inputrange, 250
bufEnd_stm::local::xinputrange, 446
bufExhaustedstm::inputrange, 250
buffer_stm::local::xinputrange, 446
bufFullstm::inputrange, 250
bufPtrstm::inputrange, 250
bufPtr_stm::local::xinputrange, 446
bufrangestm::local::xinputrange_iterator, 451
bufrange_typestm::inputrange_iterator, 254stm::local::xinputrange_iterator, 450
bufSetupstm::inputrange, 249
BufSizestm::inputrange, 247
bufStep_stm::local::xinputrange, 447
by_ptrstm::smartptr::local::repository_type, 360
byteModDivAids, 30
byte_iterator_rangestm::byte_iterator_range, 163
ByteLenstm::local::xcrc, 415
char_typeModLoggerAids, 64stm::local::basic_xlogger, 138
charClassExprstm::local::xfilespec, 433
checkLeadingDotstm::local::xfilespec, 433
checkOutstm::tools::CtOperation, 184
childSlot, 371
children_Slot, 372
chipstm::tools::local::xMcBspMessage::Identification,
471stm::tools::MsgTimestamp, 326
chip_
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
INDEX 624
stm::tools::local::xMcBspMessage::Identification,472
stm::tools::local::xMsgTimestamp, 475ciCommentOption_
stm::tools::local::xCt, 417clamped_offset
ModDivAids, 35clamped_rest
ModDivAids, 35clear
stm::filespeclist, 209stm::inputrange, 247stm::integral_range, 264stm::integral_set, 284stm::local::xinputrange, 445stm::readablefile, 357stm::tools::CtExceptions, 181stm::tools::local::xMcBspMessage::Identification,
471stm::tools::local::xPrintkBinMessage::Identification,
480clearNls
stm::local::basic_xlogger, 141col
Sudoku, 379collSymb
stm::local::xfilespec, 433ColonFound
stm::local::basic_xlogger::Stream, 146ColonInactive
stm::local::basic_xlogger::Stream, 146ColonInd
ModLoggerAids, 65stm::local::basic_xlogger, 139
ColonReadystm::local::basic_xlogger::Stream, 146
ColonScanstm::local::basic_xlogger::Stream, 146
colonStatestm::local::basic_xlogger::Stream, 147
ColonTableModLoggerAids, 65stm::local::basic_xlogger, 139
command_stm::tools::local::xCtOperation::LabelList,
421compare_type
stm::smartptr::injective_ptr, 228stm::smartptr::injective_set, 237
cond_stm::local::xcondition, 413stm::local::xsystem_condition, 487
conditionstm::condition, 167
ConsistencyErrorstm::tools::BaseMessage, 123stm::tools::BinMessage, 152
const_iteratorstm::filespeclist, 208stm::integral_set, 274stm::local::xIntegral_set, 459stm::tools::CtExceptions, 180
const_reverse_iteratorstm::integral_set, 274stm::local::xIntegral_set, 459
constructed_stm::local::xinputrange_iterator, 452
containsUnescapedBracestm::filespec, 204
containsUnescapedEreOperatorstm::filespec, 204
containsUnescapedPatternMatchingOperatorstm::filespec, 203
Contentstm::tools::CtExceptions, 181
contextstm::tools::BaseMessage, 124stm::tools::BinMessage, 153
context_stm::local::xinputrange_iterator, 451stm::tools::local::xBaseMessage, 402stm::tools::local::xBinMessage, 407
context_typestm::inputrange_iterator, 254stm::local::xinputrange_iterator, 450stm::tools::BaseMessage, 122stm::tools::BaseMessageContext, 128stm::tools::BinMessage, 151stm::tools::BinMessageContext, 155stm::tools::DspMessage, 188stm::tools::local::xBaseMessage, 401stm::tools::local::xBaseMessageContext, 404stm::tools::local::xBinMessage, 406stm::tools::local::xBinMessageContext, 409stm::tools::local::xDspMessage, 424stm::tools::local::xLvdsPacket, 464stm::tools::local::xMcBspMessage, 468stm::tools::local::xPrintkBinMessage, 477stm::tools::LvdsPacket, 301stm::tools::McBspMessage, 321stm::tools::PrintkBinMessage, 351
CopyrightDivAidsTest, 87FilesysAidsTest, 89GenCrcTest, 90SmartptrAidsTest, 93StmAidsTest, 97
crc
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
INDEX 625
stm::crc, 170create
stm::tools::local::xBinMessageContext, 410CreateFct
stm::tools::local::xBinMessageContext, 409createMessage
stm::tools::local::xBinMessageContext, 410creation_
stm::tools::local::xBinMessageContext, 410crit_
stm::tools::local::xBinMessageContext, 410Ct
stm::tools::Ct, 174ct
stm::tools::CtOperation, 183ct_
stm::tools::local::xArgList, 399stm::tools::local::xCtOperation, 420
CtAids Implementation, 79ctaids.cpp, 496
PATHLEN, 497ctaids.hpp, 497CtAids: ClearCase cleartool Aids, 76CtOperation
stm::tools::CtOperation, 183currentReplica_
stm::tools::local::xCtOperation, 419
Datastm::local::BraceExpand::Data, 160
datastm::tools::BaseMessageContext, 129
data_stm::tools::local::xBaseMessageContext, 405
data_typestm::path::dirdata, 343stm::tools::BaseMessageContext, 127stm::tools::BinMessageContext, 155stm::tools::local::xBaseMessageContext, 404
dataTypestm::tools::LvdsPacket, 304
dataType_stm::tools::local::xLvdsPacket, 466
DataTypeErrorstm::tools::LvdsPacket, 302
DdtOpCodestm::tools::local::xTraceHeader, 490
DebugAids Implementation, 45debugaids.cpp, 498debugaids.hpp, 499DebugAids: Debugging Support Facilities, 19DebugAidsImpl
StmDebugAidsErrmsgImpl_, 46StmDebugAidsVerifyImpl_, 46
syslogPerror, 47syslogProg, 47
debugxaids.hpp, 502STM_DEBUGXAIDS_HPP, 504
decrefcountstm::smartptr::local::item_descr< T, Compare,
false, false >, 288stm::smartptr::local::item_descr< T, Compare,
false, true >, 290stm::smartptr::local::item_descr< T, Compare,
true, false >, 292stm::smartptr::local::item_descr< T, Compare,
true, true >, 294defaultFlags
stm::hexfmt, 218stm::hexfmt< ElemT ∗, DefaultFlags >, 221
DefaultGetMastershipTimeoutSecstm::tools::CtOperation, 186
defaultInitialRemainderPolynomialstm::crc, 172
defaultInitialRemainderPolynomial_stm::local::xcrc, 416
defineSudoku::State, 383TestSet, 394
define_rangestm::smartptr::injective_ptr, 233
definedids_stm::smartptr::local::repository_type, 362
defineRangestm::smartptr::local::repository_type, 361stm::smartptr::local::repository_type< T,
Compare, Allocator, refcounted, false >,366
designateSameModFilesysAids, 42
designatesSamestm::pstring, 354
destroySyncstm::local::basic_xlogger, 140
dirOperation, 333
dirdatastm::path::dirdata, 343, 344
Directorystm::tools::CtExceptions, 181
dirpathstm::path::dirdata, 344
dirpath_stm::local::xdirdata, 422
dispSlot, 371
disp_Slot, 372
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
INDEX 626
DivAids Implementation, 47DivAids Test, 87divaids.cpp, 504divaids.hpp, 505DivAids: Diverse Aids, 23DivAidsImpl
adjust, 52assign, 51getIntegral, 50initialize, 50, 54integral_iterator, 51, 52match, 50, 54mkIterator, 53operator ∗, 51operator!=, 51operator++, 52operator–, 52operator==, 51optassign, 51optrange, 55optranges, 55range, 55rangeOf, 53ranges, 55setassign, 54StmRectrlTryImpl_, 49verify, 53wait_, 54xIntegral_range, 50xIntegral_set, 52
DivAidsTestCopyright, 87main, 87Version, 88
divaidstest.cpp, 512divxaids.hpp, 513
STM_DIVXAIDS_HPP, 520DlTpc0
stm::tools::LvdsPacket::DataType, 306stm::tools::LvdsPacket::Priority, 307
DlTpc1stm::tools::LvdsPacket::DataType, 306stm::tools::LvdsPacket::Priority, 307
DoNotRecursestm::local::xrecursionenv, 484stm::path::recursionenv, 347
DspMessagestm::tools::DspMessage, 189
DspMessage< ContextT >stm::tools::DspMessage::TraceHeader, 192
DspMessageImplstm::tools::DspMessage, 188
DspMsg Implementation, 79dspmsg.cpp, 520
dspmsg.hpp, 521DspMsg: DSP Message Model, 77DspMsgImpl
xTraceHeader, 80DtxCtrl
stm::tools::LvdsPacket::DataType, 306stm::tools::LvdsPacket::Priority, 307
dumpstm::hexfmt, 217
dwordModDivAids, 30
DwordPtrTestPtr, 390
DwordSetTestSet, 394
dwptr0TestPtr, 392TestSet, 396
dwptr1TestPtr, 392TestSet, 396
dwsetTestSet, 395
element_typestm::smartptr::injective_ptr, 227
emptystm::integral_range, 263stm::integral_set, 279stm::smartptr::injective_set, 240
EmptyAllowedstm::integral_range, 267stm::local::xIntegral_range, 456
emptyrangestm::integral_range, 264
emptysetstm::integral_set, 284
endstm::integral_set, 275stm::smartptr::injective_set, 240
endianConvertedIfModDivAids, 33
endianConvertIfModDivAids, 32
endrangestm::integral_set, 276
EndWordPatternstm::tools::local::xMcBspMessage, 468
EndWordSizestm::tools::local::xMcBspMessage, 468
Envstm::local::xfilespec::Env, 436stm::local::xIntegral_set::Env, 460
env
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
INDEX 627
stm::path::dirdata, 345env_
stm::local::xdirdata, 422env_type
stm::path::dirdata, 343equal
stm::inputrange_iterator, 255ereBracketExpr
stm::local::xfilespec, 432ereFileSpec
stm::local::xfilespec, 435errmsg
stm::local::errmsg, 193error_
stm::local::xinputrange, 447Esc
FilesysAidsImpl, 57EscRe
FilesysAidsImpl, 57Exclude
stm::tools::CtExceptions, 181excludes
stm::tools::CtExceptions, 180exec
stm::tools::Ct::ArgList, 177execCommand
stm::tools::Ct, 175
fcsstm::tools::LvdsPacket, 304
fcs_stm::tools::local::xLvdsPacket, 466
fetchModDivAids, 31
filestm::inputrange, 248
filefindstm::filefind, 196
fileIt_stm::local::xinputrange, 448
fileOffsetstm::inputrange, 248
filerange_typestm::inputrange, 246stm::local::xinputrange, 444stm::local::xinputrange_iterator, 450
files_stm::local::xinputrange, 448
fileSizestm::readablefile, 357
filespecstm::filespec, 201
filespecliststm::filespeclist, 208
FilesysAids Implementation, 55FilesysAids Test, 88filesysaids.cpp, 522filesysaids.hpp, 523FilesysAids: File System Aids, 38FilesysAidsImpl
Esc, 57EscRe, 57PsepChars, 57PsepRe, 57
FilesysAidsTestCopyright, 89main, 89man, 89Version, 89
filesystest.cpp, 526filesysxaids.hpp, 527
STM_FILESYSXAIDS_HPP, 531fill
stm::integral_range, 264stm::integral_set, 285
findstm::integral_set, 277stm::smartptr::injective_set, 239
find_token_endModDivAids, 36, 37
find_trim_backModDivAids, 36
find_trim_frontModDivAids, 37
findFirstOfUnescapedstm::filespec, 202
findLastOfUnescapedstm::filespec, 203
findrangestm::integral_set, 278
findUnescapedParenthesesstm::filespec, 203
FirstSolutionSudoku, 375
fixedfmtstm::fixedfmt, 212
FlagMaskstm::local::xfilespec::Env, 436
flagsstm::hexfmt, 216, 217stm::hexfmt< ElemT ∗, DefaultFlags >, 220stm::local::xfilespec, 435stm::local::xfilespec::Env, 437stm::local::xfilespec::Rollback, 438stm::path::recursionenv, 346stm::tools::BaseMessage, 124stm::tools::BinMessage, 153
flags_
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
INDEX 628
stm::local::basic_xlogger::Fmt, 144stm::local::xfilefind, 427stm::local::xfilespeclist, 439stm::local::xhexfmt, 442stm::local::xrecursionenv, 485stm::tools::local::xBaseMessage, 402stm::tools::local::xBinMessage, 407
FmtModLoggerAids, 65stm::basic_logger::Fmt, 134stm::local::basic_xlogger::Fmt, 143
fmtstm::local::basic_xlogger::Stream, 147
FmtFlagsModLoggerAids, 65
FollowDirLinksstm::local::xrecursionenv, 484stm::path::recursionenv, 346
fp_stm::local::xinputrange, 448
Fpgastm::tools::local::xMsgTimestamp, 475stm::tools::MsgTimestamp, 324
frameChipsstm::tools::DspMessage::TraceHeader, 192
frameChips_stm::tools::local::xTraceHeader, 489
fromstm::integral_range, 262
frqstm::tools::LvdsPacket, 304
frq_stm::tools::local::xLvdsPacket, 466
fsize_stm::local::xreadablefile, 483
fspecstm::local::xfilespec, 434
fullstm::integral_range, 263stm::integral_set, 279
fullFileSpecstm::local::xfilespec, 435
fullrangestm::integral_range, 264
fullsetstm::integral_set, 285
Gapstm::tools::BinMessageContext::Gap, 158
gapstm::tools::BinMessageContext, 156
gap_stm::tools::local::xBinMessageContext, 410
GapImpl
stm::tools::local::xBinMessageGap, 412GenCRC Implementation, 57GenCRC Test, 90gencrc.hpp, 531GenCRC: Generic CRC Generation, 43GenCrcTest
Copyright, 90main, 90Version, 90
gencrctest.cpp, 533generate
Sudoku, 375Sudoku::State, 382
generatorPolynomialstm::crc, 172
generatorPolynomial_stm::local::xcrc, 416
GenPolDegreestm::local::xcrc, 415
genxcrc.hpp, 534STM_GENXCRC_HPP, 535
getModDivAids, 31stm::smartptr::injective_ptr, 232
get_pointerModSmartptrAids, 75
getCiCommentOptionstm::tools::Ct, 175
getColSudoku::State, 382
getCommandstm::tools::local::xCtOperation::LabelList,
420getCurrentBranch
stm::tools::Ct, 176getCurrentMasterReplica
stm::tools::Ct, 176getCurrentReplica
stm::tools::CtOperation, 184getFlags
stm::filefind, 197stm::filespec, 202
getIntegralDivAidsImpl, 50
getkeyModFilesysAids, 41
getMastershipTimeoutstm::tools::CtOperation, 184
getModestm::tools::Ct, 175
getrefcountstm::smartptr::local::item_descr< T, Compare,
false, false >, 288
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
INDEX 629
stm::smartptr::local::item_descr< T, Compare,false, true >, 290
stm::smartptr::local::item_descr< T, Compare,true, false >, 291
stm::smartptr::local::item_descr< T, Compare,true, true >, 293
stm::smartptr::local::mapped_ptr, 312stm::smartptr::local::mapped_ptr< T, Com-
pare, Allocator, refcounted, false >, 317getRow
Sudoku::State, 382getSpec
stm::filespec, 202getState
stm::filespec, 202getStem
stm::filefind, 197getSub
Sudoku::State, 382getVobRoot
stm::tools::CtOperation, 184
handlePathstm::local::xfilefind, 426
has_headstm::path, 338
has_tail_pathstm::path, 339
hasConsoleModLoggerAids, 67
hasStreamModLoggerAids, 67
hasTraceHeaderstm::tools::DspMessage, 189
headstm::local::BraceExpand::Data, 161stm::path, 338
HeaderSizestm::tools::local::xLvdsPacket, 465
hexfmtstm::hexfmt, 216stm::hexfmt< ElemT ∗, DefaultFlags >, 220
Hhostm::tools::LvdsPacket::DataType, 306
hostbigendianModDivAids, 31
hostlittleendianModDivAids, 31
hsTadsibstm::tools::MsgTimestamp, 326
hsTadsib_stm::tools::local::xMsgTimestamp, 476
hullstm::integral_set, 279
iappendstm::local::xfilespec, 431
idstm::local::xfilespec, 435stm::smartptr::local::item_descr< T, Compare,
false, false >, 288stm::smartptr::local::item_descr< T, Compare,
false, true >, 290stm::smartptr::local::item_descr< T, Compare,
true, false >, 291stm::smartptr::local::item_descr< T, Compare,
true, true >, 293stm::smartptr::local::item_type, 295stm::smartptr::local::mapped_ptr, 312stm::smartptr::local::mapped_ptr< T, Com-
pare, Allocator, refcounted, false >, 317Xyz, 491
id_stm::smartptr::local::mapped_ptr, 313stm::smartptr::local::mapped_ptr::rangeid_-
type, 315stm::smartptr::local::mapped_ptr< T, Com-
pare, Allocator, refcounted, false>::rangeid_type, 319
Identificationstm::tools::local::xMcBspMessage::Identification,
470stm::tools::local::xPrintkBinMessage::Identification,
479identity
ModDivAids, 38impl
stm::basic_logger, 133stm::crc, 170stm::filefind, 195stm::fixedfmt, 212stm::hexfmt, 216stm::hexfmt< ElemT ∗, DefaultFlags >, 220stm::inputrange, 246stm::inputrange_iterator, 254stm::integral_range, 261stm::integral_set, 273stm::local::xdirdata, 422stm::local::xfilefind, 426stm::local::xfilespec, 430stm::local::xfilespeclist, 439stm::local::xinputrange, 444stm::local::xinputrange_iterator, 450stm::local::xIntegral_range, 454stm::local::xIntegral_set, 458stm::local::xrecursionenv, 484stm::path::dirdata, 343stm::tools::local::xArgList, 399stm::tools::local::xCt, 417
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
INDEX 630
stm::tools::local::xCtOperation, 419Include
stm::tools::CtExceptions, 181increfcount
stm::smartptr::local::item_descr< T, Compare,false, false >, 288
stm::smartptr::local::item_descr< T, Compare,false, true >, 290
stm::smartptr::local::item_descr< T, Compare,true, false >, 291
stm::smartptr::local::item_descr< T, Compare,true, true >, 293
IndentModLoggerAids, 65stm::local::basic_xlogger, 139
indent_stm::local::basic_xlogger::Fmt, 143
indexstm::local::basic_xlogger::Stream, 147
index_Node, 329
infixstm::local::BraceExpand::Data::Tail, 162
initstm::smartptr::local::mapped_ptr, 312stm::smartptr::local::mapped_ptr< T, Com-
pare, Allocator, refcounted, false >, 317Sudoku, 377Sudoku::State, 381
initializeDivAidsImpl, 50, 54stm::local::xfilespec, 430
initSyslogModDebugAids, 22
InjOperation::Mode, 334
injective_ptrstm::smartptr::injective_ptr, 229, 230
injective_ptr_typestm::smartptr::injective_set, 238
injective_setstm::smartptr::injective_set, 238
inputstm::tools::BaseMessageContext, 129
input_stm::tools::local::xBaseMessageContext, 405
InputFilestm::inputseq, 257
inputfile_typestm::inputrange, 246stm::local::xinputrange, 445
InputFileSetstm::inputseq, 257
inputrange
stm::inputrange, 247inputrange_iterator
stm::inputrange_iterator, 254inputrange_type
stm::inputrange_iterator, 254stm::local::xinputrange_iterator, 450stm::tools::BaseMessageContext, 127stm::tools::BinMessageContext, 155stm::tools::local::xBaseMessageContext, 404
inputReflectionstm::crc, 172
inputseqstm::inputseq, 257
insertstm::filefind, 196stm::smartptr::injective_set, 239
int16ModDivAids, 30
int32ModDivAids, 30
int64ModDivAids, 30
int8ModDivAids, 30
integral_iteratorDivAidsImpl, 51, 52
integral_rangestm::integral_range, 261
integral_setstm::integral_set, 274
integral_typestm::integral_range, 261stm::integral_set, 273stm::local::xIntegral_range, 454stm::local::xIntegral_set, 458
Invalidstm::tools::local::xMsgTimestamp, 475stm::tools::MsgTimestamp, 324
invertstm::integral_set, 284
is_maximalstm::local::xIntegral_range, 454
is_minimalstm::local::xIntegral_range, 454
is_multirangestm::smartptr::injective_ptr, 232
is_signedstm::local::xIntegral_range, 454
is_surjectivestm::smartptr::injective_ptr, 232
isAbsolutestm::filespec, 204
isCheckedOutstm::tools::Ct, 176
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
INDEX 631
isContainedInstm::pstring, 354
isEndstm::inputrange, 248
isErrorstm::inputrange, 248
isFpgastm::tools::MsgTimestamp, 325
isLabelstm::tools::CtOperation, 185
isTextfilestm::readablefile, 357
isUdpstm::tools::MsgTimestamp, 325
isVobElementstm::tools::Ct, 175
isWin32ExecutableModFilesysAids, 41
itemstm::smartptr::local::item_descr< T, Compare,
false, true >, 290stm::smartptr::local::item_descr< T, Compare,
true, true >, 294item_descr
stm::smartptr::local::item_descr< T, Compare,false, false >, 288
stm::smartptr::local::item_descr< T, Compare,false, true >, 290
stm::smartptr::local::item_descr< T, Compare,true, false >, 291
stm::smartptr::local::item_descr< T, Compare,true, true >, 293
item_tstm::smartptr::local::item_descr< T, Compare,
false, true >, 290stm::smartptr::local::item_descr< T, Compare,
true, true >, 293item_type
stm::smartptr::local::item_type, 295iterator
stm::integral_set, 273stm::local::xIntegral_set, 458
KeepWsModLoggerAids, 65stm::local::basic_xlogger, 139
labelstm::tools::CtOperation, 185
labelCountstm::tools::CtOperation, 185
labelList_stm::tools::local::xCtOperation, 419
labelsPrepared_
stm::tools::local::xCtOperation, 420last
stm::integral_range, 263LastPart
stm::local::xfilespec::Env, 436Length
stm::tools::local::xTraceHeader, 490length
stm::tools::BinMessageContext::Gap, 158length_
stm::local::basic_xlogger::Fmt, 143stm::tools::local::xBinMessageGap, 412
LengthErrorstm::tools::LvdsPacket, 302
limit_stm::tools::local::xArgList, 399
limitedPathstm::pstring, 354
LineLengthModLoggerAids, 65
littleendianModDivAids, 31
loadstm::smartptr::local::mapped_ptr, 312stm::smartptr::local::mapped_ptr< T, Com-
pare, Allocator, refcounted, false >, 318TestPtr, 391TestSet, 395
loadOnlyOperation, 332
local::xBinMessage< ContextT >stm::tools::BinMessageContext, 156
local::xcondition::wait_stm::scoped_lock, 370
local::xsystem_condition::wait_stm::system_scoped_lock, 389
lockerModLoggerAids, 65stm::local::basic_xlogger::locker, 144
locker_basestm::local::basic_xlogger, 138
lockingstm::local::basic_xlogger, 138
LockingPolicyModLoggerAids, 65stm::logger_base, 298
LogErrorModDebugAids, 22
Loggerstm::tools::Ct, 174stm::tools::local::xCt, 417stm::tools::local::xCtOperation, 419
loggerModLoggerAids, 69, 70
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
INDEX 632
stm::logger, 297stm::tools::Ct, 174
logger_stm::tools::local::xCt, 417
logger_typeModLoggerAids, 64stm::basic_logger::locker, 135
LoggerAids Implementation, 58loggeraids.hpp, 535LoggerAids: Formatted Logging Aids, 60LoggerAidsImpl
psep_, 58PsepLen, 58
loggerxaids.hpp, 537STM_LOGGERXAIDS_HPP, 539
LogInfoModDebugAids, 22
LogLevelMaskModDebugAids, 22
LogNoPerrorModDebugAids, 22
LogPerrorModDebugAids, 22
LogWarningModDebugAids, 22
LowerCasestm::fmtflags, 213
LvdsPacketstm::tools::LvdsPacket, 302
LvdsPacket Implementation, 80lvdspacket.hpp, 539LvdsPacket: LVDS Packet Model, 83LvdsPacketImpl
stm::tools::LvdsPacket, 301lvdsSubslot
stm::tools::LvdsPacket, 303lvdsSubslot_
stm::tools::local::xLvdsPacket, 465
mainDivAidsTest, 87FilesysAidsTest, 89GenCrcTest, 90SmartptrAidsTest, 92StmAidsTest, 96
MakeAbsolutestm::filespec, 205stm::local::xfilespec, 434
makedirModFilesysAids, 41
manFilesysAidsTest, 89SmartptrAidsTest, 93StmAidsTest, 97
mapped_ptrstm::smartptr::local::mapped_ptr, 311stm::smartptr::local::mapped_ptr< T, Com-
pare, Allocator, refcounted, false >, 316,317
mapped_ptr_implstm::smartptr::injective_ptr, 227stm::smartptr::local::mapped_ptr, 311stm::smartptr::local::mapped_ptr< T, Com-
pare, Allocator, refcounted, false >, 316mastershipTimeout_
stm::tools::local::xCtOperation, 419match
DivAidsImpl, 50, 54matches
stm::filespec, 201stm::filespeclist, 209
maxstm::integral_set, 279
MaxAntennasstm::tools::LvdsPacket, 302
MaxPayloadLengthstm::tools::LvdsPacket, 302
MaxValstm::integral_range, 266stm::integral_set, 287stm::local::xIntegral_range, 456stm::local::xIntegral_set, 459
McBspMessagestm::tools::McBspMessage, 322
McBspMessage< context_type >stm::tools::local::xMcBspMessage, 468
McBspMessageImplstm::tools::McBspMessage, 321
McBspMsg Implementation, 81mcbspmsg.hpp, 540McBspMsg: McBSP Message Model, 83McBspMsgImpl
type_, 81message_
stm::tools::local::xBinMessage, 407min
stm::integral_set, 279minIndent_
stm::local::basic_xlogger::Fmt, 143Minus
stm::tools::LvdsPacket::Aich, 305MinVal
stm::integral_range, 266stm::integral_set, 287stm::local::xIntegral_range, 456stm::local::xIntegral_set, 459
mkIteratorDivAidsImpl, 53
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
INDEX 633
mkPathModLoggerAids, 69
ModDebugAidsinitSyslog, 22LogError, 22LogInfo, 22LogLevelMask, 22LogNoPerror, 22LogPerror, 22LogWarning, 22StmDebugAidsErrmsg, 20StmDebugAidsVerify, 20syslog, 22SyslogError, 22SyslogFlags, 21SyslogInfo, 22SyslogLevelMask, 22SyslogNoLog, 22SyslogNoPerror, 22SyslogPerror, 22SyslogWarning, 22
ModDivAidsaddrword, 30bigendian, 31byte, 30clamped_offset, 35clamped_rest, 35dword, 30endianConvertedIf, 33endianConvertIf, 32fetch, 31find_token_end, 36, 37find_trim_back, 36find_trim_front, 37get, 31hostbigendian, 31hostlittleendian, 31identity, 38int16, 30int32, 30int64, 30int8, 30littleendian, 31networkByteOrderConvert, 32networkByteOrderConverted, 33nrOfSetBits, 35operator<<, 34, 35operator>>, 34pad, 33put, 33qword, 30StmRectrlTry, 29swap, 32swapped, 32
tolower, 38trim, 37, 38trim_back, 35, 36trim_front, 37word, 30
modeOperation, 332
mode_stm::tools::local::xCt, 418
ModFilesysAidsbrace_expand, 41designateSame, 42getkey, 41isWin32Executable, 41makedir, 41numpath, 41operator!=, 43operator<, 42operator==, 42, 43sizedfile, 41swap, 42
ModLoggerAids∼basic_logger, 66∼locker, 66adjustChild, 68AutoInd, 65basic_logger, 66char_type, 64ColonInd, 65ColonTable, 65Fmt, 65FmtFlags, 65hasConsole, 67hasStream, 67Indent, 65KeepWs, 65LineLength, 65locker, 65LockingPolicy, 65logger, 69, 70logger_type, 64mkPath, 69NoFlag, 65NoPara, 65operator(), 68ostream_type, 64paragraph, 69RawPath, 65RiJust, 65setConsole, 67, 70, 71setStream, 67Single, 65StdIndent, 65string_type, 64
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
INDEX 634
underline, 69unsetConsole, 68unsetStream, 67wlogger, 70, 71
ModSmartptrAidsget_pointer, 75Multirange, 75operator!=, 74operator<, 74operator<<, 75operator==, 74Surjective, 75swap, 74
MsgTimestampstm::tools::MsgTimestamp, 325
MsgTimestamp Implementation, 82msgtimestamp.hpp, 541MsgTimestamp: Message Timestamp Model, 84MsgTimestampImpl
stm::tools::local::xMsgTimestamp, 474Multirange
ModSmartptrAids, 75multirange
stm::smartptr::MakeMultirange, 308stm::smartptr::MakeSurjective, 309stm::smartptr::policy, 349
mutex_stm::local::xscoped_lock, 486stm::local::xsystem_scoped_lock, 488
nSudoku, 378
n2Sudoku, 378
n3Sudoku, 378
n4Sudoku, 378
name_typestm::path, 337stm::readablefile, 356
nativeSeparatorstm::pstring, 354
networkByteOrderConvertModDivAids, 32
networkByteOrderConvertedModDivAids, 33
nilstm::smartptr::injective_set, 238
nlsstm::local::basic_xlogger::Stream, 147
no_lockstm::local::basic_xlogger::no_lock, 145
NoBraceExpansion
stm::filespeclist, 210stm::local::xfilespeclist, 439
NoBracketExprstm::filespec, 206stm::local::xfilespec, 434
noBracketExprFileSpecstm::local::xfilespec, 435
NoCharClassstm::filespec, 205stm::local::xfilespec, 434
noCharClassFileSpecstm::local::xfilespec, 435
Node, 327index_, 329Node, 328offset, 328offset_, 329operator<, 328parent_, 329Ptr, 328slot, 328slot_, 329
nodesSmartptrAidsTest, 95
NodeSetSmartptrAidsTest, 92
NoDirectoriesstm::filefind, 197stm::local::xfilefind, 427
NoErrorstm::tools::BaseMessage, 123stm::tools::BinMessage, 152stm::tools::DspMessage, 189stm::tools::LvdsPacket, 302
NoFlagModLoggerAids, 65stm::local::basic_xlogger, 139
NoFlagsstm::filefind, 197stm::filespec, 205stm::filespeclist, 210stm::fmtflags, 213stm::path::recursionenv, 346stm::tools::BaseMessage, 123stm::tools::BinMessage, 152stm::tools::CtExceptions, 181
NoLockingstm::logger_base, 298
NoParaModLoggerAids, 65stm::local::basic_xlogger, 139
NoPathSeparatorsstm::filespec, 205stm::local::xfilespec, 433
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
INDEX 635
NoPlainFilesstm::filefind, 198stm::local::xfilefind, 427
NoPrefixstm::fmtflags, 213
noprefixstm::hexfmt, 217stm::hexfmt< ElemT ∗, DefaultFlags >, 221
Normalstm::tools::Ct::Mode, 178
normalizestm::filespec, 204
NoRootNamestm::filespec, 205stm::local::xfilespec, 433
notReadSizestm::inputrange, 249
notReadSize_stm::local::xinputrange, 447
nrOfSetBitsModDivAids, 35
numpathModFilesysAids, 41
numpstringstm::numpstring, 331
obtainReplicaMastershipstm::tools::CtOperation, 184
offsetNode, 328stm::inputrange, 249stm::tools::BinMessageContext::Gap, 158
offset_Node, 329stm::local::xinputrange, 447stm::tools::local::xBinMessageGap, 412
opCodestm::tools::DspMessage::TraceHeader, 192
opCode_stm::tools::local::xTraceHeader, 490
Operation, 331archive, 333dir, 333loadOnly, 332mode, 332Operation, 332type, 332
Operation::Archive, 333All, 334Bin, 334Txt, 334Xml, 334
Operation::Mode, 334All, 334
Bij, 334Inj, 334
Operation::Type, 334All, 335Ptr, 335Set, 335
operator ∗DivAidsImpl, 51stm::inputrange_iterator, 255stm::smartptr::injective_ptr, 231stm::smartptr::local::repository_type::range_-
iterator, 364stm::smartptr::local::repository_type< T,
Compare, Allocator, refcounted, false>::range_iterator, 369
operator &stm::integral_range, 263, 264stm::integral_set, 281
operator &=stm::integral_range, 264stm::integral_set, 281, 282
operator boolstm::smartptr::injective_ptr, 231stm::tools::BinMessageContext::Gap, 158stm::tools::local::xMcBspMessage::Identification,
470stm::tools::local::xPrintkBinMessage::Identification,
479operator const RangeSetT &
stm::integral_set, 277operator ElemT ∗
stm::hexfmt< ElemT ∗, DefaultFlags >, 220operator FloatT
stm::fixedfmt, 212operator std::string
stm::local::errmsg, 193operator stm::dword
stm::smartptr::local::mapped_ptr::rangeid_-type, 314
stm::smartptr::local::mapped_ptr< T, Com-pare, Allocator, refcounted, false>::rangeid_type, 319
operator StringTstm::hexfmt, 217stm::hexfmt< ElemT ∗, DefaultFlags >, 221
operator UnsignedTstm::hexfmt, 216
operator!=DivAidsImpl, 51ModFilesysAids, 43ModSmartptrAids, 74stm::integral_range, 266stm::integral_set, 286, 287
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
INDEX 636
stm::smartptr::local::repository_type::range_-iterator, 364
stm::smartptr::local::repository_type< T,Compare, Allocator, refcounted, false>::range_iterator, 368
operator<ModFilesysAids, 42ModSmartptrAids, 74Node, 328Slot, 372SmartptrAidsTest, 92stm::filespec, 202stm::integral_range, 265stm::smartptr::local::item_type, 295
operator<<ModDivAids, 34, 35ModSmartptrAids, 75stm::local::errmsg, 193
operator<=stm::integral_range, 265stm::integral_set, 285
operator>>ModDivAids, 34
operator>=stm::integral_range, 265stm::integral_set, 285, 286
operator∼stm::integral_set, 284
operator∧
stm::integral_set, 283operator∧=
stm::integral_set, 283, 284operator()
ModLoggerAids, 68stm::crc, 171, 172stm::local::BraceExpand::Data, 161stm::nospace, 330stm::path::dirdata, 344stm::smartptr::local::comp_id, 164stm::smartptr::local::comp_value, 164, 165stm::smartptr::local::comp_value_id, 165stm::smartptr::local::decrefcount, 186stm::smartptr::local::increfcount, 222stm::smartptr::local::pcomp, 347stm::space, 373stm::tools::local::xMcBspMessage::Identification,
470stm::tools::local::xPrintkBinMessage::Identification,
479operator++
DivAidsImpl, 52stm::inputrange_iterator, 255stm::smartptr::local::repository_type::range_-
iterator, 364
stm::smartptr::local::repository_type< T,Compare, Allocator, refcounted, false>::range_iterator, 368
operator+=stm::tools::Ct::ArgList, 177
operator-stm::integral_set, 282stm::path, 339
operator->stm::inputrange_iterator, 255stm::smartptr::injective_ptr, 231stm::smartptr::local::repository_type::range_-
iterator, 364stm::smartptr::local::repository_type< T,
Compare, Allocator, refcounted, false>::range_iterator, 369
operator–DivAidsImpl, 52
operator-=stm::integral_set, 282, 283
operator=stm::integral_set, 276stm::local::xinputrange, 446stm::smartptr::injective_ptr, 230stm::smartptr::injective_set::accessor, 243
operator==DivAidsImpl, 51ModFilesysAids, 42, 43ModSmartptrAids, 74stm::filespec, 202stm::integral_range, 265, 266stm::integral_set, 286stm::local::basic_xlogger::Fmt, 143stm::smartptr::local::repository_type::range_-
iterator, 364stm::smartptr::local::repository_type< T,
Compare, Allocator, refcounted, false>::range_iterator, 368
TestPtr, 391TestSet, 395
operator|stm::integral_set, 280
operator|=stm::integral_set, 280, 281
optassignDivAidsImpl, 51
optrangeDivAidsImpl, 55
optrangesDivAidsImpl, 55
ostream_typeModLoggerAids, 64stm::local::basic_xlogger, 138
OutOfSync
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
INDEX 637
stm::tools::BaseMessage, 123stm::tools::BinMessage, 152
outputstm::local::basic_xlogger, 142
pSmartptrAidsTest, 95
padModDivAids, 33
paragraphModLoggerAids, 69
parentstm::path::dirdata, 344stm::tools::DspMessage, 190stm::tools::LvdsPacket, 304
parent_Node, 329stm::local::xdirdata, 422stm::local::xIntegral_set::integral_iterator, 462stm::tools::local::xDspMessage, 424stm::tools::local::xLvdsPacket, 466
parent_typestm::tools::DspMessage, 188stm::tools::local::xDspMessage, 424stm::tools::local::xLvdsPacket, 464stm::tools::LvdsPacket, 301
partitionstm::local::xfilefind, 426stm::local::xfilespec, 430
pathstm::path, 337, 338
path_typestm::filefind, 195stm::local::xfilefind, 426
pathcontainer_typestm::filefind, 195stm::local::xfilefind, 426
PATHLENctaids.cpp, 497
PathSepstm::local::xfilespec::Env, 437
PayloadLengthstm::tools::LvdsPacket::Aich, 305
payloadLengthstm::tools::DspMessage::TraceHeader, 192
payloadLength_stm::tools::local::xTraceHeader, 490
PayloadLengthErrorstm::tools::LvdsPacket, 302
PlainFilestm::tools::CtExceptions, 181
Plusstm::tools::LvdsPacket::Aich, 305
pointee_type
stm::smartptr::local::pointee_type, 348policy_type
stm::smartptr::injective_ptr, 228stm::smartptr::injective_set, 237
postfixstm::local::BraceExpand::Data::Tail, 162
potSudoku::State, 385
prec_stm::local::xfixedfmt, 440
precisionstm::fixedfmt, 212
preparestm::tools::local::xCtOperation::LabelList,
420prepareLabels
stm::tools::CtOperation, 185printch
stm::local::basic_xlogger, 141PrintkBinMessage
stm::tools::PrintkBinMessage, 351PrintkBinMessage< context_type >
stm::tools::local::xPrintkBinMessage, 477PrintkBinMessageImpl
stm::tools::PrintkBinMessage, 351PrintkBinMsg Implementation, 82printkbinmsg.hpp, 543PrintkBinMsg: PrintkBin Message Model, 85PrintkBinMsgImpl
type_, 83priority
stm::tools::LvdsPacket, 303priority_
stm::tools::local::xLvdsPacket, 465PriorityError
stm::tools::LvdsPacket, 302ProcessLocking
stm::logger_base, 298psep_
LoggerAidsImpl, 58PsepChars
FilesysAidsImpl, 57PsepLen
LoggerAidsImpl, 58PsepRe
FilesysAidsImpl, 57pStream
stm::local::basic_xlogger::Stream, 146pstring
stm::pstring, 353Ptr
Node, 328Operation::Type, 335
ptr
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
INDEX 638
stm::smartptr::bijective, 148stm::smartptr::injective, 223stm::smartptr::local::item_descr< T, Compare,
false, false >, 289stm::smartptr::local::item_descr< T, Compare,
false, true >, 290stm::smartptr::local::item_descr< T, Compare,
true, false >, 292stm::smartptr::local::item_descr< T, Compare,
true, true >, 293stm::smartptr::local::item_type, 295Xyz, 491
ptr1SmartptrAidsTest, 94
ptr2SmartptrAidsTest, 94
ptr_stm::smartptr::local::mapped_ptr, 313stm::smartptr::local::mapped_ptr< T, Com-
pare, Allocator, refcounted, false >, 318put
ModDivAids, 33
qwordModDivAids, 30
RandomSolutionSudoku, 375
randomValSudoku::State, 384
rangeDivAidsImpl, 55stm::local::xIntegral_set::Env, 461stm::smartptr::injective_ptr, 233stm::smartptr::injective_set, 239stm::smartptr::local::repository_type, 361stm::smartptr::local::repository_type< T,
Compare, Allocator, refcounted, false >,366
range_stm::smartptr::local::repository_type< T,
Compare, Allocator, refcounted, false >,367
range_availablestm::smartptr::injective_ptr, 234
range_definedstm::smartptr::injective_ptr, 234
range_emptystm::smartptr::injective_ptr, 234
range_iteratorstm::integral_set, 274stm::smartptr::local::repository_type::range_-
iterator, 363
stm::smartptr::local::repository_type< T,Compare, Allocator, refcounted, false>::range_iterator, 368
range_mapstm::smartptr::local::repository_type, 360
range_typestm::integral_range, 261stm::integral_set, 273stm::local::xIntegral_set, 458stm::smartptr::injective_ptr, 228stm::smartptr::injective_set, 238stm::smartptr::local::repository_type, 360stm::smartptr::local::repository_type< T,
Compare, Allocator, refcounted, false >,365
rangeAvailablestm::smartptr::local::repository_type, 362stm::smartptr::local::repository_type< T,
Compare, Allocator, refcounted, false >,367
rangeDefinedstm::smartptr::local::repository_type, 362stm::smartptr::local::repository_type< T,
Compare, Allocator, refcounted, false >,367
rangeEmptystm::smartptr::local::repository_type, 361stm::smartptr::local::repository_type< T,
Compare, Allocator, refcounted, false >,367
rangeidstm::smartptr::injective_ptr, 233
rangeid_stm::smartptr::injective_set, 240
rangeid_setstm::smartptr::local::repository_type, 360
rangeid_typestm::smartptr::injective_ptr, 228stm::smartptr::local::mapped_ptr::rangeid_-
type, 314stm::smartptr::local::mapped_ptr< T, Com-
pare, Allocator, refcounted, false>::rangeid_type, 319
rangeOfDivAidsImpl, 53
rangesDivAidsImpl, 55stm::integral_set, 279
ranges_stm::smartptr::local::repository_type, 362
rangesetstm::local::xIntegral_set::Env, 461
rangeset_typestm::integral_set, 273
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
INDEX 639
stm::local::xIntegral_set, 458RawPath
ModLoggerAids, 65stm::local::basic_xlogger, 139
rbeginstm::integral_set, 275
rbeginrangestm::integral_set, 276
rbuf_stm::local::xinputrange_iterator, 451
restm::local::BraceExpand, 159stm::local::xfilespec, 434
re_stm::local::BraceExpand, 159
readstm::inputrange, 247Sudoku, 376Sudoku::State, 381
readablefilestm::readablefile, 356
reCtrlstm::local::xfilespec, 435
recursestm::path, 339, 340
recursionenvstm::path::recursionenv, 346
refcountstm::smartptr::local::item_descr< T, Compare,
true, false >, 292stm::smartptr::local::item_descr< T, Compare,
true, true >, 294refcount_type
SmartptrAidsImpl, 60stm::smartptr::injective_ptr, 228
reflectstm::local::xcrc, 415
reflect_stm::local::xcrc, 416
regexpstm::local::xfilespec::Env, 437
registerMessageTypestm::tools::BinMessageContext, 156
relative_to_directorystm::path, 339
removestm::smartptr::local::repository_type, 361stm::smartptr::local::repository_type< T,
Compare, Allocator, refcounted, false >,366
rempol_typestm::crc, 170stm::local::xcrc, 415
rend
stm::integral_set, 275rendrange
stm::integral_set, 276rep_by_ptr_
stm::smartptr::local::repository_type, 362reportClose
stm::inputrange, 251reportError
stm::inputrange, 251reportOpen
stm::inputrange, 251repository
stm::smartptr::injective_ptr, 227stm::smartptr::local::mapped_ptr, 311stm::smartptr::local::mapped_ptr< T, Com-
pare, Allocator, refcounted, false >, 316repository_
stm::smartptr::local::mapped_ptr, 313stm::smartptr::local::mapped_ptr< T, Com-
pare, Allocator, refcounted, false >, 318repository_type
stm::smartptr::local::repository_type, 360stm::smartptr::local::repository_type< T,
Compare, Allocator, refcounted, false >,366
ReqHeaderWordOneBitsMaskstm::tools::local::xMcBspMessage::Identification,
473ReqHeaderWordZeroBitsMask
stm::tools::local::xMcBspMessage::Identification,473
RequiredOneBitsMaskSize4stm::tools::local::xMcBspMessage::Identification,
473RequiredOneBitsMaskSize5
stm::tools::local::xMcBspMessage::Identification,473
RequiredZeroBitsMaskSize4stm::tools::local::xMcBspMessage::Identification,
472RequiredZeroBitsMaskSize5
stm::tools::local::xMcBspMessage::Identification,473
resetstm::local::xfilespec::Env, 436stm::smartptr::injective_ptr, 230
restoreSudoku::State, 384
reStrstm::filespec, 201
retstm::local::basic_xlogger::Stream, 147
reverse_iteratorstm::integral_set, 274
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
INDEX 640
stm::local::xIntegral_set, 459reverse_range_iterator
stm::integral_set, 274rfind
stm::integral_set, 278rfindrange
stm::integral_set, 278RiJust
ModLoggerAids, 65stm::local::basic_xlogger, 139
rit_stm::local::xIntegral_set::integral_iterator, 462
Rollbackstm::local::xfilespec::Rollback, 438
rootstm::path::recursionenv, 346
root_stm::local::xrecursionenv, 484
rootNodeSmartptrAidsTest, 95
rootSlotSmartptrAidsTest, 95
rowSudoku, 378
Rsvstm::tools::LvdsPacket::DataType, 306
rsvstm::tools::LvdsPacket, 304
rsv_stm::tools::local::xLvdsPacket, 466
safe_getstm::byte_iterator_range, 163
savestm::smartptr::local::mapped_ptr, 312stm::smartptr::local::mapped_ptr< T, Com-
pare, Allocator, refcounted, false >, 318TestPtr, 391TestSet, 394
scanstm::local::xinputrange_iterator, 451
scoped_lockstm::scoped_lock, 370
seqNostm::tools::local::xPrintkBinMessage::Identification,
480stm::tools::MsgTimestamp, 326
seqNo_stm::tools::local::xMsgTimestamp, 475stm::tools::local::xPrintkBinMessage::Identification,
482serialize
stm::smartptr::local::mapped_ptr, 313
stm::smartptr::local::mapped_ptr< T, Com-pare, Allocator, refcounted, false >, 318
stm::smartptr::local::pointee_type, 348Set
Operation::Type, 335set
stm::smartptr::bijective, 148stm::smartptr::injective, 223
setassignDivAidsImpl, 54
setBodystm::tools::BaseMessage, 125
setBufStepstm::inputrange, 249
setCiCommentOptionstm::tools::Ct, 175
setConsoleModLoggerAids, 67, 70, 71
setFpgaTimestampstm::tools::BaseMessage, 125
setInputstm::inputrange, 247stm::local::xinputrange, 446
setMastershipTimeoutstm::tools::CtOperation, 184
setModestm::tools::Ct, 175
setpathstm::readablefile, 357
setStatusstm::tools::BaseMessage, 124
setStreamModLoggerAids, 67
setTimestampstm::tools::BaseMessageContext, 129stm::tools::local::xBaseMessage, 401
setTypestm::tools::BaseMessageContext, 128
setUdpTimestampstm::tools::BaseMessage, 125
setVobRootstm::tools::CtOperation, 183
signalstm::condition, 167stm::system_condition, 387
silentSudoku, 377
Simulatestm::tools::Ct::Mode, 178
SingleModLoggerAids, 65stm::local::basic_xlogger, 139
SingleSpecstm::filespeclist, 210
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
INDEX 641
stm::local::xfilespeclist, 439size
stm::integral_range, 263stm::integral_set, 278stm::local::xfilespec::Rollback, 438stm::smartptr::injective_set, 240stm::tools::DspMessage::TraceHeader, 191stm::tools::local::xMcBspMessage::Identification,
470stm::tools::local::xPrintkBinMessage::Identification,
479Size4
stm::tools::local::xMcBspMessage::Identification,469
Size5stm::tools::local::xMcBspMessage::Identification,
470size_
stm::local::xIntegral_set, 459stm::tools::local::xMcBspMessage::Identification,
472stm::tools::local::xPrintkBinMessage::Identification,
481stm::tools::local::xTraceHeader, 489
SizeAbcdstm::tools::local::xPrintkBinMessage::Identification,
479sizedfile
ModFilesysAids, 41SizeZyxw
stm::tools::local::xPrintkBinMessage::Identification,478
Slot, 371child, 371children_, 372disp, 371disp_, 372operator<, 372Slot, 371
slotNode, 328stm::tools::local::xMcBspMessage::Identification,
471stm::tools::MsgTimestamp, 326
slot_Node, 329stm::tools::local::xMcBspMessage::Identification,
472stm::tools::local::xMsgTimestamp, 475
SmartptrAids Implementation, 59SmartptrAids Test, 90smartptraids.hpp, 544SmartptrAids: Smart Pointer Aids, 71SmartptrAidsImpl
refcount_type, 60SmartptrAidsTest
Copyright, 93main, 92man, 93nodes, 95NodeSet, 92operator<, 92p, 95ptr1, 94ptr2, 94rootNode, 95rootSlot, 95testptr, 92testset, 92Version, 93xyz1, 95xyz2, 95XyzPtr, 92
smartptrtest.cpp, 547smartptrxaids.hpp, 548
STM_SMARTPTRXAIDS_HPP, 552solve
Sudoku, 376Sudoku::State, 381
starStarOpstm::local::xfilespec, 432
StateSudoku, 377Sudoku::State, 380
stateSudoku, 377
StatePtrSudoku, 375
statusstm::tools::BaseMessage, 124stm::tools::BinMessage, 153stm::tools::DspMessage, 189stm::tools::LvdsPacket, 303stm::tools::MsgTimestamp, 325
status_stm::tools::local::xBaseMessage, 402stm::tools::local::xDspMessage, 424stm::tools::local::xLvdsPacket, 465stm::tools::local::xMsgTimestamp, 475
std::basic_ostringstream, 373std::map, 373StdIndent
ModLoggerAids, 65stem_
stm::local::xfilefind, 427stm, 104stm::basic_logger, 129
impl, 133
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
INDEX 642
stm::basic_logger::Fmt, 133Fmt, 134
stm::basic_logger::locker, 134logger_type, 135
stm::buffer, 111stm::byte_iterator_range, 162
byte_iterator_range, 163safe_get, 163
stm::condition, 166∼condition, 167broadcast, 167condition, 167signal, 167timed_wait, 167wait, 167
stm::crc, 168crc, 170defaultInitialRemainderPolynomial, 172generatorPolynomial, 172impl, 170inputReflection, 172operator(), 171, 172rempol_type, 170
stm::filefind, 194filefind, 196getFlags, 197getStem, 197impl, 195insert, 196NoDirectories, 197NoFlags, 197NoPlainFiles, 198path_type, 195pathcontainer_type, 195StoreRelative, 198
stm::filespec, 198beginsWithRootDirectory, 205beginsWithRootName, 204containsUnescapedBrace, 204containsUnescapedEreOperator, 204containsUnescapedPatternMatchingOperator,
203filespec, 201findFirstOfUnescaped, 202findLastOfUnescaped, 203findUnescapedParentheses, 203getFlags, 202getSpec, 202getState, 202isAbsolute, 204MakeAbsolute, 205matches, 201NoBracketExpr, 206NoCharClass, 205
NoFlags, 205NoPathSeparators, 205normalize, 204NoRootName, 205operator<, 202operator==, 202reStr, 201UseExtRegularExpr, 206UseMultipleDirOperator, 206
stm::filespeclist, 206append, 209clear, 209const_iterator, 208filespeclist, 208matches, 209NoBraceExpansion, 210NoFlags, 210SingleSpec, 210
stm::fixedfmt, 210fixedfmt, 212impl, 212operator FloatT, 212precision, 212value_type, 212
stm::fmtflags, 213LowerCase, 213NoFlags, 213NoPrefix, 213
stm::has_pow2size, 213value, 214
stm::hexfmt, 214defaultFlags, 218dump, 217flags, 216, 217hexfmt, 216impl, 216noprefix, 217operator StringT, 217operator UnsignedT, 216value_type, 216
stm::hexfmt< ElemT ∗, DefaultFlags >, 218defaultFlags, 221flags, 220hexfmt, 220impl, 220noprefix, 221operator ElemT ∗, 220operator StringT, 221value_type, 220
stm::inputrange, 243∼inputrange, 247bufAdvance, 250bufEnd, 250bufExhausted, 250
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
INDEX 643
bufFull, 250bufPtr, 250bufSetup, 249BufSize, 247clear, 247file, 248fileOffset, 248filerange_type, 246impl, 246inputfile_type, 246inputrange, 247isEnd, 248isError, 248notReadSize, 249offset, 249read, 247reportClose, 251reportError, 251reportOpen, 251setBufStep, 249setInput, 247totalSize, 249
stm::inputrange_iterator, 251∼inputrange_iterator, 255bufrange_type, 254context_type, 254equal, 255impl, 254inputrange_iterator, 254inputrange_type, 254operator ∗, 255operator++, 255operator->, 255
stm::inputseq, 256base, 257InputFile, 257InputFileSet, 257inputseq, 257
stm::integral_range, 257assign, 262clear, 264empty, 263EmptyAllowed, 267emptyrange, 264fill, 264from, 262full, 263fullrange, 264impl, 261integral_range, 261integral_type, 261last, 263MaxVal, 266MinVal, 266
operator &, 263, 264operator &=, 264operator!=, 266operator<, 265operator<=, 265operator>=, 265operator==, 265, 266range_type, 261size, 263swap, 262to, 263
stm::integral_set, 267assign, 277begin, 275beginrange, 275clear, 284const_iterator, 274const_reverse_iterator, 274empty, 279emptyset, 284end, 275endrange, 276fill, 285find, 277findrange, 278full, 279fullset, 285hull, 279impl, 273integral_set, 274integral_type, 273invert, 284iterator, 273max, 279MaxVal, 287min, 279MinVal, 287operator &, 281operator &=, 281, 282operator const RangeSetT &, 277operator!=, 286, 287operator<=, 285operator>=, 285, 286operator∼, 284operator∧, 283operator∧=, 283, 284operator-, 282operator-=, 282, 283operator=, 276operator==, 286operator|, 280operator|=, 280, 281range_iterator, 274range_type, 273
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
INDEX 644
ranges, 279rangeset_type, 273rbegin, 275rbeginrange, 276rend, 275rendrange, 276reverse_iterator, 274reverse_range_iterator, 274rfind, 278rfindrange, 278size, 278swap, 277
stm::local, 113stm::local::basic_xlogger
AutoInd, 139ColonInd, 139ColonTable, 139Indent, 139KeepWs, 139NoFlag, 139NoPara, 139RawPath, 139RiJust, 139Single, 139Streams, 139
stm::local::basic_xlogger::StreamColonFound, 146ColonInactive, 146ColonReady, 146ColonScan, 146
stm::local::basic_xlogger, 135adjustSync, 140, 141basic_xlogger, 139, 140char_type, 138clearNls, 141destroySync, 140locker_base, 138locking, 138ostream_type, 138output, 142printch, 141string_type, 138sync_, 142tprint, 141
stm::local::basic_xlogger::Fmt, 142flags_, 144Fmt, 143indent_, 143length_, 143minIndent_, 143operator==, 143
stm::local::basic_xlogger::locker, 144∼locker, 144locker, 144
stm::local::basic_xlogger::no_lock, 145no_lock, 145
stm::local::basic_xlogger::Stream, 145colonState, 147fmt, 147index, 147nls, 147pStream, 146ret, 147wrapped, 147
stm::local::BraceExpand, 159re, 159re_, 159toExpand, 159
stm::local::BraceExpand::Data, 160∼Data, 160Data, 160head, 161operator(), 161tail, 161
stm::local::BraceExpand::Data::Tail, 161∼Tail, 161infix, 162postfix, 162Tail, 161
stm::local::errmsg, 193active, 193errmsg, 193operator std::string, 193operator<<, 193
stm::local::xcondition, 412cond_, 413xcondition, 413
stm::local::xcrc, 413∼xcrc, 415ByteLen, 415defaultInitialRemainderPolynomial_, 416generatorPolynomial_, 416GenPolDegree, 415reflect, 415reflect_, 416rempol_type, 415tab_, 416TabDim, 415TopByteOffset, 415TopCoeffMask, 415xcrc, 415
stm::local::xdirdata, 421dirpath_, 422env_, 422impl, 422parent_, 422xdirdata, 422
stm::local::xfilefind, 425
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
INDEX 645
flags_, 427handlePath, 426impl, 426NoDirectories, 427NoPlainFiles, 427partition, 426path_type, 426pathcontainer_type, 426stem_, 427StoreRelative, 427xfilefind, 426
stm::local::xfilespec, 427appChar, 431appCirc, 432appDot, 431appDotSeq, 432append, 431bracketExpr, 432charClassExpr, 433checkLeadingDot, 433collSymb, 433ereBracketExpr, 432ereFileSpec, 435flags, 435fspec, 434fullFileSpec, 435iappend, 431id, 435impl, 430initialize, 430MakeAbsolute, 434NoBracketExpr, 434noBracketExprFileSpec, 435NoCharClass, 434noCharClassFileSpec, 435NoPathSeparators, 433NoRootName, 433partition, 430re, 434reCtrl, 435starStarOp, 432UseExtRegularExpr, 434UseMultipleDirOperator, 434xfilefind, 433xfilespec, 430
stm::local::xfilespec::Env, 436Env, 436FlagMask, 436flags, 437LastPart, 436PathSep, 437regexp, 437reset, 436
stm::local::xfilespec::Rollback, 437
flags, 438Rollback, 438size, 438
stm::local::xfilespeclist, 438flags_, 439impl, 439NoBraceExpansion, 439SingleSpec, 439xfilespeclist, 439
stm::local::xfixedfmt, 439prec_, 440val_, 440xfixedfmt, 440
stm::local::xhexfmt, 441flags_, 442val_, 442xhexfmt, 442
stm::local::xinputrange, 442∼xinputrange, 445base, 444BOOST_STATIC_ASSERT, 445bufEnd_, 446buffer_, 446bufPtr_, 446bufStep_, 447clear, 445error_, 447fileIt_, 448filerange_type, 444files_, 448fp_, 448impl, 444inputfile_type, 445notReadSize_, 447offset_, 447operator=, 446setInput, 446totalSize_, 447xinputrange, 445
stm::local::xinputrange_iterator, 448Align, 450BOOST_STATIC_ASSERT, 451bufrange, 451bufrange_type, 450constructed_, 452context_, 451context_type, 450filerange_type, 450impl, 450inputrange_type, 450rbuf_, 451scan, 451xinputrange_iterator, 450
stm::local::xIntegral_range, 452
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
INDEX 646
base, 454BOOST_STATIC_ASSERT, 455EmptyAllowed, 456impl, 454integral_type, 454is_maximal, 454is_minimal, 454is_signed, 454MaxVal, 456MinVal, 456testMax, 455testMin, 455xIntegral_set, 456
stm::local::xIntegral_set, 456const_iterator, 459const_reverse_iterator, 459impl, 458integral_type, 458iterator, 458MaxVal, 459MinVal, 459range_type, 458rangeset_type, 458reverse_iterator, 459size_, 459
stm::local::xIntegral_set::Env, 460Env, 460range, 461rangeset, 461
stm::local::xIntegral_set::integral_iterator, 461parent_, 462rit_, 462value_, 462xIntegral_set< IntegralRangeT, RangeSetT >,
462stm::local::xreadablefile, 482
fsize_, 483xreadablefile, 483
stm::local::xrecursionenv, 483DoNotRecurse, 484flags_, 485FollowDirLinks, 484impl, 484root_, 484xrecursionenv, 484
stm::local::xscoped_lock, 485mutex_, 486xcondition, 486xscoped_lock, 485
stm::local::xsystem_condition, 486cond_, 487xsystem_condition, 487
stm::local::xsystem_scoped_lock, 487mutex_, 488
xsystem_condition, 488xsystem_scoped_lock, 488
stm::logger, 295logger, 297
stm::logger_baseNoLocking, 298ProcessLocking, 298SystemLocking, 298
stm::logger_base, 297LockingPolicy, 298
stm::nospace, 330operator(), 330
stm::numpstring, 330numpstring, 331
stm::path, 335base, 337has_head, 338has_tail_path, 339head, 338name_type, 337operator-, 339path, 337, 338recurse, 339, 340relative_to_directory, 339string, 338tail_path, 338traverse, 340, 341
stm::path::dirdata, 341∼dirdata, 344data_type, 343dirdata, 343, 344dirpath, 344env, 345env_type, 343impl, 343operator(), 344parent, 344
stm::path::recursionenv, 345DoNotRecurse, 347flags, 346FollowDirLinks, 346NoFlags, 346recursionenv, 346root, 346
stm::pstring, 352allowedSeparators, 354designatesSame, 354isContainedIn, 354limitedPath, 354nativeSeparator, 354pstring, 353
stm::readablefile, 354clear, 357fileSize, 357
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
INDEX 647
isTextfile, 357name_type, 356readablefile, 356setpath, 357swap, 357
stm::rectrl, 114stm::scoped_lock, 369
∼scoped_lock, 370local::xcondition::wait_, 370scoped_lock, 370
stm::smartptr, 115stm::smartptr::bijective, 148
ptr, 148set, 148surjective, 149
stm::smartptr::injective, 222ptr, 223set, 223surjective, 223
stm::smartptr::injective_ptr, 223allocator_type, 228assign, 230boost::serialization::access, 234compare_type, 228define_range, 233element_type, 227get, 232injective_ptr, 229, 230is_multirange, 232is_surjective, 232mapped_ptr_impl, 227operator ∗, 231operator bool, 231operator->, 231operator=, 230policy_type, 228range, 233range_available, 234range_defined, 234range_empty, 234range_type, 228rangeid, 233rangeid_type, 228refcount_type, 228repository, 227reset, 230swap, 231undefine_range, 233unique, 232use_count, 232
stm::smartptr::injective_set, 235∼injective_set, 238allocator_type, 237begin, 240
compare_type, 237empty, 240end, 240find, 239injective_ptr_type, 238injective_set, 238insert, 239nil, 238policy_type, 237range, 239range_type, 238rangeid_, 240size, 240value_type, 237
stm::smartptr::injective_set::accessor, 241accessor, 242base, 242operator=, 243
stm::smartptr::local, 117stm::smartptr::local::comp_id, 163
operator(), 164stm::smartptr::local::comp_value, 164
operator(), 164, 165stm::smartptr::local::comp_value_id, 165
operator(), 165stm::smartptr::local::decrefcount, 186
operator(), 186stm::smartptr::local::increfcount, 221
operator(), 222stm::smartptr::local::item_descr< T, Compare,
false, false >, 287decrefcount, 288getrefcount, 288id, 288increfcount, 288item_descr, 288ptr, 289
stm::smartptr::local::item_descr< T, Compare,false, true >, 289
decrefcount, 290getrefcount, 290id, 290increfcount, 290item, 290item_descr, 290item_t, 290ptr, 290
stm::smartptr::local::item_descr< T, Compare, true,false >, 291
decrefcount, 292getrefcount, 291id, 291increfcount, 291item_descr, 291
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
INDEX 648
ptr, 292refcount, 292
stm::smartptr::local::item_descr< T, Compare, true,true >, 292
decrefcount, 294getrefcount, 293id, 293increfcount, 293item, 294item_descr, 293item_t, 293ptr, 293refcount, 294
stm::smartptr::local::item_type, 294id, 295item_type, 295operator<, 295ptr, 295
stm::smartptr::local::mapped_ptr, 309∼mapped_ptr, 311boost::serialization::access, 313getrefcount, 312id, 312id_, 313init, 312load, 312mapped_ptr, 311mapped_ptr_impl, 311ptr_, 313repository, 311repository_, 313save, 312serialize, 313swap, 312
stm::smartptr::local::mapped_ptr< T, Compare, Al-locator, refcounted, false >, 315
∼mapped_ptr, 317boost::serialization::access, 318getrefcount, 317id, 317init, 317load, 318mapped_ptr, 316, 317mapped_ptr_impl, 316ptr_, 318repository, 316repository_, 318save, 318serialize, 318swap, 317
stm::smartptr::local::mapped_ptr< T, Compare, Al-locator, refcounted, false >::rangeid_-type, 319
id_, 319
operator stm::dword, 319rangeid_type, 319
stm::smartptr::local::mapped_ptr::rangeid_type,314
id_, 315operator stm::dword, 314rangeid_type, 314
stm::smartptr::local::pcomp, 347operator(), 347
stm::smartptr::local::pointee_type, 347boost::serialization::access, 348pointee_type, 348serialize, 348value_, 349
stm::smartptr::local::repository_type, 358∼repository_type, 360availableids_, 362base, 360by_ptr, 360definedids_, 362defineRange, 361range, 361range_map, 360range_type, 360rangeAvailable, 362rangeDefined, 362rangeEmpty, 361rangeid_set, 360ranges_, 362remove, 361rep_by_ptr_, 362repository_type, 360undefineRange, 361updateRange, 361
stm::smartptr::local::repository_type< T, Compare,Allocator, refcounted, false >, 364
∼repository_type, 366base, 365defineRange, 366range, 366range_, 367range_type, 365rangeAvailable, 367rangeDefined, 367rangeEmpty, 367remove, 366repository_type, 366undefineRange, 366updateRange, 366
stm::smartptr::local::repository_type< T, Compare,Allocator, refcounted, false >::range_-iterator, 367
baseit, 368operator ∗, 369
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
INDEX 649
operator!=, 368operator++, 368operator->, 369operator==, 368range_iterator, 368
stm::smartptr::local::repository_type::range_-iterator, 363
baseit, 363operator ∗, 364operator!=, 364operator++, 364operator->, 364operator==, 364range_iterator, 363
stm::smartptr::MakeMultirange, 308multirange, 308surjective, 308
stm::smartptr::MakeSurjective, 308multirange, 309surjective, 309
stm::smartptr::policy, 349multirange, 349surjective, 349
stm::space, 372operator(), 373
stm::system_condition, 385∼system_condition, 386broadcast, 387signal, 387system_condition, 386timed_wait, 387wait, 387
stm::system_scoped_lock, 388∼system_scoped_lock, 389local::xsystem_condition::wait_, 389system_scoped_lock, 388, 389
stm::tools, 117stm::tools::BaseMessage, 119
∼BaseMessage, 123BaseMessage, 123basemessage_type, 122BaseMessageImpl, 122body, 124ConsistencyError, 123context, 124context_type, 122flags, 124NoError, 123NoFlags, 123OutOfSync, 123setBody, 125setFpgaTimestamp, 125setStatus, 124setUdpTimestamp, 125
status, 124ThrowOnError, 123Timestamp, 122timestamp, 124type, 124WordSize, 123
stm::tools::BaseMessageContext, 125BaseMessageContext, 128BaseMessageContextImpl, 127context_type, 128data, 129data_type, 127input, 129inputrange_type, 127setTimestamp, 129setType, 128Timestamp, 128timestamp, 129type, 128
stm::tools::BinMessage, 149∼BinMessage, 152basemessage_type, 151BinMessage, 152BinMessageImpl, 151body, 153ConsistencyError, 152context, 153context_type, 151flags, 153NoError, 152NoFlags, 152OutOfSync, 152status, 153ThrowOnError, 152Timestamp, 151timestamp, 153type, 152
stm::tools::BinMessageContext, 154basemessage_type, 156BinMessageContext, 156BinMessageContextImpl, 155context_type, 155data_type, 155gap, 156inputrange_type, 155local::xBinMessage< ContextT >, 156registerMessageType, 156
stm::tools::BinMessageContext::Gap, 157BinMessageContext< DataT, InputRangeT,
ContextT >, 158Gap, 158length, 158offset, 158operator bool, 158
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
INDEX 650
stm::tools::Ct, 173Ct, 174execCommand, 175getCiCommentOption, 175getCurrentBranch, 176getCurrentMasterReplica, 176getMode, 175isCheckedOut, 176isVobElement, 175Logger, 174logger, 174setCiCommentOption, 175setMode, 175
stm::tools::Ct::ArgList, 176active, 178ArgList, 177exec, 177operator+=, 177
stm::tools::Ct::Mode, 178Normal, 178Simulate, 178Verbose, 178
stm::tools::CtExceptions, 179Actions, 181add, 180clear, 181const_iterator, 180Content, 181Directory, 181Exclude, 181excludes, 180Include, 181NoFlags, 181PlainFile, 181
stm::tools::CtOperation, 182addLabels, 185checkOut, 184ct, 183CtOperation, 183DefaultGetMastershipTimeoutSec, 186getCurrentReplica, 184getMastershipTimeout, 184getVobRoot, 184isLabel, 185label, 185labelCount, 185obtainReplicaMastership, 184prepareLabels, 185setMastershipTimeout, 184setVobRoot, 183
stm::tools::DspMessage, 186∼DspMessage, 189body, 190context_type, 188
DspMessage, 189DspMessageImpl, 188hasTraceHeader, 189NoError, 189parent, 190parent_type, 188status, 189traceHeader, 189
stm::tools::DspMessage::TraceHeader, 190bfn, 191DspMessage< ContextT >, 192frameChips, 192opCode, 192payloadLength, 192size, 191TraceHeader, 191userFrameNo, 192userSlotNo, 192
stm::tools::local, 118stm::tools::local::xArgList, 398
ct_, 399impl, 399limit_, 399xArgList, 399
stm::tools::local::xBaseMessage, 400body_, 402context_, 402context_type, 401flags_, 402setTimestamp, 401status_, 402Timestamp, 401timestamp_, 402xBaseMessage, 401
stm::tools::local::xBaseMessageContext, 403context_type, 404data_, 405data_type, 404input_, 405inputrange_type, 404Timestamp, 404timestamp_, 404type_, 404xBaseMessageContext, 404
stm::tools::local::xBinMessage, 405basemessage_type, 406context_, 407context_type, 406flags_, 407message_, 407xBinMessage, 407
stm::tools::local::xBinMessageContext, 407basemessage_type, 409context_type, 409
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
INDEX 651
create, 410CreateFct, 409createMessage, 410creation_, 410crit_, 410gap_, 410xBinMessageContext, 409
stm::tools::local::xBinMessageGap, 411GapImpl, 412length_, 412offset_, 412xBinMessageContext, 412xBinMessageGap, 412
stm::tools::local::xCt, 416ciCommentOption_, 417impl, 417Logger, 417logger_, 417mode_, 418xCt, 417
stm::tools::local::xCtOperation, 418ct_, 420currentReplica_, 419impl, 419labelList_, 419labelsPrepared_, 420Logger, 419mastershipTimeout_, 419vobRoot_, 419xCtOperation, 419
stm::tools::local::xCtOperation::LabelList, 420command_, 421getCommand, 420prepare, 420
stm::tools::local::xDspMessage, 423body_, 424context_type, 424parent_, 424parent_type, 424status_, 424traceHeader_, 424xDspMessage, 424
stm::tools::local::xLvdsPacket, 462antennaFlags_, 465body_, 466context_type, 464dataType_, 466fcs_, 466frq_, 466HeaderSize, 465lvdsSubslot_, 465parent_, 466parent_type, 464priority_, 465
rsv_, 466status_, 465ubrId_, 465xLvdsPacket, 465
stm::tools::local::xMcBspMessage, 467basemessage_type, 468context_type, 468EndWordPattern, 468EndWordSize, 468McBspMessage< context_type >, 468WordSize, 468
stm::tools::local::xMcBspMessage::Identification,468
bfn, 471bfn_, 472bodyLength, 471bodyLength_, 472chip, 471chip_, 472clear, 471Identification, 470operator bool, 470operator(), 470ReqHeaderWordOneBitsMask, 473ReqHeaderWordZeroBitsMask, 473RequiredOneBitsMaskSize4, 473RequiredOneBitsMaskSize5, 473RequiredZeroBitsMaskSize4, 472RequiredZeroBitsMaskSize5, 473size, 470Size4, 469Size5, 470size_, 472slot, 471slot_, 472sync_, 472
stm::tools::local::xMsgTimestamp, 473bfn_, 475boardTimeMs_, 475boardTimeSec_, 475chip_, 475Fpga, 475hsTadsib_, 476Invalid, 475MsgTimestampImpl, 474seqNo_, 475slot_, 475status_, 475Udp, 475xMsgTimestamp, 475
stm::tools::local::xPrintkBinMessage, 476basemessage_type, 477context_type, 477PrintkBinMessage< context_type >, 477
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
INDEX 652
WordSize, 477stm::tools::local::xPrintkBinMessage::Identification,
477addBodyLength, 480bfn, 480bfn_, 481BfnMask, 482boardTimeMs, 480boardTimeMs_, 481boardTimeSec, 480boardTimeSec_, 481bodyLength, 480bodyLength_, 482clear, 480Identification, 479operator bool, 479operator(), 479seqNo, 480seqNo_, 482size, 479size_, 481SizeAbcd, 479SizeZyxw, 478sync_, 481SyncWordPatternAbcd, 482SyncWordPatternZyxw, 482
stm::tools::local::xTraceHeader, 488BbtOpCode, 490bfn_, 489DdtOpCode, 490frameChips_, 489Length, 490opCode_, 490payloadLength_, 490size_, 489TraceHeaderImpl, 489userFrameNo_, 490userSlotNo_, 490xDspMessage, 489
stm::tools::LvdsPacket, 298∼LvdsPacket, 303antennaFlags, 304body, 304context_type, 301dataType, 304DataTypeError, 302fcs, 304frq, 304LengthError, 302LvdsPacket, 302LvdsPacketImpl, 301lvdsSubslot, 303MaxAntennas, 302MaxPayloadLength, 302
NoError, 302parent, 304parent_type, 301PayloadLengthError, 302priority, 303PriorityError, 302rsv, 304status, 303ubrId, 303
stm::tools::LvdsPacket::Aich, 305Minus, 305PayloadLength, 305Plus, 305Zero, 305
stm::tools::LvdsPacket::DataType, 306Aich, 306Amplitude, 306AmplNoOffs, 306DlTpc0, 306DlTpc1, 306DtxCtrl, 306Hho, 306Rsv, 306Ue, 306UeCm0, 306UeCm0Scr, 306UeCm1, 306
stm::tools::LvdsPacket::Priority, 307Aich, 307Amplitude, 307AmplNoOffs, 307DlTpc0, 307DlTpc1, 307DtxCtrl, 307Ue, 307
stm::tools::McBspMessage, 320basemessage_type, 321context_type, 321McBspMessage, 322McBspMessageImpl, 321Type, 322type, 322
stm::tools::MsgTimestamp, 323assign, 325bfn, 325boardTimeMs, 326boardTimeSec, 326chip, 326Fpga, 324hsTadsib, 326Invalid, 324isFpga, 325isUdp, 325MsgTimestamp, 325
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
INDEX 653
seqNo, 326slot, 326status, 325Udp, 324valid, 325
stm::tools::PrintkBinMessage, 350basemessage_type, 351context_type, 351PrintkBinMessage, 351PrintkBinMessageImpl, 351Type, 352type, 352
stm::wlogger, 397wlogger, 398
STM_DEBUGXAIDS_HPPdebugxaids.hpp, 504
STM_DIVXAIDS_HPPdivxaids.hpp, 520
STM_FILESYSXAIDS_HPPfilesysxaids.hpp, 531
STM_GENXCRC_HPPgenxcrc.hpp, 535
STM_LIB_NAMEaidsconfig.hpp, 494toolaidsconfig.hpp, 556
STM_LOGGERXAIDS_HPPloggerxaids.hpp, 539
STM_SMARTPTRXAIDS_HPPsmartptrxaids.hpp, 552
STM_TOOLAIDS_XBINMSG_HPPxbinmsg.hpp, 557
STM_TOOLAIDS_XCTAIDS_HPPxctaids.hpp, 559
STM_TOOLAIDS_XDSPMSG_HPPxdspmsg.hpp, 561
STM_TOOLAIDS_XLVDSPACKET_HPPxlvdspacket.hpp, 562
STM_TOOLAIDS_XMCBSPMSG_HPPxmcbspmsg.hpp, 564
STM_TOOLAIDS_XMSGTIMESTAMP_HPPxmsgtimestamp.hpp, 566
STM_TOOLAIDS_XPRINTKBINMSG_HPPxprintkbinmsg.hpp, 567
stmaids/ Directory Reference, 102stmaids/stm/ Directory Reference, 101stmaids/stm/impl/ Directory Reference, 100stmaids/test/ Directory Reference, 102StmAidsTest
Copyright, 97main, 96man, 97Version, 97
StmDebugAidsErrmsgModDebugAids, 20
StmDebugAidsErrmsgImpl_DebugAidsImpl, 46
StmDebugAidsVerifyModDebugAids, 20
StmDebugAidsVerifyImpl_DebugAidsImpl, 46
StmRectrlTryModDivAids, 29
StmRectrlTryImpl_DivAidsImpl, 49
stmtoolaids/ Directory Reference, 102stmtoolaids/stm/ Directory Reference, 100stmtoolaids/stm/toolaids/ Directory Reference, 103stmtoolaids/stm/toolaids/impl/ Directory Reference,
99StoreRelative
stm::filefind, 198stm::local::xfilefind, 427
Streamsstm::local::basic_xlogger, 139
stringstm::path, 338
string_typeModLoggerAids, 64stm::local::basic_xlogger, 138
StrPtrTestPtr, 390
strptr0TestPtr, 392TestSet, 396
strptr1TestPtr, 392TestSet, 396
strptr2TestPtr, 392
StrSetTestSet, 394
strsetTestSet, 395
subSudoku, 379
Sudoku, 374col, 379FirstSolution, 375generate, 375init, 377n, 378n2, 378n3, 378n4, 378RandomSolution, 375read, 376row, 378silent, 377
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
INDEX 654
solve, 376State, 377state, 377StatePtr, 375sub, 379Sudoku, 375Sudoku::State, 384test, 376UniqueSolution, 375write, 377
sudokuSudoku::State, 385
sudoku.cpp, 552Sudoku::State, 379
a, 385define, 383generate, 382getCol, 382getRow, 382getSub, 382init, 381pot, 385randomVal, 384read, 381restore, 384solve, 381State, 380Sudoku, 384sudoku, 385test, 381u, 385undefine, 383
SurjectiveModSmartptrAids, 75
surjectivestm::smartptr::bijective, 149stm::smartptr::injective, 223stm::smartptr::MakeMultirange, 308stm::smartptr::MakeSurjective, 309stm::smartptr::policy, 349
swapModDivAids, 32ModFilesysAids, 42ModSmartptrAids, 74stm::integral_range, 262stm::integral_set, 277stm::readablefile, 357stm::smartptr::injective_ptr, 231stm::smartptr::local::mapped_ptr, 312stm::smartptr::local::mapped_ptr< T, Com-
pare, Allocator, refcounted, false >, 317swapped
ModDivAids, 32sync_
stm::local::basic_xlogger, 142stm::tools::local::xMcBspMessage::Identification,
472stm::tools::local::xPrintkBinMessage::Identification,
481SyncWordPatternAbcd
stm::tools::local::xPrintkBinMessage::Identification,482
SyncWordPatternZyxwstm::tools::local::xPrintkBinMessage::Identification,
482syslog
ModDebugAids, 22SyslogError
ModDebugAids, 22SyslogFlags
ModDebugAids, 21SyslogInfo
ModDebugAids, 22SyslogLevelMask
ModDebugAids, 22SyslogNoLog
ModDebugAids, 22SyslogNoPerror
ModDebugAids, 22SyslogPerror
ModDebugAids, 22syslogPerror
DebugAidsImpl, 47syslogProg
DebugAidsImpl, 47SyslogWarning
ModDebugAids, 22system_condition
stm::system_condition, 386system_scoped_lock
stm::system_scoped_lock, 388, 389SystemLocking
stm::logger_base, 298SysToMath Aids C++ Library, 18SysToMath Aids C++ Library Test, 96SysToMath Tool Aids C++ Library, 86
tab_stm::local::xcrc, 416
TabDimstm::local::xcrc, 415
Tailstm::local::BraceExpand::Data::Tail, 161
tailstm::local::BraceExpand::Data, 161
tail_pathstm::path, 338
tell
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
INDEX 655
TestPtr, 391TestSet, 395
testSudoku, 376Sudoku::State, 381
testMaxstm::local::xIntegral_range, 455
testMinstm::local::xIntegral_range, 455
TestPtr, 389DwordPtr, 390dwptr0, 392dwptr1, 392load, 391operator==, 391save, 391StrPtr, 390strptr0, 392strptr1, 392strptr2, 392tell, 391TestPtr, 390
testptrSmartptrAidsTest, 92
TestSet, 393define, 394DwordSet, 394dwptr0, 396dwptr1, 396dwset, 395load, 395operator==, 395save, 394strptr0, 396strptr1, 396StrSet, 394strset, 395tell, 395TestSet, 394
testsetSmartptrAidsTest, 92
ThrowOnErrorstm::tools::BaseMessage, 123stm::tools::BinMessage, 152
timed_waitstm::condition, 167stm::system_condition, 387
Timestampstm::tools::BaseMessage, 122stm::tools::BaseMessageContext, 128stm::tools::BinMessage, 151stm::tools::local::xBaseMessage, 401stm::tools::local::xBaseMessageContext, 404
timestamp
stm::tools::BaseMessage, 124stm::tools::BaseMessageContext, 129stm::tools::BinMessage, 153
timestamp_stm::tools::local::xBaseMessage, 402stm::tools::local::xBaseMessageContext, 404
tostm::integral_range, 263
toExpandstm::local::BraceExpand, 159
tolowerModDivAids, 38
toolaids.hpp, 553toolaidsconfig.hpp, 554
STM_LIB_NAME, 556TopByteOffset
stm::local::xcrc, 415TopCoeffMask
stm::local::xcrc, 415totalSize
stm::inputrange, 249totalSize_
stm::local::xinputrange, 447tprint
stm::local::basic_xlogger, 141TraceHeader
stm::tools::DspMessage::TraceHeader, 191traceHeader
stm::tools::DspMessage, 189traceHeader_
stm::tools::local::xDspMessage, 424TraceHeaderImpl
stm::tools::local::xTraceHeader, 489traverse
stm::path, 340, 341trim
ModDivAids, 37, 38trim_back
ModDivAids, 35, 36trim_front
ModDivAids, 37Txt
Operation::Archive, 334Type
stm::tools::McBspMessage, 322stm::tools::PrintkBinMessage, 352
typeOperation, 332stm::tools::BaseMessage, 124stm::tools::BaseMessageContext, 128stm::tools::BinMessage, 152stm::tools::McBspMessage, 322stm::tools::PrintkBinMessage, 352
type_
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
INDEX 656
McBspMsgImpl, 81PrintkBinMsgImpl, 83stm::tools::local::xBaseMessageContext, 404
uSudoku::State, 385
ubrIdstm::tools::LvdsPacket, 303
ubrId_stm::tools::local::xLvdsPacket, 465
Udpstm::tools::local::xMsgTimestamp, 475stm::tools::MsgTimestamp, 324
Uestm::tools::LvdsPacket::DataType, 306stm::tools::LvdsPacket::Priority, 307
UeCm0stm::tools::LvdsPacket::DataType, 306
UeCm0Scrstm::tools::LvdsPacket::DataType, 306
UeCm1stm::tools::LvdsPacket::DataType, 306
undefineSudoku::State, 383
undefine_rangestm::smartptr::injective_ptr, 233
undefineRangestm::smartptr::local::repository_type, 361stm::smartptr::local::repository_type< T,
Compare, Allocator, refcounted, false >,366
underlineModLoggerAids, 69
uniquestm::smartptr::injective_ptr, 232
UniqueSolutionSudoku, 375
unsetConsoleModLoggerAids, 68
unsetStreamModLoggerAids, 67
updateRangestm::smartptr::local::repository_type, 361stm::smartptr::local::repository_type< T,
Compare, Allocator, refcounted, false >,366
use_countstm::smartptr::injective_ptr, 232
UseExtRegularExprstm::filespec, 206stm::local::xfilespec, 434
UseMultipleDirOperatorstm::filespec, 206stm::local::xfilespec, 434
userFrameNostm::tools::DspMessage::TraceHeader, 192
userFrameNo_stm::tools::local::xTraceHeader, 490
userSlotNostm::tools::DspMessage::TraceHeader, 192
userSlotNo_stm::tools::local::xTraceHeader, 490
val_stm::local::xfixedfmt, 440stm::local::xhexfmt, 442
validstm::tools::MsgTimestamp, 325
valuestm::has_pow2size, 214
value_stm::local::xIntegral_set::integral_iterator, 462stm::smartptr::local::pointee_type, 349
value_typestm::fixedfmt, 212stm::hexfmt, 216stm::hexfmt< ElemT ∗, DefaultFlags >, 220stm::smartptr::injective_set, 237
Verbosestm::tools::Ct::Mode, 178
verifyDivAidsImpl, 53
VersionDivAidsTest, 88FilesysAidsTest, 89GenCrcTest, 90SmartptrAidsTest, 93StmAidsTest, 97
vobRoot_stm::tools::local::xCtOperation, 419
waitstm::condition, 167stm::system_condition, 387
wait_DivAidsImpl, 54
wloggerModLoggerAids, 70, 71stm::wlogger, 398
wordModDivAids, 30
WordSizestm::tools::BaseMessage, 123stm::tools::local::xMcBspMessage, 468stm::tools::local::xPrintkBinMessage, 477
wrappedstm::local::basic_xlogger::Stream, 147
write
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen
INDEX 657
Sudoku, 377
xArgListstm::tools::local::xArgList, 399
xBaseMessagestm::tools::local::xBaseMessage, 401
xBaseMessageContextstm::tools::local::xBaseMessageContext, 404
xBinMessagestm::tools::local::xBinMessage, 407
xBinMessageContextstm::tools::local::xBinMessageContext, 409stm::tools::local::xBinMessageGap, 412
xBinMessageGapstm::tools::local::xBinMessageGap, 412
xbinmsg.hpp, 556STM_TOOLAIDS_XBINMSG_HPP, 557
xconditionstm::local::xcondition, 413stm::local::xscoped_lock, 486
xcrcstm::local::xcrc, 415
xCtstm::tools::local::xCt, 417
xctaids.hpp, 558STM_TOOLAIDS_XCTAIDS_HPP, 559
xCtOperationstm::tools::local::xCtOperation, 419
xdirdatastm::local::xdirdata, 422
xDspMessagestm::tools::local::xDspMessage, 424stm::tools::local::xTraceHeader, 489
xdspmsg.hpp, 559STM_TOOLAIDS_XDSPMSG_HPP, 561
xfilefindstm::local::xfilefind, 426stm::local::xfilespec, 433
xfilespecstm::local::xfilespec, 430
xfilespecliststm::local::xfilespeclist, 439
xfixedfmtstm::local::xfixedfmt, 440
xhexfmtstm::local::xhexfmt, 442
xinputrangestm::local::xinputrange, 445
xinputrange_iteratorstm::local::xinputrange_iterator, 450
xIntegral_rangeDivAidsImpl, 50
xIntegral_setDivAidsImpl, 52
stm::local::xIntegral_range, 456xIntegral_set< IntegralRangeT, RangeSetT >
stm::local::xIntegral_set::integral_iterator, 462xLvdsPacket
stm::tools::local::xLvdsPacket, 465xlvdspacket.hpp, 561
STM_TOOLAIDS_XLVDSPACKET_HPP,562
xmcbspmsg.hpp, 563STM_TOOLAIDS_XMCBSPMSG_HPP, 564
XmlOperation::Archive, 334
xMsgTimestampstm::tools::local::xMsgTimestamp, 475
xmsgtimestamp.hpp, 564STM_TOOLAIDS_XMSGTIMESTAMP_-
HPP, 566xprintkbinmsg.hpp, 566
STM_TOOLAIDS_XPRINTKBINMSG_-HPP, 567
xreadablefilestm::local::xreadablefile, 483
xrecursionenvstm::local::xrecursionenv, 484
xscoped_lockstm::local::xscoped_lock, 485
xsystem_conditionstm::local::xsystem_condition, 487stm::local::xsystem_scoped_lock, 488
xsystem_scoped_lockstm::local::xsystem_scoped_lock, 488
xTraceHeaderDspMsgImpl, 80
Xyz, 491id, 491ptr, 491Xyz, 491
xyz1SmartptrAidsTest, 95
xyz2SmartptrAidsTest, 95
XyzPtrSmartptrAidsTest, 92
Zerostm::tools::LvdsPacket::Aich, 305
Generated on Thu Jan 3 20:17:00 2008 for SysToMath C++ Libraries Implementation by Doxygen