Common

The common module contains the foundation classes and functions for all TerraLib modules. More...

Files

file  BoostUtils.h
 This file contains several utility functions for dealing with Boost containers and algorithms.
 
file  ByteSwapUtils.h
 Utility functions to swap bytes: double, int and unsigned int.
 
file  Comparators.h
 Several functor types for comparing objects.
 
file  Enums.h
 General enumerations.
 
file  Globals.h
 An static class with global definitions.
 
file  LinuxUtils.h
 This file contains several utility functions when dealing with Linux specific API.
 
file  MathUtils.h
 Math utils.
 
file  MatrixUtils.h
 Matrix manipulation utils.
 
file  PlatformUtils.h
 This file is a wrapper around platform specific include files.
 
file  STLUtils.h
 This file contains several utility functions for dealing with STL containers.
 
file  StringUtils.h
 Utility functions for dealing with strings.
 
file  ThreadingPolicies.h
 Threading policies that can be applied to TerraLib classes that need some synchronization schema.
 
file  WinUtils.h
 This file contains several utility functions when dealing with Microsoft Windows specific API.
 

Classes

class  te::common::AbstractFactory< TPRODUCT, TFACTORYKEY, TKEYCOMPARE >
 This class defines the interface of abstract factories without initializing parameters. More...
 
class  te::common::AbstractProgressViewer
 A class that defines the interface of an abstract progress viewer. More...
 
class  te::common::ApplicationSettings
 A class for managing application settings. More...
 
class  te::common::BaseVisitable< T, R >
 The root of all hierarchies that can be visited. More...
 
class  te::common::BaseVisitor
 A general root class for a visitor hierarchy. More...
 
class  te::common::Counted
 A counted class keeps track of how many abstract instances are pointing to it. More...
 
class  te::common::Decorator< T >
 
class  te::common::FactoryDictionary< TFACTORY, TFACTORYKEY, TKEYCOMPARE >
 This class represents a dictionary of factories. More...
 
struct  te::common::Holder< T >
 An auxiliary data structure for helping to control the garbage collection of C++ objects. More...
 
class  te::common::LoggedException
 A class that automatically logs the exception message. More...
 
class  te::common::Module
 This singleton defines an entry in the Platform for the TerraLib Common Runtime module. More...
 
struct  te::common::NodeT< T >
 Struct that represents a node in the Queue. More...
 
class  te::common::ParameterizedAbstractFactory< TPRODUCT, TFACTORYKEY, TPARAM, TKEYCOMPARE >
 This class defines the basic interface of an abstract factory that makes use of parameters to construct the objects. More...
 
class  te::common::ProgressManager
 A singleton class used to manage tasks progresses and their viewers. More...
 
struct  te::common::QueueT< T >
 Struct that implements the generic queue. More...
 
class  te::common::Singleton< T >
 Template support for singleton pattern. More...
 
class  te::common::Static
 A base type for static classes. More...
 
class  te::common::SystemApplicationSettings
 A singleton for managing application settings applied to the whole system (all users). More...
 
class  te::common::TaskProgress
 This class can be used to inform the progress of a task. More...
 
class  TerraLib
 An utility class to control the startup and cleanup of the TerraLib Platform and its resources. More...
 
class  te::common::TreeItem
 This abstract class describes a basic item to be organized in a tree-oriented way. More...
 
class  te::common::UnitOfMeasure
 A class to represent units of measure. More...
 
class  te::common::UnitsOfMeasureManager
 A singleton class for dealing with units of measure in the TerraLib environment. More...
 
class  te::common::URL
 A class URL represents a Uniform Resource Locator, a pointer to a "resource" on the World Wide Web. A resource can be something as simple as a file or a directory, or it can be a reference to a more complicated object, such as a query to a database or to a search engine. This class is based on the MIT code uripp http://uripp.sourceforge.net/ . More...
 
class  te::common::UserApplicationSettings
 A singleton for managing application settings applied to a single user. More...
 
class  te::common::Visitor< T, R >
 A generic class for visitors. More...
 

Detailed Description

The common module contains the foundation classes and functions for all TerraLib modules.

The TerraLib Common Module contains the foundation classes and functions that makes the basic support for other TerraLib modules. It provides portable and cross platform code not focus exclusively in the geo-spatial domain. On the contrary, the helper classes, utilitary functions, generic class templates and generic design pattern classes are domain application neutral and can be used by any application.

The TerraLib modules has made use of Boost libraries but some functionalities are not found in Boost, so the common runtime module fills this gap and add some low-level code used by TerraLib applications. You will find in this module classes for: abstract factories, singletons, visitors, support for i18n, message logging, shared library management, threading policies and much more.

Besides the classes you will find useful routines for: byte swap, hex-encoding/decoding, platform specific routines, auxiliary functions for STL containers.

The main classes/concepts in this module are listed here. The namespace associated to the Common module is te::common. To know more about it, see the te::common namespace documentation.