openscenegraph
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
osg::ApplicationUsage Class Reference
Inheritance diagram for osg::ApplicationUsage:
osg::Referenced

Public Types

enum  Type {
  NO_HELP = 0x0, COMMAND_LINE_OPTION = 0x1, ENVIRONMENTAL_VARIABLE = 0x2, KEYBOARD_MOUSE_BINDING = 0x4,
  HELP_ALL = KEYBOARD_MOUSE_BINDING|ENVIRONMENTAL_VARIABLE|COMMAND_LINE_OPTION
}
typedef std::map< std::string,
std::string > 
UsageMap

Public Member Functions

 ApplicationUsage ()
 ApplicationUsage (const std::string &commandLineUsage)
void setApplicationName (const std::string &name)
const std::string & getApplicationName () const
void setDescription (const std::string &desc)
const std::string & getDescription () const
void addUsageExplanation (Type type, const std::string &option, const std::string &explanation)
void setCommandLineUsage (const std::string &explanation)
const std::string & getCommandLineUsage () const
void addCommandLineOption (const std::string &option, const std::string &explanation, const std::string &defaultValue="")
void setCommandLineOptions (const UsageMap &usageMap)
const UsageMapgetCommandLineOptions () const
void setCommandLineOptionsDefaults (const UsageMap &usageMap)
const UsageMapgetCommandLineOptionsDefaults () const
void addEnvironmentalVariable (const std::string &option, const std::string &explanation, const std::string &defaultValue="")
void setEnvironmentalVariables (const UsageMap &usageMap)
const UsageMapgetEnvironmentalVariables () const
void setEnvironmentalVariablesDefaults (const UsageMap &usageMap)
const UsageMapgetEnvironmentalVariablesDefaults () const
void addKeyboardMouseBinding (const std::string &option, const std::string &explanation)
void setKeyboardMouseBindings (const UsageMap &usageMap)
const UsageMapgetKeyboardMouseBindings () const
void getFormattedString (std::string &str, const UsageMap &um, unsigned int widthOfOutput=80, bool showDefaults=false, const UsageMap &ud=UsageMap())
void write (std::ostream &output, const UsageMap &um, unsigned int widthOfOutput=80, bool showDefaults=false, const UsageMap &ud=UsageMap())
void write (std::ostream &output, unsigned int type=COMMAND_LINE_OPTION, unsigned int widthOfOutput=80, bool showDefaults=false)
void writeEnvironmentSettings (std::ostream &output)
- Public Member Functions inherited from osg::Referenced
 Referenced ()
 Referenced (bool threadSafeRefUnref)
 Referenced (const Referenced &)
Referencedoperator= (const Referenced &)
virtual void setThreadSafeRefUnref (bool threadSafe)
bool getThreadSafeRefUnref () const
OpenThreads::MutexgetRefMutex () const
int ref () const
int unref () const
int unref_nodelete () const
int referenceCount () const
ObserverSetgetObserverSet () const
ObserverSetgetOrCreateObserverSet () const
void addObserver (Observer *observer) const
void removeObserver (Observer *observer) const

Static Public Member Functions

static ApplicationUsageinstance ()
- Static Public Member Functions inherited from osg::Referenced
static OpenThreads::MutexgetGlobalReferencedMutex ()
static void setThreadSafeReferenceCounting (bool enableThreadSafeReferenceCounting)
static bool getThreadSafeReferenceCounting ()
static void setDeleteHandler (DeleteHandler *handler)
static DeleteHandlergetDeleteHandler ()

Protected Member Functions

virtual ~ApplicationUsage ()
- Protected Member Functions inherited from osg::Referenced
virtual ~Referenced ()
void signalObserversAndDelete (bool signalDelete, bool doDelete) const
void deleteUsingDeleteHandler () const

Protected Attributes

std::string _applicationName
std::string _description
std::string _commandLineUsage
UsageMap _commandLineOptions
UsageMap _environmentalVariables
UsageMap _keyboardMouse
UsageMap _environmentalVariablesDefaults
UsageMap _commandLineOptionsDefaults
- Protected Attributes inherited from osg::Referenced
OpenThreads::AtomicPtr _observerSet
OpenThreads::Atomic _refCount

Member Typedef Documentation

typedef std::map<std::string,std::string> osg::ApplicationUsage::UsageMap

