ome-common  5.2.0-m2
Namespaces | Classes | Typedefs | Functions
ome::common Namespace Reference

OME compatibility functions and classes. More...

Namespaces

 xml
 Xerces-C modern C++ wrapper.
 
 xsl
 Xalan-C modern C++ wrapper.
 

Classes

class  boolean
 Boolean type with guaranteed size, alignment and storage values. More...
 
struct  Module
 A run-time path for a given module. More...
 
struct  RegisterModule
 Register a module to make it available to module_runtime_path(). More...
 

Typedefs

typedef logging::sources::severity_logger_mt< logging::trivial::severity_level > Logger
 Message logger.
 
typedef boost::iostreams::basic_array_source< char > mstream_source
 Character array stream source.
 
typedef boost::iostreams::stream< mstream_sourceimstream
 Input memory stream.
 

Functions

bool operator== (const boolean &lhs, bool rhs)
 Compare boolean with bool for equality. More...
 
bool operator== (bool lhs, const boolean &rhs)
 Compare bool with boolean for equality. More...
 
bool operator== (const boolean &lhs, const boolean &rhs)
 Compare boolean with boolean for equality. More...
 
bool operator!= (const boolean &lhs, bool rhs)
 Compare boolean with bool for inequality. More...
 
bool operator!= (bool lhs, const boolean &rhs)
 Compare bool with boolean for inequality. More...
 
bool operator!= (const boolean &lhs, const boolean &rhs)
 Compare bool with boolean for inequality. More...
 
template<class charT , class traits >
std::basic_ostream< charT, traits > & operator<< (std::basic_ostream< charT, traits > &os, const boolean &rhs)
 Output boolean to output stream. More...
 
template<class charT , class traits >
std::basic_istream< charT, traits > & operator>> (std::basic_istream< charT, traits > &is, boolean &rhs)
 Set boolean from input stream. More...
 
boost::filesystem::path absolute (const boost::filesystem::path &p, const boost::filesystem::path &base=boost::filesystem::current_path())
 Get an absolute path. More...
 
boost::filesystem::path canonical (const boost::filesystem::path &p, const boost::filesystem::path &base=boost::filesystem::current_path(), boost::system::error_code *ec=0)
 Get a canonical path. More...
 
boost::filesystem::path make_relative (boost::filesystem::path from, boost::filesystem::path to)
 Make a relative path. More...
 
void setLogLevel (logging::trivial::severity_level severity)
 Set global logging level. More...
 
logging::trivial::severity_level getLogLevel ()
 Get global logging level. More...
 
Logger createLogger (const std::string &className)
 Create a message logger for a class. More...
 
const fs::path & module_runtime_path (const std::string &dtype)
 Get the runtime installation prefix path for a module. More...
 
void register_module_paths ()
 Register OME-Common module paths. More...
 
std::string ltrim (const std::string &str)
 Trim leading whitespace from a string. More...
 
std::string rtrim (const std::string &str)
 Trim trailing whitespace from a string. More...
 
std::string trim (const std::string &str)
 Trim leading and trailing whitespace from a string. More...
 

Detailed Description

OME compatibility functions and classes.

Function Documentation

boost::filesystem::path ome::common::absolute ( const boost::filesystem::path &  p,
const boost::filesystem::path &  base = boost::filesystem::current_path() 
)
inline

Get an absolute path.

Parameters
pthe path to make absolute.
basethe base directory, defaulting to the current path.
Returns
the absolute path.

Referenced by canonical(), and make_relative().

+ Here is the caller graph for this function:

boost::filesystem::path ome::common::canonical ( const boost::filesystem::path &  p,
const boost::filesystem::path &  base = boost::filesystem::current_path(),
boost::system::error_code *  ec = 0 
)
inline

Get a canonical path.

Parameters
pthe path to make canonical.
basethe base directory, defaulting to the current path.
ecpointer to storage for an error code (optional).
Returns
the canonical path.

References absolute().

Referenced by module_runtime_path(), ome::common::xml::EntityResolver::registerCatalog(), and ome::common::xml::EntityResolver::registerEntity().

+ Here is the caller graph for this function:

Logger ome::common::createLogger ( const std::string &  className)
inline

Create a message logger for a class.

Parameters
classNamethe class name owning the logger.
Returns
a message logger.
logging::trivial::severity_level ome::common::getLogLevel ( )

Get global logging level.

Returns
the log severity.
std::string ome::common::ltrim ( const std::string &  str)
inline

Trim leading whitespace from a string.

Space, newline, carriage return and horizontal and vertical tabs are removed from the left-hand side of the string.

Parameters
strthe string to trim.
Returns
the left-trimmed string.
boost::filesystem::path ome::common::make_relative ( boost::filesystem::path  from,
boost::filesystem::path  to 
)
inline

Make a relative path.

Parameters
fromthe start (reference) path.
tothe end path (to make relative to the start path).
Returns
the relative path.

References absolute().

const boost::filesystem::path & ome::common::module_runtime_path ( const std::string &  dtype)

Get the runtime installation prefix path for a module.

This is intended primarily for internal use, to allow discovery of the location of datafiles, loadable modules, etc. However, it may be freely used by additional components, both OME and third-party, to register paths.

Parameters
dtypethe directory type to query.
Returns
the installation prefix path.
Exceptions
astd::runtime_error if the path could not be determined.

References ome::common::Module::abspath, canonical(), ome::common::Module::envvar, ome::common::Module::install_prefix, ome::common::Module::module_envvar, ome::common::Module::module_path, ome::common::Module::realpath, ome::common::Module::relpath, ome::common::Module::root_envvar, and ome::common::Module::shlibpath.

bool ome::common::operator!= ( const boolean lhs,
bool  rhs 
)
inline

Compare boolean with bool for inequality.

Parameters
lhsthe first value to compare.
rhsthe second value to compare.
Returns
true if not equal, false if equal.
bool ome::common::operator!= ( bool  lhs,
const boolean rhs 
)
inline

Compare bool with boolean for inequality.

Parameters
lhsthe first value to compare.
rhsthe second value to compare.
Returns
true if not equal, false if equal.
bool ome::common::operator!= ( const boolean lhs,
const boolean rhs 
)
inline

Compare bool with boolean for inequality.

Parameters
lhsthe first value to compare.
rhsthe second value to compare.
Returns
true if not equal, false if equal.
template<class charT , class traits >
std::basic_ostream<charT,traits>& ome::common::operator<< ( std::basic_ostream< charT, traits > &  os,
const boolean rhs 
)
inline

Output boolean to output stream.

Parameters
osthe output stream.
rhsthe boolean to output.
Returns
the output stream.
bool ome::common::operator== ( const boolean lhs,
bool  rhs 
)
inline

Compare boolean with bool for equality.

Parameters
lhsthe first value to compare.
rhsthe second value to compare.
Returns
true if equal, false if not equal.
bool ome::common::operator== ( bool  lhs,
const boolean rhs 
)
inline

Compare bool with boolean for equality.

Parameters
lhsthe first value to compare.
rhsthe second value to compare.
Returns
true if equal, false if not equal.
bool ome::common::operator== ( const boolean lhs,
const boolean rhs 
)
inline

Compare boolean with boolean for equality.

Parameters
lhsthe first value to compare.
rhsthe second value to compare.
Returns
true if equal, false if not equal.
template<class charT , class traits >
std::basic_istream<charT,traits>& ome::common::operator>> ( std::basic_istream< charT, traits > &  is,
boolean rhs 
)
inline

Set boolean from input stream.

Parameters
isthe input stream.
rhsthe boolean to set.
Returns
the input stream.
void ome::common::register_module_paths ( )

Register OME-Common module paths.

This function forces path registration.

Note
This is a hack to allow static linking to work on Windows; without this, the module object is omitted and the paths aren't automatically registered. This will no longer be required once it is built as a DLL. Its only purpose is to force object inclusion when static linking, and ensure that the registration happens independently of object static construction order to allow use prior to main() entry. You should not use this.
std::string ome::common::rtrim ( const std::string &  str)
inline

Trim trailing whitespace from a string.

Space, newline, carriage return and horizontal and vertical tabs are removed from the right-hand side of the string.

Parameters
strthe string to trim.
Returns
the right-trimmed string.
void ome::common::setLogLevel ( logging::trivial::severity_level  severity)

Set global logging level.

Log messages will be filtered such that messages with a priority greater or equal to the specified severity will be logged; messages with a lower priority will be discarded.

If using Boost.Log for logging, this is used to set the logging core filter.

Parameters
severitythe log severity.
std::string ome::common::trim ( const std::string &  str)
inline

Trim leading and trailing whitespace from a string.

Space, newline, carriage return and horizontal and vertical tabs are removed from the left- and right-hand sides of the string.

Parameters
strthe string to trim.
Returns
the trimmed string.