Member Enumeration Documentation

Enumerator:
NO_HELP 
COMMAND_LINE_OPTION 
ENVIRONMENTAL_VARIABLE 
KEYBOARD_MOUSE_BINDING 
HELP_ALL 

Constructor & Destructor Documentation

osg::ApplicationUsage::ApplicationUsage ( )
inline
osg::ApplicationUsage::ApplicationUsage ( const std::string &  commandLineUsage)
virtual osg::ApplicationUsage::~ApplicationUsage ( )
inlineprotectedvirtual

Member Function Documentation

void osg::ApplicationUsage::addCommandLineOption ( const std::string &  option,
const std::string &  explanation,
const std::string &  defaultValue = "" 
)
void osg::ApplicationUsage::addEnvironmentalVariable ( const std::string &  option,
const std::string &  explanation,
const std::string &  defaultValue = "" 
)
void osg::ApplicationUsage::addKeyboardMouseBinding ( const std::string &  option,
const std::string &  explanation 
)
void osg::ApplicationUsage::addUsageExplanation ( Type  type,
const std::string &  option,
const std::string &  explanation 
)
const std::string& osg::ApplicationUsage::getApplicationName ( ) const
inline
const UsageMap& osg::ApplicationUsage::getCommandLineOptions ( ) const
inline
const UsageMap& osg::ApplicationUsage::getCommandLineOptionsDefaults ( ) const
inline
const std::string& osg::ApplicationUsage::getCommandLineUsage ( ) const
inline
const std::string& osg::ApplicationUsage::getDescription ( ) const
inline
const UsageMap& osg::ApplicationUsage::getEnvironmentalVariables ( ) const
inline
const UsageMap& osg::ApplicationUsage::getEnvironmentalVariablesDefaults ( ) const
inline
void osg::ApplicationUsage::getFormattedString ( std::string &  str,
const UsageMap um,
unsigned int  widthOfOutput = 80,
bool  showDefaults = false,
const UsageMap ud = UsageMap() 
)
const UsageMap& osg::ApplicationUsage::getKeyboardMouseBindings ( ) const
inline
static ApplicationUsage* osg::ApplicationUsage::instance ( )
static
void osg::ApplicationUsage::setApplicationName ( const std::string &  name)
inline

The ApplicationName is often displayed when logging errors, and frequently incorporated into the Description (below).

void osg::ApplicationUsage::setCommandLineOptions ( const UsageMap usageMap)
inline
void osg::ApplicationUsage::setCommandLineOptionsDefaults ( const UsageMap usageMap)
inline
void osg::ApplicationUsage::setCommandLineUsage ( const std::string &  explanation)
inline
void osg::ApplicationUsage::setDescription ( const std::string &  desc)
inline

If non-empty, the Description is typically shown by the Help Handler as text on the Help display (which also lists keyboard abbreviations.

void osg::ApplicationUsage::setEnvironmentalVariables ( const UsageMap usageMap)
inline
void osg::ApplicationUsage::setEnvironmentalVariablesDefaults ( const UsageMap usageMap)
inline
void osg::ApplicationUsage::setKeyboardMouseBindings ( const UsageMap usageMap)
inline
void osg::ApplicationUsage::write ( std::ostream &  output,
const UsageMap um,
unsigned int  widthOfOutput = 80,
bool  showDefaults = false,
const UsageMap ud = UsageMap() 
)
void osg::ApplicationUsage::write ( std::ostream &  output,
unsigned int  type = COMMAND_LINE_OPTION,
unsigned int  widthOfOutput = 80,
bool  showDefaults = false 
)
void osg::ApplicationUsage::writeEnvironmentSettings ( std::ostream &  output)

Member Data Documentation

std::string osg::ApplicationUsage::_applicationName
protected
UsageMap osg::ApplicationUsage::_commandLineOptions
protected
UsageMap osg::ApplicationUsage::_commandLineOptionsDefaults
protected
std::string osg::ApplicationUsage::_commandLineUsage
protected
std::string osg::ApplicationUsage::_description
protected
UsageMap osg::ApplicationUsage::_environmentalVariables
protected
UsageMap osg::ApplicationUsage::_environmentalVariablesDefaults
protected
UsageMap osg::ApplicationUsage::_keyboardMouse
protected

The documentation for this class was generated from the following file: