Teuchos - Trilinos Tools Package  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Typedefs | Enumerations | Functions | Variables
Teuchos Namespace Reference

The Teuchos namespace contains all of the classes, structs and enums used by Teuchos, as well as a number of utility routines. More...

Classes

class  AbstractFactory
 Simple, universal "Abstract Factory" interface for the dynamic creation of objects. More...
 
class  PostModNothing
 Default post-modification policy class for AbstractFactorStd which does nothing! More...
 
class  AllocatorNew
 Default allocation policy class for AbstractFactoryStd which returns new T_impl(). More...
 
class  AbstractFactoryStd
 Simple, templated concrete subclass of universal "Abstract Factory" interface for the creation of objects. More...
 
class  any
 Modified boost::any class, which is a container for a templated value. More...
 
class  bad_any_cast
 Thrown if any_cast is attempted between two incompatable types. More...
 
class  InvalidArrayStringRepresentation
 
class  Array
 Replacement for std::vector that is compatible with the Teuchos Memory Management classes. More...
 
class  TypeNameTraits< Array< T > >
 TypeNameTraits specialization for Array. More...
 
class  ArrayRCP
 Reference-counted smart pointer for managing arrays. More...
 
class  ArrayRCP< const T >
 Partial specialization of ArrayRCP for const T. More...
 
class  ArrayRCP< void >
 Full specialization of ArrayRCP for T = void. More...
 
class  ArrayRCP< const void >
 Dummy specialization of ArrayRCP<const void>. More...
 
class  NullIteratorTraits< ArrayRCP< T > >
 Traits specialization for ArrayRCP. More...
 
class  ArrayView
 Nonowning array view. More...
 
class  ArrayView< const T >
 Partial specialization of ArrayView for const T. More...
 
class  ValueTypeConversionTraits
 Default traits class for all conversions between value types. More...
 
class  asFunc
 Function object wrapper for as(). More...
 
class  ValueTypeConversionTraits< OutType, std::string >
 Convert an std::string to a type OutType. More...
 
class  ValueTypeConversionTraits< double, std::string >
 Convert an std::string to a double. More...
 
class  ValueTypeConversionTraits< float, std::string >
 Convert an std::string to a float. More...
 
class  ValueTypeConversionTraits< long double, std::string >
 Convert an std::string to a long double. More...
 
class  ValueTypeConversionTraits< long long, std::string >
 Convert an std::string to a long long. More...
 
class  ValueTypeConversionTraits< unsigned long long, std::string >
 Convert an std::string to an unsigned long long. More...
 
class  ValueTypeConversionTraits< long, std::string >
 Convert an std::string to a long. More...
 
class  ValueTypeConversionTraits< unsigned long, std::string >
 Convert an std::string to an unsigned long. More...
 
class  ValueTypeConversionTraits< int, std::string >
 Convert an std::string to an int. More...
 
class  ValueTypeConversionTraits< unsigned int, std::string >
 Convert an std::string to an unsigned int. More...
 
class  ValueTypeConversionTraits< short, std::string >
 Convert an std::string to a short. More...
 
class  ValueTypeConversionTraits< unsigned short, std::string >
 Convert an std::string to an unsigned short. More...
 
class  ValueTypeConversionTraits< float, double >
 Convert from double to float. More...
 
class  ValueTypeConversionTraits< float, long double >
 Convert from long double to float. More...
 
class  ValueTypeConversionTraits< double, long double >
 Convert from long double to double. More...
 
class  ValueTypeConversionTraits< short, double >
 Convert from double to short. More...
 
class  ValueTypeConversionTraits< unsigned short, double >
 Convert from double to unsigned short. More...
 
class  ValueTypeConversionTraits< int, double >
 Convert from double to int. More...
 
class  ValueTypeConversionTraits< unsigned int, double >
 Convert from double to unsigned int. More...
 
class  ValueTypeConversionTraits< long, double >
 Convert from double to long. More...
 
class  ValueTypeConversionTraits< unsigned long, double >
 Convert from double to unsigned long. More...
 
class  ValueTypeConversionTraits< long long, double >
 Convert from double to long long. More...
 
class  ValueTypeConversionTraits< unsigned long long, double >
 Convert from double to unsigned long long. More...
 
class  ValueTypeConversionTraits< short, float >
 Convert from float to short. More...
 
class  ValueTypeConversionTraits< unsigned short, float >
 Convert from float to unsigned short. More...
 
class  ValueTypeConversionTraits< int, float >
 Convert from float to int. More...
 
class  ValueTypeConversionTraits< unsigned int, float >
 Convert from float to unsigned int. More...
 
class  ValueTypeConversionTraits< long, float >
 Convert from float to long. More...
 
class  ValueTypeConversionTraits< unsigned long, float >
 Convert from float to unsigned long. More...
 
class  ValueTypeConversionTraits< long long, float >
 Convert from float to long long. More...
 
class  ValueTypeConversionTraits< unsigned long long, float >
 Convert from float to unsigned long long. More...
 
class  ValueTypeConversionTraits< short, unsigned short >
 Convert from unsigned short to short. More...
 
class  ValueTypeConversionTraits< unsigned short, short >
 Convert from short to unsigned short. More...
 
class  ValueTypeConversionTraits< int, unsigned int >
 Convert from unsigned int to int. More...
 
class  ValueTypeConversionTraits< unsigned int, int >
 Convert from int to unsigned int. More...
 
class  ValueTypeConversionTraits< long, unsigned long >
 Convert from unsigned long to long. More...
 
class  ValueTypeConversionTraits< unsigned long, long >
 Convert from long to unsigned long. More...
 
class  ValueTypeConversionTraits< long long, unsigned long long >
 Convert from unsigned long long to long long. More...
 
class  ValueTypeConversionTraits< unsigned long long, long long >
 Convert from long long to unsigned long long. More...
 
class  ValueTypeConversionTraits< short, int >
 Convert from int to short. More...
 
class  ValueTypeConversionTraits< short, long >
 Convert from long to short. More...
 
class  ValueTypeConversionTraits< int, long >
 Convert from long to int. More...
 
class  ValueTypeConversionTraits< int, unsigned long >
 Convert from unsigned long to int. More...
 
class  ValueTypeConversionTraits< long, unsigned int >
 Convert from unsigned int to long. More...
 
class  ValueTypeConversionTraits< unsigned int, long >
 Convert from long to unsigned int. More...
 
class  ValueTypeConversionTraits< unsigned int, unsigned long >
 Convert from unsigned long to unsigned int. More...
 
class  ValueTypeConversionTraits< unsigned short, unsigned long >
 Convert from unsigned long to unsigned short. More...
 
class  ValueTypeConversionTraits< int, long long >
 Convert from long long to int. More...
 
class  ValueTypeConversionTraits< unsigned int, long long >
 Convert from long long to unsigned int. More...
 
class  ValueTypeConversionTraits< int, unsigned long long >
 Convert from unsigned long long to int. More...
 
class  ValueTypeConversionTraits< unsigned int, unsigned long long >
 Convert from unsigned long long to unsigned int. More...
 
class  ValueTypeConversionTraits< float, long long >
 Convert from long long to float. More...
 
class  ValueTypeConversionTraits< float, unsigned long long >
 Convert from unsigned long long to float. More...
 
class  ValueTypeConversionTraits< std::string, char[N]>
 Convert raw C string to std::string. More...
 
class  basic_oblackholestream
 basic_ostream<> subclass that does nothing but discard output. More...
 
class  BigUInt
 Arbitrary-precision unsigned integer class. More...
 
class  CommandLineProcessor
 Class that helps parse command line input arguments from (argc,argv[]) and set options. More...
 
class  CompileTimeAssert
 If instantiated (for Test!=0) then this should not compile! More...
 
class  CompileTimeAssert< 0 >
 If instantiated (i.e. Test==0) then this will compile! More...
 
class  ConstNonconstObjectContainer
 Simple class supporting the "runtime protection of const" idiom. More...
 
class  CWrapperErrorHandling
 Static C Wrapper Error Handling Policy Class. More...
 
class  Describable
 Base class for all objects that can describe themselves. More...
 
class  m_bad_cast
 Exception class for bad cast. More...
 
class  ExceptionBase
 Base exception class for Teuchos. More...
 
class  DuplicateOwningRCPError
 Thrown if a duplicate owning RCP is creatd the the same object. More...
 
class  NullReferenceError
 Null reference error exception class. More...
 
class  NonconstAccessError
 Null reference error exception class. More...
 
class  RangeError
 Range error exception class. More...
 
class  DanglingReferenceError
 Dangling reference error exception class. More...
 
class  IncompatibleIteratorsError
 Incompatiable iterators error exception class. More...
 
class  DuplicateParameterSublist
 Optionally thrown when a sublist is set twice by either updateParametersFromXmlFile(), updateParametersFromXmlFileAndUpdate() or updateParametersFromXmlString() More...
 
class  DuplicateParameterEntryException
 Thrown when a Parameter Entry that is already being tracked is attempted to be inserted again into the masterParameterEntryMap and masterIDMap. More...
 
class  DuplicateParameterEntryIDException
 Thrown when a Parameter Entry ID that is already being used is attempted to be reused again. More...
 
class  DuplicateValidatorIDException
 Thrown when a ParameterEntryValidatorID that is already being used is attempted to be reused again. More...
 
class  NonprintableTypeException
 Exception class for non-printable parameter types, such as enum class/std::vector and many more which don't define an operator<<. Thrown during runtime when trying to print a parameter list with a non-printable parameter entry. More...
 
class  basic_FancyOStream_buf
 Stream buffering class that performs the magic of indenting data sent to an std::ostream object. More...
 
class  basic_FancyOStream
 std::ostream subclass that performs the magic of indenting data sent to an std::ostream object among other things. More...
 
class  basic_OSTab
 Tabbing class for helping to create formated, indented output for a basic_FancyOStream object. More...
 
class  FilteredIterator
 C++ Standard Library compatable filtered iterator. More...
 
class  GlobalMPISession
 Initialize, finalize, and query the global MPI session. More...
 
class  HashSet
 Templated hashtable-based set. More...
 
class  HashPair
 Helper class for Teuchos::Hashtable, representing a single <key, value> pair. More...
 
class  Hashtable
 Templated hashtable class. More...
 
class  HashUtils
 Utilities for generating hashcodes. This is not a true hash ! For all ints and types less than ints it returns the i/p typecasted as an int. For every type more than the size of int it is only slightly more smarter where it adds the bits into int size chunks and calls that an hash. Used with a capacity limited array this will lead to one of the simplest hashes. Ideally this should be deprecated and not used at all. More...
 
class  LabeledObject
 Base class for objects that contain a std::string label. More...
 
class  NullIteratorTraits
 Base traits class for getting a properly initialized null pointer. More...
 
class  NullIteratorTraits< std::reverse_iterator< Iter > >
 Partial specialization for std::reverse_iterator. More...
 
class  OpaqueWrapper
 Base class for wrapped opaque objects. More...
 
class  OpaqueWrapperWithFree
 Subclass for wrapped opaque objects with a free function. More...
 
struct  OrdinalTraits
 This structure defines some basic traits for the ordinal field type. More...
 
class  Ptr
 Simple wrapper class for raw pointers to single objects where no persisting relationship exists. More...
 
class  Range1D
 Subregion Index Range Class. More...
 
class  DeallocBoostSharedPtr
 Teuchos::RCP Deallocator class that wraps a boost::shared_ptr More...
 
class  RCPDeleter
 boost::shared_ptr deleter class that wraps a Teuchos::RCP. More...
 
class  RCP
 Smart reference counting pointer class for automatic garbage collection. More...
 
struct  RCPComp
 Struct for comparing two RCPs. Simply compares the raw pointers contained within the RCPs. More...
 
struct  RCPConstComp
 Struct for comparing two RCPs. Simply compares the raw pointers contained within the RCPs. More...
 
class  NullIteratorTraits< RCP< T > >
 Traits specialization for RCP. More...
 
class  DeallocNull
 Policy class for deallocator for non-owned RCPs. More...
 
class  DeallocDelete
 Policy class for deallocator that uses delete to delete a pointer which is used by RCP. More...
 
class  DeallocArrayDelete
 Deallocator class that uses delete [] to delete memory allocated uisng new [] More...
 
class  DeallocFunctorDelete
 Deallocator subclass that Allows any functor object (including a function pointer) to be used to free an object. More...
 
class  DeallocFunctorHandleDelete
 Deallocator subclass that Allows any functor object (including a function pointer) to be used to free a handle (i.e. pointer to pointer) to an object. More...
 
class  EmbeddedObjDealloc
 A deallocator class that wraps a simple value object and delegates to another deallocator object. More...
 
class  ToStringTraits< ERCPStrength >
 Traits class specialization for toString(...) function for converting from ERCPStrength to std::string. More...
 
class  RCPNode
 Node class to keep track of address and the reference count for a reference-counted utility class and delete the object. More...
 
class  RCPNodeTracer
 Debug-mode RCPNode tracing class. More...
 
class  RCPNodeTmpl
 Templated implementation class of RCPNode that has the responsibility for deleting the reference-counted object. More...
 
class  ActiveRCPNodesSetup
 Sets up node tracing and prints remaining RCPNodes on destruction. More...
 
class  RCPNodeHandle
 Handle class that manages the RCPNode's reference counting. More...
 
class  RCPNodeThrowDeleter
 Deletes a (non-owning) RCPNode but not it's underlying object in case of a throw. More...
 
class  DeallocStdSharedPtr
 Teuchos::RCP Deallocator class that wraps a std::shared_ptr More...
 
class  StdSharedPtrRCPDeleter
 std::shared_ptr deleter class that wraps a Teuchos::RCP. More...
 
struct  ScalarTraits
 This structure defines some basic traits for a scalar field type. More...
 
class  SetScientific
 Temporarily make an output stream use scientific notation with sufficient precision. More...
 
class  SetScientific< Scalar, false >
 Partial specialization of SetScientific for non-floating-point types. More...
 
class  ThreadLock
 Basic portable thread lock primative class. More...
 
class  ScopedThreadLock
 Stack-based object for locking a thread. More...
 
class  SharedAccessPolicy
 Single policy class defining an approach for sharing an integral object across threads as well as a general heavy-weight locking policy. More...
 
class  SimpleObjectDB
 Simple object object database. More...
 
class  SimpleObjectTable
 This class provides a central place to store objects. More...
 
class  StringIndexedOrderedValueObjectContainerBase
 Base types for StringIndexedOrderedValueObjectContainer. More...
 
class  StringIndexedOrderedValueObjectContainer
 String indexed ordered value-type object container class. More...
 
class  StrUtils
 Provides std::string manipulation utilities that are not provided in the standard C++ std::string class. More...
 
class  TabularOutputter
 Utility class that makes it easy to create formatted tables of output. More...
 
class  RelErrSmallNumber
 
class  RelErrSmallNumber< false, Scalar >
 
class  RelErrSmallNumber< true, Scalar >
 
struct  TestRelErr
 Compute, check and optionally print the relative error in two scalars. More...
 
class  Time
 Wall-clock timer. More...
 
class  ToStringTraits
 Default traits class for converting objects into strings. More...
 
class  ToStringTraits< bool >
 Specialization for bool. More...
 
class  ToStringTraits< std::string >
 Specialization for std::string. More...
 
class  ToStringTraits< double >
 Specialization for double. More...
 
class  ToStringTraits< float >
 Specialization for float. More...
 
class  ToStringTraits< std::pair< T1, T2 > >
 Partial specialization for std::pair<T1, T2>. More...
 
class  Tuple
 Statically sized simple array (tuple) class. More...
 
class  TwoDArray
 A thin wrapper around the Array class which causes it to be interpreted as a 2D Array. More...
 
class  TypeNameTraits< TwoDArray< T > >
 TypeNameTraits specialization for Array. More...
 
class  TypeNameTraits
 Default traits class that just returns typeid(T).name(). More...
 
class  UnitTestBase
 Unit test base class. More...
 
class  UnitTestRepository
 Singleton unit testing repository. More...
 
class  Utils
 This class provides some basic std::string and floating-point utilities for Teuchos. More...
 
class  VerboseObjectBase
 Non-templated base class for objects that can print their activities to a stream. More...
 
class  VerboseObject
 Templated base class for objects that can print their activities to a stream and have a verbosity level. More...
 
class  VerboseObjectTempState
 Set and release a stream and verbosity level. More...
 
class  RawWorkspace
 Encapulsation object for raw temporary workspace that has been allocated. These objects can only be created on the stack and should not be included as the member of any other classes. More...
 
class  Workspace
 Templated class for workspace creation. More...
 
class  WorkspaceStore
 Workspace encapsulation class. More...
 
class  WorkspaceStoreInitializeable
 WorkspaceStore class that can be used to actually reinitialize memory. More...
 
class  Condition
 A Condition determines whether or not a particular set of conditions are currently occuring. More...
 
class  ConditionXMLConverter
 An abstract base class for converting Dependencies to and from XML. More...
 
class  ConditionXMLConverterDB
 Provides ability to lookup ConditionXMLConverters. More...
 
class  Dependency
 This class represents a depndency between elements in a Parameter List. More...
 
class  DependencySheet
 A Dependency sheet keeps track of dependencies between various ParameterEntries. More...
 
class  DependencyXMLConverter
 An abstract base class for converting Dependencies to and from XML. More...
 
class  DependencyXMLConverterDB
 Provides ability to lookup DependencyXMLConverterDB. More...
 
class  DummyObjectGetter
 Class for retrieving a dummy object of type T. More...
 
class  FileInputSource
 Instantiation of XMLInputSource class for reading XML from a file. More...
 
class  FileInputStream
 Instantiation of XMLInputStream class for reading an entire document from a file. More...
 
class  FunctionObject
 A function object represents an arbitrary function. More...
 
class  FunctionObjectXMLConverter
 An abstract base class for converting FunctionObjects to and from XML. More...
 
class  FunctionObjectXMLConverterDB
 Provides ability to lookup FunctionObjectXMLConverters. More...
 
class  InvalidConditionException
 
class  InvalidDependencyException
 
class  ObjectBuilder
 Generic parameterlist driven bulider class. More...
 
class  ParameterEntry
 This object is held as the "value" in the Teuchos::ParameterList std::map. More...
 
class  ParameterEntryValidator
 Abstract interface for an object that can validate a ParameterEntry's value. More...
 
class  ParameterEntryXMLConverter
 A class used to convert parameter entries to xml and vice versa. More...
 
class  ParameterEntryXMLConverterDB
 Provides ability to lookup ParameterEntryXMLConverters. More...
 
class  ParameterList
 A list of parameters of arbitrary type. More...
 
class  TypeNameTraits< ParameterList >
 Traits specialization. More...
 
class  ParameterListAcceptor
 Interface for objects that can accept a ParameterList. More...
 
class  ParameterListAcceptorDefaultBase
 Intermediate node base class for objects that accept parameter lists that implements some of the needed behavior automatically. More...
 
class  ParameterListModifier
 Abstract interface for an object that can modify both a parameter list and the parameter list being used during the validation stage. More...
 
class  ParameterListNonAcceptor
 Mix-in implementation subclass to be inherited by concrete subclasses who's interface says that they take a parameter list but do not have any parameters yet. More...
 
class  ParameterXMLFileReader
 
class  ParameterCondition
 An Abstract Base class for all ParameterConditions. More...
 
class  StringCondition
 A String Condition is a Parameter Condition that evaluates whether or not a string parameter has taken on a particular value or set of values. More...
 
class  DummyObjectGetter< StringCondition >
 Specialized class for retrieving a dummy object of type StringCondition. More...
 
class  NumberCondition
 A Number Condition is a Parameter Condition that evaluates whether or not a number parameter is greater than 0 (or some other number based on a given function). If the parameter is greater than 0 this is interperted as the condition being "true". Otherwise the condition is interperted as false. More...
 
class  DummyObjectGetter< NumberCondition< T > >
 Specialized class for retrieving a dummy object of type NumberCondition. More...
 
class  BoolCondition
 A Bool Condition is a Parameter Condition that evaluates whether or not a Boolean parameter is ture. More...
 
class  DummyObjectGetter< BoolCondition >
 Specialized class for retrieving a dummy object of type BoolCondition. More...
 
class  BoolLogicCondition
 An abstract parent class for all Bool Logic Conditions. More...
 
class  OrCondition
 A Bool Logic Condition that returns the result or perfroming a logical OR on the conditions. More...
 
class  DummyObjectGetter< OrCondition >
 Specialized class for retrieving a dummy object of type OrCondition. More...
 
class  AndCondition
 A Bool Logic Condition that returns the result or perfroming a logical AND on the conditions. More...
 
class  DummyObjectGetter< AndCondition >
 Specialized class for retrieving a dummy object of type AndCondition. More...
 
class  EqualsCondition
 A Bool Logic Condition that returns the result or perfroming a logical EQUALS on the conditions. More...
 
class  DummyObjectGetter< EqualsCondition >
 Specialized class for retrieving a dummy object of type EqualsCondition. More...
 
class  NotCondition
 A Not condition returns the result of performing a logical NOT on a given condition. More...
 
class  DummyObjectGetter< NotCondition >
 Specialized class for retrieving a dummy object of type NotCondition. More...
 
class  BoolLogicConditionConverter
 An xml converter for BoolLogicConditions. More...
 
class  OrConditionConverter
 An xml converter for OrConditions. More...
 
class  AndConditionConverter
 An xml converter for AndConditions. More...
 
class  EqualsConditionConverter
 An xml converter for EqualsConditions. More...
 
class  NotConditionConverter
 An xml converter for NotConditions. More...
 
class  ParameterConditionConverter
 An xml converter for ParameterConditions. More...
 
class  StringConditionConverter
 An xml converter for StringConditions The valid XML represntation for a StringCondition is: More...
 
class  BoolConditionConverter
 An xml converter for BoolConditions. More...
 
class  NumberConditionConverter
 An xml converter for NumberConditions The valid XML represntation for a NumberCondition is: More...
 
class  VisualDependency
 An abstract parent class for all visual dependencies. More...
 
class  ValidatorDependency
 An abstract base class for all validator dependencies. More...
 
class  StringVisualDependency
 A string visual dependency says the following about the relationship between two elements in a Parameter List: Depending on whether or not the dependee has a particular value, the dependent may or may not be displayed to the user in a UI. More...
 
class  DummyObjectGetter< StringVisualDependency >
 Specialized class for retrieving a dummy object of type StringVisualDependency. More...
 
class  BoolVisualDependency
 A bool visual dependency says the following about the relationship between two elements in a Parameter List: Depending on whether or not the dependee is true or false, the dependent may or may not be displayed to the user in a GUI. More...
 
class  DummyObjectGetter< BoolVisualDependency >
 Specialized class for retrieving a dummy object of type BoolVisualDependency. More...
 
class  ConditionVisualDependency
 A condition visual dependency says the following about the relationship between elements in a Parameter List: Depending on whether or not the dependee(s) statisfy a particual condition, the dependent may or may not be displayed to the user in a UI. More...
 
class  DummyObjectGetter< ConditionVisualDependency >
 Specialized class for retrieving a dummy object of type ConditionVisualDependency. More...
 
class  NumberVisualDependency
 A number visual dependency says the following about the relationship between two elements in a Parameter List: Depending on whether or not the dependee has a certain value, the dependent may or may not be displayed to the user in a UI. More...
 
class  DummyObjectGetter< NumberVisualDependency< T > >
 Specialized class for retrieving a dummy object of type NumberVisualDependency. More...
 
class  ArrayModifierDependency
 An abstract base class for all dependencies which modify the dimensional attributes of an Array parameter. More...
 
class  NumberArrayLengthDependency
 A NumberArrayLengthDependency says the following about the relationship between two parameters: The length of the dependent's array depends on the value of the dependee. More...
 
class  DummyObjectGetter< NumberArrayLengthDependency< DependeeType, DependentType > >
 Specialized class for retrieving a dummy object of type NumberArrayLengthDependency. More...
 
class  StringValidatorDependency
 A StringValidatorDependency says the following about the relationship between two parameters: Dependening on the value of the dependee, the dependent should use a particular validator from a given set of validators. More...
 
class  DummyObjectGetter< StringValidatorDependency >
 Specialized class for retrieving a dummy object of type StringValidatorDependency. More...
 
class  BoolValidatorDependency
 A BoolValidatorDependency says the following about the relationship between two parameters: Dependening on the value of the dependee, the dependent should use a particular validator from a given set of validators. More...
 
class  DummyObjectGetter< BoolValidatorDependency >
 Specialized class for retrieving a dummy object of type BoolValidatorDependency. More...
 
class  RangeValidatorDependency
 A RangeValidatorDependency says the following about the relationship between two parameters: Dependening on the value of the dependee, the dependent should use a particular validator from a given set of validators. More...
 
class  DummyObjectGetter< RangeValidatorDependency< T > >
 Specialized class for retrieving a dummy object of type RangeValidatorDependency. More...
 
class  TwoDArrayModifierDependency
 A dependency in which some attribute of a TwoDArray in a parameter depends on the value of another parameter. More...
 
class  TwoDRowDependency
 A dependency in which the number of rows in a parameter with a TwoDArray depends on the value of another parameter. More...
 
class  DummyObjectGetter< TwoDRowDependency< DependeeType, DependentType > >
 Specialized class for retrieving a dummy object of type TwoDRowDependency. More...
 
class  TwoDColDependency
 A dependency in which the number of rows in a parameter with a TwoDArray depends on the value of another parameter. More...
 
class  DummyObjectGetter< TwoDColDependency< DependeeType, DependentType > >
 Specialized class for retrieving a dummy object of type TwoDColDependency. More...
 
class  VisualDependencyXMLConverter
 An xml converter for VisualDepenencies. More...
 
class  ValidatorDependencyXMLConverter
 An xml converter for ValidatorDependencies. More...
 
class  StringVisualDependencyXMLConverter
 An xml converter for StringVisualDepenencies. More...
 
class  BoolVisualDependencyXMLConverter
 An xml converter for BoolVisualDepenencies. More...
 
class  NumberVisualDependencyXMLConverter
 An xml converter for NumberVisualDependencies. More...
 
class  ConditionVisualDependencyXMLConverter
 An xml converter for ConditionVisualDependencies. More...
 
class  StringValidatorDependencyXMLConverter
 An xml converter for StringValidatorDependencies. More...
 
class  BoolValidatorDependencyXMLConverter
 An xml converter for BoolValidatorDependencies. More...
 
class  RangeValidatorDependencyXMLConverter
 An xml converter for RangeValidatorDependencies. More...
 
class  ArrayModifierDependencyXMLConverter
 A converter used to convert ArrayModifierDepdencies to and from xml. More...
 
class  NumberArrayLengthDependencyXMLConverter
 An xml converter for NumberArrayLengthDependencies. More...
 
class  TwoDRowDependencyXMLConverter
 A class for converting TwoDRowDependencies to and from XML. More...
 
class  TwoDColDependencyXMLConverter
 A class for converting TwoDColDependencies to and from XML. More...
 
class  SimpleFunctionObject
 A simple function object that applies a given operand to a spcified arguement using a specific operator. More...
 
class  SubtractionFunction
 A simple function object that subtracts a specififed value from the given arguement in the runFunction function. More...
 
class  AdditionFunction
 A simple function object that adds a specififed value from the given arguement in the runFunction function. More...
 
class  MultiplicationFunction
 A simple function object that multiplys a specififed value from the given arguement in the runFunction function. More...
 
class  DivisionFunction
 A simple function object that divides a specififed value from the given arguement in the runFunction function. More...
 
class  SimpleFunctionXMLConverter
 An xml converter for SimpleFunctionObjects. More...
 
class  SubtractionFunctionXMLConverter
 Class for converting SubtractionFunction objects to and from XML. More...
 
class  AdditionFunctionXMLConverter
 Class for converting AdditionFunction objects to and from XML. More...
 
class  MultiplicationFunctionXMLConverter
 Class for converting MultiplicationFunction objects to and from XML. More...
 
class  DivisionFunctionXMLConverter
 Class for converting DivisionFunction objects to and from XML. More...
 
class  StringToIntegralParameterEntryValidator
 Standard implementation of a ParameterEntryValidator that maps from a list of strings to an enum or integer value. More...
 
class  DummyObjectGetter< StringToIntegralParameterEntryValidator< IntegralType > >
 Specialized class for retrieving a dummy object of type StringToIntegralParameterEntryValidator<IntegralType>. More...
 
class  BoolParameterEntryValidator
 Standard implementation of a BoolParameterEntryValidator that accepts bool values (true/false) or string values for bool ("true"/"false"). More...
 
class  AnyNumberParameterEntryValidator
 Standard implementation of a ParameterEntryValidator that accepts numbers from a number of different formats and converts them to numbers in another format. More...
 
class  DummyObjectGetter< AnyNumberParameterEntryValidator >
 Specialized class for retrieving a dummy object of type AnyNumberParameterEntryValidator. More...
 
struct  UndefinedEnhancedNumberTraits
 Default structure used by EnhancedNumberTraits<T> to produce a compile time error when the specialization does not exist for type T. More...
 
class  EnhancedNumberTraits
 Class defining the traits of the number type being used in an EnhancedNumberValidator. More...
 
class  EnhancedNumberValidator
 Class uesd to validate a particular type of number. More...
 
class  DummyObjectGetter< EnhancedNumberValidator< T > >
 Specialized class for retrieving a dummy object of type EnhancedNumberValidator<T>. More...
 
class  FileNameValidator
 Validate a file name entry. More...
 
class  DummyObjectGetter< FileNameValidator >
 Specialized class for retrieving a dummy object of type FileNameValidator. More...
 
class  StringValidator
 A simple validator that only allows certain string values to be choosen or simply enforces that a particular parameter have a std::string for a value. More...
 
class  DummyObjectGetter< StringValidator >
 Specialized class for retrieving a dummy object of type StringValidator. More...
 
class  AbstractArrayValidator
 An abstract base class for all ArrayValidators. More...
 
class  TwoDArrayValidator
 Takes a validator, wraps it, and applies it to a TwoDArray. More...
 
class  DummyObjectGetter< TwoDArrayValidator< ValidatorType, EntryType > >
 Specialized class for retrieving a dummy object of type TwoDArrayValidator. More...
 
class  TwoDArrayStringValidator
 Convience class for StringValidators that are to be applied to TwoDArrays. More...
 
class  TwoDArrayFileNameValidator
 Convience class for FileNameValidators that are to be applied to TwoDArrays. More...
 
class  TwoDArrayNumberValidator
 Convience class for EnhancedNumberValidators that are to be applied to TwoDArray. More...
 
class  ArrayValidator
 Takes a validator, wraps it, and applies it to an array. More...
 
class  DummyObjectGetter< ArrayValidator< ValidatorType, EntryType > >
 Specialized class for retrieving a dummy object of type ArrayValidator. More...
 
class  ArrayStringValidator
 Convience class for StringValidators that are to be applied to arrays. More...
 
class  ArrayFileNameValidator
 Convience class for FileNameValidators that are to be applied to arrays. More...
 
class  ArrayNumberValidator
 Convience class for EnhancedNumberValidators that are to be applied to arrays. More...
 
class  AnyParameterEntryConverter
 A last resort converter for when no others will do. More...
 
class  StandardTemplatedParameterConverter
 A standard ParameterEntryXMLConverter for most data types. More...
 
class  StringToIntegralValidatorXMLConverter
 Convert a StringToIntegralParameterEntryValidator to and from XML. More...
 
class  BoolValidatorXMLConverter
 Converts BoolParameterEntryValidators to and from XML. More...
 
class  AnyNumberValidatorXMLConverter
 Converts AnyNumberParameterEntryValidators to and from XML. More...
 
class  EnhancedNumberValidatorXMLConverter
 Converts EnhancedNumberValidators to and from XML. More...
 
class  FileNameValidatorXMLConverter
 Converts FileNameValidators to and from XML. More...
 
class  StringValidatorXMLConverter
 Converts StringValidators to and from XML. More...
 
class  ArrayValidatorXMLConverter
 Converts ArrayValidators to and from XML. More...
 
class  TwoDArrayValidatorXMLConverter
 Converts TwoDArrayValidators to and from XML. More...
 
class  StringInputSource
 Instantiation of XMLInputSource class for reading XML from a std::string. More...
 
class  StringInputStream
 Instantiation of XMLInputStream for reading an entire document from a std::string. More...
 
class  TreeBuildingXMLHandler
 TreeBuildingXMLHandler assembles a XMLObject from your XML input. More...
 
class  ValidatorFactory
 Factory for ParameterEntryValidator objects. More...
 
class  IDtoValidatorMap
 Maps Validators to integers. More...
 
class  ValidatortoIDMap
 A class for mapping validators to integers. More...
 
class  ValidatorXMLConverter
 An abstract base class for converting ParameterEntryValidators to and from XML. More...
 
class  ValidatorXMLConverterDB
 Provides ability to lookup ValidatorXMLConverterDB. More...
 
class  MissingValuesTagException
 Thrown when a StringConditon is missing it's Value tag. More...
 
class  CantFindConditionConverterException
 Thrown when an appropriate Condition Converter can't be found. More...
 
class  MissingDependeeException
 Thrown when no dependes of a dependency can't be found when converting the dependency to or from XML. More...
 
class  MissingDependentException
 Thrown when a dependent of a dependency cant be found when converting the dependency to or from XML. More...
 
class  MissingDependeesException
 Thrown when no dependess of a dependency are specified when converting the dependency from XML. More...
 
class  MissingDependentsException
 Thrown when no dependents of a dependency are specified when converting the dependency from XML. More...
 
class  TooManyDependeesException
 Thrown when a Dependency has too many dependees specified in its XML. More...
 
class  ValuesTagMissingException
 Thrown when a StringVisualDependency is being converted from XML and no Values tag is found. More...
 
class  MissingRangesAndValidatorsTagException
 Thrown when the rangesAndValidators tag for the RangeValidatorDepencyConverter can't be found. More...
 
class  MissingValuesAndValidatorsTagException
 Thrown when converting a StrinvValidatorDependcny from XML and no valuesAndValidators tag is found. More...
 
class  MissingConditionTagException
 Thrown when no condtion tag is found when converting a ConditionVisualDependency from XML. More...
 
class  MissingValidatorException
 Thrown when converting a dependency that has validaotrs to and from XML. This excetpion indicates that a specified validator could not be found. More...
 
class  CantFindDependencyConverterException
 Thrown when an appropriate Dependency Converter can't be found. More...
 
class  CantFindFunctionObjectConverterException
 Thrown when an appropriate FunctionObject Converter can't be found. More...
 
class  XMLInputSource
 XMLInputSource represents a source of XML input that can be parsed to produce an XMLObject. More...
 
class  XMLInputStream
 XMLInputStream represents an XML input stream that can be used by a XMLInputSource. More...
 
class  EmptyXMLError
 Thrown when attempting to parse an empty XML std::string. More...
 
class  XMLObject
 Representation of an XML data tree. XMLObject is a ref-counted handle to a XMLObjectImplem object, allowing storage by reference. More...
 
class  XMLObjectImplem
 The XMLObjectImplem class takes care of the low-level implementation details of XMLObject. More...
 
class  CantFindParameterEntryConverterException
 Thrown when an appropriate ParameterEntryXMLConverter can't be found. More...
 
class  DuplicateValidatorIDsException
 Constructs a CantFindParameterEntryConverterException. More...
 
class  DuplicateParameterIDsException
 Thrown when two parameters in an XML file have the same ID. More...
 
class  BadValidatorXMLConverterException
 Thrown when a bad validator xml converter is used. More...
 
class  CantFindValidatorConverterException
 Thrown when the ValidatorXMLConverterDB can't find an appropriate converter. More...
 
class  BadParameterEntryXMLConverterTypeException
 Thrown when a converter is being used to convert either and XML tag or ParameterEntry with an innappropriate type. More...
 
class  NoValueAttributeExecption
 Thrown when a parameter entry tag is missing it's value attribute. More...
 
class  NoTypeAttributeExecption
 Thrown when a parameter entry tag is missing it's type attribute. More...
 
class  NoNameAttributeExecption
 Thrown when a parameter entry tag is missing it's name attribute. More...
 
class  BadParameterListElementException
 Thrown when an element inside a parameter list is bad. More...
 
class  BadXMLParameterListRootElementException
 Thrown when the root xml tag for a parameter list is incorrect. More...
 
class  MissingValidatorDefinitionException
 Thrown when a referenced validator can't be found. More...
 
class  MissingParameterEntryDefinitionException
 Thrown when a referenced ParameterEntry can't be found. More...
 
class  BadTagException
 Thrown when xml tag is encountered that is either unrecognized or inappropriate for a given context. More...
 
class  XMLParameterListReader
 Writes an XML object to a parameter list. More...
 
class  XMLParameterListWriter
 Writes a ParameterList to an XML object. More...
 
class  XMLParser
 XMLParser consumes characters from an XMLInputStream object, parsing the XML and using a TreeBuildingXMLHandler to construct an XMLObject. More...
 
struct  ValueTolerance
 ValueTolerance is a struct to keep a tuple of value and a tolerance. The tolerance can be either expressed as a relative or through an upper and lower bound. More...
 
class  XMLTestNode
 Subclass of XMLObject used by the performance archive. More...
 
class  CommStatus
 Encapsulation of the result of a receive (blocking or nonblocking). More...
 
class  Comm
 Abstract interface for distributed-memory communication. More...
 
class  CommRequest
 Encapsulation of a pending nonblocking communication operation. More...
 
class  SumValueReductionOp
 Standard summation operator for types with value semantics. More...
 
class  MinValueReductionOp
 Standard min operator for types with value semantics. More...
 
class  MaxValueReductionOp
 Standard Max operator for types with value semantics. More...
 
class  ANDValueReductionOp
 Standard logical AND operator for booleans. More...
 
class  DefaultComm
 Return a default global communicator appropriate for the build. More...
 
class  SerialCommStatus
 Implementation of CommStatus for a serial communicator. More...
 
class  SerialComm
 Concrete serial communicator subclass. More...
 
class  PerformanceMonitorBase
 Common capabilities for collecting and reporting performance data across processors. More...
 
class  ValueTypeReductionOp
 Base interface class for user-defined reduction operations for objects that use value semantics. More...
 
class  ReferenceTypeReductionOp
 Base interface class for user-defined reduction operations for objects that use reference semantics. More...
 
class  CharToValueTypeReductionOpImp
 Decorator class that uses traits to convert to and from char[] to typed buffers for objects that use value semantics and then call a type-specific reduction object. More...
 
class  CharToValueTypeReductionOp
 Decorator class that uses traits to convert to and from char[] to typed buffers for objects that use value semantics and then call a type-specific reduction object. More...
 
class  CharToValueTypeReductionOp< Ordinal, T, typename DefaultSerializer< Ordinal, T >::DefaultSerializerType >
 Decorator class that uses traits to convert to and from char[] to typed buffers for objects that use value semantics and then call a type-specific reduction object. More...
 
class  CharToReferenceTypeReductionOp
 Decorator class that uses a strategy object to convert to and from char[] to typed buffers for objects that use reference semantics and then call a type-specific reduction object. More...
 
class  UndefinedSerializationTraits
 Report an error if a specialization of SerializationTraits is missing. More...
 
class  SerializationTraits
 Serialization traits class for types T that use value semantics. More...
 
class  ValueTypeSerializer
 Serialization class for types T that use value semantics. More...
 
class  DirectSerializationTraits
 Serialization traits for objects that support direct serialization. More...
 
class  DefaultSerializer
 A class for instantiating a default serialization object. More...
 
class  ValueTypeSerializationBufferImp
 Encapsulate how an array of non-const objects with value sematics is serialized into a char[] array. More...
 
class  ConstValueTypeSerializationBufferImp
 Encapsulate how an array of const objects with value sematics is serialized into a const char[] array. More...
 
class  ValueTypeDeserializationBufferImp
 Encapsulate how an array of non-const serialized objects with value sematics stored in a char[] array is deserialized to a T[] array and then serialized back again. More...
 
class  ConstValueTypeDeserializationBufferImp
 Encapsulate how an array of non-const serialized objects with value sematics stored in a char[] array is deserialized to a T[] array and then serialized back again. More...
 
class  ValueTypeSerializationBufferImp< Ordinal, T, Serializer, true >
 Encapsulate how an array of non-const objects with value sematics is serialized into a char[] array. More...
 
class  ConstValueTypeSerializationBufferImp< Ordinal, T, Serializer, true >
 Encapsulate how an array of const objects with value sematics is serialized into a const char[] array. More...
 
class  ValueTypeDeserializationBufferImp< Ordinal, T, Serializer, true >
 Encapsulate how an array of non-const serialized objects with value sematics stored in a char[] array is deserialized to a T[] array and then serialized back again. More...
 
class  ConstValueTypeDeserializationBufferImp< Ordinal, T, Serializer, true >
 Encapsulate how an array of non-const serialized objects with value sematics stored in a char[] array is deserialized to a T[] array and then serialized back again. More...
 
class  ValueTypeSerializationBufferImp< Ordinal, T, Serializer, false >
 Encapsulate how an array of non-const objects with value sematics is serialized into a char[] array. More...
 
class  ConstValueTypeSerializationBufferImp< Ordinal, T, Serializer, false >
 Encapsulate how an array of const objects with value sematics is serialized into a const char[] array. More...
 
class  ValueTypeDeserializationBufferImp< Ordinal, T, Serializer, false >
 Encapsulate how an array of non-const serialized objects with value sematics stored in a char[] array is deserialized to a T[] array and then serialized back again. More...
 
class  ConstValueTypeDeserializationBufferImp< Ordinal, T, Serializer, false >
 Encapsulate how an array of non-const serialized objects with value sematics stored in a char[] array is deserialized to a T[] array and then serialized back again. More...
 
class  ValueTypeSerializationBuffer
 Encapsulate how an array of non-const objects with value sematics is serialized into a char[] array. More...
 
class  ConstValueTypeSerializationBuffer
 Encapsulate how an array of const objects with value sematics is serialized into a const char[] array. More...
 
class  ValueTypeDeserializationBuffer
 Encapsulate how an array of non-const serialized objects with value sematics stored in a char[] array is deserialized to a T[] array and then serialized back again. More...
 
class  ConstValueTypeDeserializationBuffer
 Encapsulate how an array of non-const serialized objects with value sematics stored in a char[] array is deserialized to a T[] array and then serialized back again. More...
 
class  ValueTypeSerializationBuffer< Ordinal, T, typename DefaultSerializer< Ordinal, T >::DefaultSerializerType >
 Encapsulate how an array of non-const objects with value sematics is serialized into a char[] array. More...
 
class  ConstValueTypeSerializationBuffer< Ordinal, T, typename DefaultSerializer< Ordinal, T >::DefaultSerializerType >
 Encapsulate how an array of const objects with value sematics is serialized into a const char[] array. More...
 
class  ValueTypeDeserializationBuffer< Ordinal, T, typename DefaultSerializer< Ordinal, T >::DefaultSerializerType >
 Encapsulate how an array of non-const serialized objects with value sematics stored in a char[] array is deserialized to a T[] array and then serialized back again. More...
 
class  ConstValueTypeDeserializationBuffer< Ordinal, T, typename DefaultSerializer< Ordinal, T >::DefaultSerializerType >
 Encapsulate how an array of non-const serialized objects with value sematics stored in a char[] array is deserialized to a T[] array and then serialized back again. More...
 
class  Serializer
 Strategy interface for the indirect serializing and deserializing objects of a given type handled using reference semantics. More...
 
class  ReferenceTypeSerializationBuffer
 Encapsulate how an array of non-const objects with reference sematics is serialized into a char[] array and deserialized again. More...
 
class  ConstReferenceTypeSerializationBuffer
 Encapsulate how an array of const objects with reference sematics is serialized into a char[] array. More...
 
class  ReferenceTypeDeserializationBuffer
 Encapsulate how an array of non-const objects with reference sematics is deserialized from a char[] array and then serialized back into the char[] buffer again. More...
 
class  ConstReferenceTypeDeserializationBuffer
 Encapsulate how an array of onst objects with reference sematics is deserialized from a char[] array with memory being automatically freed at destruction time. More...
 
class  BaseTimer
 The basic timer used internally, uses std::chrono::high_resolution_clock. More...
 
class  StackedTimer
 This class allows one to push and pop timers on and off a stack. More...
 
class  TableColumn
 
class  TableEntry
 An entry, perhaps compound, to be written into a table. More...
 
class  DoubleEntry
 A table entry that is a simple double-precision number. More...
 
class  IntEntry
 A table entry that is a simple integer. More...
 
class  StringEntry
 A table entry that is a simple std::string. More...
 
class  CompoundEntryWithParentheses
 An entry containing two subentries, with the second to be written in parentheses after the first. For example,. More...
 
class  TableFormat
 Encapsulation of formatting specifications for writing data in a clean tabular form. More...
 
class  MaxLoc
 Teuchos version of MPI_MAXLOC. More...
 
class  MinLoc
 Teuchos version of MPI_MINLOC. More...
 
class  MinLocNonzero
 same as MinLoc, but don't allow zero More...
 
class  TimeMonitor
 Scope guard for Time, that can compute MPI collective timer statistics. More...
 
class  SyncTimeMonitor
 A TimeMonitor that waits at a MPI barrier before destruction. More...
 
class  TimeMonitorSurrogateImpl
 Implementation of TimeMonitorSurrogate that invokes TimeMonitor. More...
 
class  TimeMonitorSurrogateImplInserter
 Injects run-time dependency of a class on TimeMonitor. More...
 
class  DefaultBLASImpl
 Default implementation for BLAS routines. More...
 
class  BLAS
 Templated BLAS wrapper. More...
 
class  CompObject
 Functionality and data that is common to all computational classes. More...
 
class  Flops
 The Teuchos Floating Point Operations Class. More...
 
class  LAPACK
 The Templated LAPACK Wrapper Class. More...
 
class  Object
 The base Teuchos class. More...
 
class  Polynomial
 Lightweight container class to represent a simple polynomial. More...
 
class  PolynomialTraits
 Traits class for polynomial coefficients in Teuchos::Polynomial. More...
 
class  SerialBandDenseMatrix
 This class creates and provides basic support for banded dense matrices of templated type. More...
 
struct  SerialBandDenseMatrixPrinter
 Ostream manipulator for SerialBandDenseMatrix. More...
 
class  SerialBandDenseSolver
 A class for representing and solving banded dense linear systems. More...
 
class  SerialDenseMatrix
 This class creates and provides basic support for dense rectangular matrix of templated type. More...
 
struct  SerialDenseMatrixPrinter
 Ostream manipulator for SerialDenseMatrix. More...
 
class  SerialDenseSolver
 A class for solving dense linear problems. More...
 
class  SerialDenseVector
 This class creates and provides basic support for dense vectors of templated type as a specialization of Teuchos::SerialDenseMatrix. Additional methods for the SerialDenseVector class, like mathematical methods, can be found documented in SerialDenseMatrix. More...
 
struct  SerialDenseVectorPrinter
 Ostream manipulator for SerialDenseVector. More...
 
class  SerialQRDenseSolver
 A class for solving dense linear problems. More...
 
class  SerialSpdDenseSolver
 A class for constructing and using Hermitian positive definite dense matrices. More...
 
class  SerialSymDenseMatrix
 This class creates and provides basic support for symmetric, positive-definite dense matrices of templated type. More...
 
struct  SerialSymDenseMatrixPrinter
 Ostream manipulator for SerialSymDenseMatrix. More...
 
class  SerialTriDiMatrix
 This class creates and provides basic support for TriDi matrix of templated type. More...
 
class  FILEstream
 Teuchos::FILEstream: Combined C FILE and C++ stream. More...
 
class  ConstHandle
 Templated handle class with strong const protection. More...
 
class  Handle
 Generic templated handle class. More...
 
class  ConstHandleable
 Class ConstHandleable provides an abstract interface for polymorphic conversion from raw pointers to const smart pointers. More...
 
class  Handleable
 Class Handleable provides an abstract interface for polymorphic conversion from raw pointers to smart pointers. More...
 
class  StringToIntMap
 Map a std::string to an enumeration. More...
 
struct  Language
 The main class for users to define a language using TeuchosParser. More...
 
class  ParserFail
 Tries to create LALR(1) parser tables for a given grammar. More...
 
class  Reader
 The main class for users to read text using TeuchosParser. More...
 
struct  ReaderTables
 Parser and lexer tables specifying how to read a Language. More...
 
class  map
 This class creates a basic std::map object for platforms where the std::map is deficient, otherwise the std::map is injected into the Teuchos namespace. More...
 

Typedefs

typedef basic_FancyOStream< char > FancyOStream
 
typedef basic_OSTab< char > OSTab
 
typedef basic_oblackholestream
< char, std::char_traits< char > > 
oblackholestream
 
typedef std::map< std::string,
std::vector< std::pair< double,
double > > > 
stat_map_type
 Global statistics collected from timer data. More...
 
typedef RCP< const LanguageLanguagePtr
 an RCP to a const Language More...
 
typedef RCP< const ReaderTablesReaderTablesPtr
 an RCP to a const ReaderTables More...
 

Enumerations

enum  ENull
 Used to initialize a RCP object to NULL using an implicit conversion! More...
 
enum  EPrePostDestruction
 Used to specify a pre or post destruction of extra data. More...
 
enum  ERCPStrength
 Used to specify if the pointer is weak or strong. More...
 
enum  ERCPNodeLookup
 Used to determine if RCPNode lookup is performed or not. More...
 
enum  EVerbosityLevel {
  VERB_DEFAULT =-1, VERB_NONE =0, VERB_LOW =1, VERB_MEDIUM =2,
  VERB_HIGH =3, VERB_EXTREME =4
}
 Verbosity level. More...
 
enum  EValidateUsed { VALIDATE_USED_ENABLED, VALIDATE_USED_DISABLED }
 Validation used enum. More...
 
enum  EValidateDefaults { VALIDATE_DEFAULTS_ENABLED, VALIDATE_DEFAULTS_DISABLED }
 Validation defaults enum. More...
 
enum  PerfTestResult
 ReturnValues for PerfTest_CheckOrAdd_Test. More...
 
enum  EReductionType {
  REDUCE_SUM, REDUCE_MIN, REDUCE_MAX, REDUCE_AND,
  REDUCE_BOR
}
 Predefined reduction operations that Teuchos::Comm understands. More...
 
enum  ECounterSetOp
 Set operation type for mergeCounterNames() to perform. More...
 
enum  ESide { LEFT_SIDE, RIGHT_SIDE }
 
enum  ETransp { NO_TRANS, TRANS, CONJ_TRANS }
 
enum  EUplo { UPPER_TRI, LOWER_TRI, UNDEF_TRI }
 
enum  EDiag { UNIT_DIAG, NON_UNIT_DIAG }
 
enum  EType {
  FULL, LOWER, UPPER, HESSENBERG,
  SYM_BAND_L, SYM_BAND_U, BAND
}
 
enum  DataAccess { Copy, View }
 

Functions

template<class ArrayPtrT_in , class T_out >
void arrayViewPtrConv (const ArrayPtrT_in &a_in, const ArrayView< Ptr< T_out > > &a_out)
 Utility function to convert from an an input Array[View,RCP]<[const] PTR<T_in> > object to an output ArrayView<Ptr<T_out> > object. More...
 
template<class ArrayPtrT_in , class T_out >
void arrayViewRcpConv (const ArrayPtrT_in &a_in, const ArrayView< RCP< T_out > > &a_out)
 Utility function to convert from an input Array[View,RCP]<[const] RCP<T_in> > object to an output ArrayView<RCP<T_out> > object. More...
 
template<class T_out , class ArrayPtrT_in >
Array< Ptr< T_out > > arrayPtrConv (const ArrayPtrT_in &a_in)
 Utility function to convert an Array[View,RCP]<[const] PTR<T_in> > object to an Array<Ptr<T_out> > object. More...
 
template<class T_out , class ArrayPtrT_in >
Array< RCP< T_out > > arrayRcpConv (const ArrayPtrT_in &a_in)
 Utility function to convert any Array[View,RCP]<[const] RCP<T_in> > object to an Array<RCP<T_out> > object. More...
 
template<class T >
ArrayView< const Ptr< const T > > arrayConstPtrConstCast (const ArrayView< const Ptr< T > > &a_in)
 Utility function that does a reinterpret case to convert an ArrayView<const Ptr<T> > object to an ArrayView<const Ptr<const T> > object. More...
 
template<class T >
ArrayView< const RCP< const T > > arrayConstRcpConstCast (const ArrayView< const RCP< T > > &a_in)
 Utility function that does a reinterpret case to convert an ArrayView<const RCP<T> > object to an ArrayView<const RCP<const T> > object. More...
 
template<class TypeTo , class TypeFrom >
TypeTo as (const TypeFrom &t)
 Convert from one value type to another. More...
 
template<class TypeTo , class TypeFrom >
TypeTo asSafe (const TypeFrom &t)
 Convert from one value type to another, with validity checks if appropriate. More...
 
TEUCHOSCORE_LIB_DLL_EXPORT void dyn_cast_throw_exception (const std::string &T_from, const std::string &T_from_concr, const std::string &T_to)
 
template<class T_To , class T_From >
T_To & dyn_cast (T_From &from)
 Dynamic casting utility function meant to replace dynamic_cast<T&> by throwing a better documented error message. More...
 
template<class T >
const T & getConst (T &t)
 Return a constant reference to an object given a non-const reference. More...
 
template<class TypeTo , class TypeFrom >
TypeTo implicit_cast (const TypeFrom &t)
 Perform an implicit cast of concrete types with the casted object returned by value. More...
 
template<class TypeTo , class TypeFrom >
TypeTo & implicit_ref_cast (TypeFrom &t)
 Perform an implicit cast of reference types with a reference being returned. More...
 
template<class TypeTo , class TypeFrom >
TypeTo * implicit_ptr_cast (TypeFrom *t)
 Perform an implicit cast of pointer types with a pointer being returned. More...
 
void print_double (std::ostream &os, double v)
 Prints a double-precision floating-point number exactly using minimal characters. More...
 
template<typename T , typename... Args>
auto make_rcp (Args &&...args)
 
template<class T , class Dealloc_T >
TEUCHOS_DEPRECATED RCP< T > rcp (T *p, Dealloc_T dealloc, bool owns_mem)
 Deprecated. More...
 
template<class ParentT , class T >
RCP< ParentT > getInvertedObjOwnershipParent (const RCP< T > &invertedChild)
 Get the parent back from an inverted ownership RCP. More...
 
void debugAssertStrength (ERCPStrength strength)
 
template<class T >
bool is_null (const std::shared_ptr< T > &p)
 Returns true if p.get()==NULL. More...
 
template<class T >
bool nonnull (const std::shared_ptr< T > &p)
 Returns true if p.get()!=NULL. More...
 
template<class T >
RCP< SimpleObjectDB< T > > createSimpleObjectDB ()
 Nonmember constructor. More...
 
TEUCHOSCORE_LIB_DLL_EXPORT void TestForException_incrThrowNumber ()
 Increment the throw number. More...
 
TEUCHOSCORE_LIB_DLL_EXPORT int TestForException_getThrowNumber ()
 Increment the throw number. More...
 
TEUCHOSCORE_LIB_DLL_EXPORT void TestForException_break (const std::string &msg, int throwNumber)
 The only purpose for this function is to set a breakpoint. More...
 
TEUCHOSCORE_LIB_DLL_EXPORT void TestForException_setEnableStacktrace (bool enableStrackTrace)
 Set at runtime if stacktracing functionality is enabled when * exceptions are thrown. More...
 
TEUCHOSCORE_LIB_DLL_EXPORT bool TestForException_getEnableStacktrace ()
 Get at runtime if stacktracing functionality is enabled when exceptions are thrown. More...
 
TEUCHOSCORE_LIB_DLL_EXPORT void TestForTermination_terminate (const std::string &msg)
 Prints the message to std::cerr and calls std::terminate. More...
 
void updateSuccess (const bool result, bool &success)
 Update the success bool flag. More...
 
const std::string passfail (const bool result)
 Return "passed" or "failed". More...
 
TEUCHOSCORE_LIB_DLL_EXPORT
const std::string 
passfail_with_location (const bool result, const std::string &file, const int lineNumber)
 Helper function for TEUCHOS_PASS_FAIL(...). More...
 
void showTestFailureLocation (bool)
 Set if TEUCHOS_PASS_FAIL(...) should print test failure location. More...
 
bool showTestFailureLocation ()
 Return if TEUCHOS_PASS_FAIL(...) should print test failure location. More...
 
template<class Scalar >
Scalar defaultSmallNumber ()
 
template<class Scalar1 , class Scalar2 >
Teuchos::ScalarTraits
< typename std::common_type
< Scalar1, Scalar2 >::type >
::magnitudeType 
relErr (const Scalar1 &s1, const Scalar2 &s2)
 Return relative error of two scalars. More...
 
template<class Array1 , class Array2 >
bool compareArrays (const Array1 &a1, const std::string &a1_name, const Array2 &a2, const std::string &a2_name, Teuchos::FancyOStream &out)
 Compare if two array objects are the same or not. More...
 
template<class Array1 , class Array2 , class ScalarMag >
bool compareFloatingArrays (const Array1 &a1, const std::string &a1_name, const Array2 &a2, const std::string &a2_name, const ScalarMag &tol, Teuchos::FancyOStream &out)
 Compare if two array objects are the same or not up to a relative floating point precision. More...
 
template<class Array1 , class Array2 , class ScalarMag >
bool compareFloatingArraysAbsolute (const Array1 &a1, const std::string &a1_name, const Array2 &a2, const std::string &a2_name, const ScalarMag &tol, Teuchos::FancyOStream &out)
 Compare if two array objects are the same up to an absolute tolerance: elements a1[i] and a2[i] are considered the same if |a1[i]-a2[i]| <= tol. More...
 
template<typename T >
std::string toString (const T &t)
 Utility function for returning a pretty string representation of a object of type T. More...
 
TEUCHOSCORE_LIB_DLL_EXPORT
std::string 
demangleName (const std::string &mangledName)
 Demangle a C++ name if valid. More...
 
template<typename T >
std::string typeName (const T &t)
 Template function for returning the concrete type name of a passed-in object. More...
 
template<typename T >
std::string concreteTypeName (const T &t)
 Template function for returning the type name of the actual concrete name of a passed-in object. More...
 
TEUCHOSCORE_LIB_DLL_EXPORT
ArrayView< const
EVerbosityLevel
getValidVerbLevels ()
 
TEUCHOSCORE_LIB_DLL_EXPORT
ArrayView< const std::string > 
getValidVerbLevelsNames ()
 
TEUCHOSCORE_LIB_DLL_EXPORT
ArrayView< const char *const > 
getValidVerbLevelsNamesRawStrings ()
 
TEUCHOSCORE_LIB_DLL_EXPORT
std::string 
toString (const EVerbosityLevel verbLevel)
 Return a std::string representation of the verbosity level. More...
 
TEUCHOSCORE_LIB_DLL_EXPORT bool includesVerbLevel (const EVerbosityLevel verbLevel, const EVerbosityLevel requestedVerbLevel, const bool isDefaultLevel=false)
 Return true if the verbosity level includes the given level. More...
 
TEUCHOSCORE_LIB_DLL_EXPORT
EVerbosityLevel 
incrVerbLevel (const EVerbosityLevel inputVerbLevel, const int numLevels)
 Return an increased or decreased verbosity level. More...
 
TEUCHOSCORE_LIB_DLL_EXPORT void set_default_workspace_store (const Teuchos::RCP< WorkspaceStore > &default_workspace_store)
 Set pointer to global workspace object. More...
 
TEUCHOSCORE_LIB_DLL_EXPORT
Teuchos::RCP< WorkspaceStore
get_default_workspace_store ()
 Get the global workspace object set by set_default_workspace_store(). More...
 
TEUCHOSCORE_LIB_DLL_EXPORT void print_memory_usage_stats (const WorkspaceStore *workspace_store, std::ostream &out)
 Print statistics on memory usage. More...
 
TEUCHOSPARAMETERLIST_LIB_DLL_EXPORT
void 
printValidParameters (const ParameterListAcceptor &paramListAccpetor, std::ostream &out, const bool showDoc=true)
 Pretty print the valid parameters from a ParameterListAccpetor object. More...
 
template<class IntegralType >
RCP< const
StringToIntegralParameterEntryValidator
< IntegralType > > 
getStringToIntegralParameterEntryValidator (ParameterEntry const &entry, ParameterList const &paramList, std::string const &paramName)
 Get a StringToIntegralParameterEntryValidator<IntegralType> object out of a ParameterEntry object. More...
 
XMLTestNode PerfTest_MachineConfig ()
 PerfTest_MachineConfig generates a basic machine configuration XMLTestNode. More...
 
PerfTestResult PerfTest_CheckOrAdd_Test (XMLTestNode machine_config, XMLTestNode new_test, const std::string filename, const std::string ext_hostname=std::string())
 Check whether a test is present and match an existing test in an archive. More...
 
template<typename Ordinal , typename Packet >
void send (const Packet sendBuffer[], const Ordinal count, const int destRank, const int tag, const Comm< Ordinal > &comm)
 Variant of send() that takes a tag (and restores the correct order of arguments). More...
 
template<typename Ordinal , typename Packet >
void ssend (const Packet sendBuffer[], const Ordinal count, const int destRank, const int tag, const Comm< Ordinal > &comm)
 Variant of ssend() that takes a tag (and restores the correct order of arguments). More...
 
template<typename Ordinal , typename Packet >
void readySend (const Packet sendBuffer[], const Ordinal count, const int destRank, const int tag, const Comm< Ordinal > &comm)
 Variant of readySend() that accepts a message tag. More...
 
template<typename Ordinal , typename Packet >
RCP< CommRequest< Ordinal > > isend (const ArrayRCP< const Packet > &sendBuffer, const int destRank, const int tag, const Comm< Ordinal > &comm)
 Variant of isend() that takes a tag (and restores the correct order of arguments). More...
 
template<typename Ordinal , typename Packet >
RCP< CommRequest< Ordinal > > ireceive (const ArrayRCP< Packet > &recvBuffer, const int sourceRank, const int tag, const Comm< Ordinal > &comm)
 Variant of ireceive that takes a tag argument (and restores the correct order of arguments). More...
 
void unsortedMergePair (const Array< std::string > &localNames, Array< std::string > &globalNames, const ECounterSetOp setOp)
 
void mergeCounterNames (const Comm< int > &comm, const Array< std::string > &localNames, Array< std::string > &globalNames, const ECounterSetOp setOp)
 Merge counter names over all processors. More...
 
void error_out (const std::string &msg, const bool fail_all=false)
 Error reporting function for stacked timer. More...
 
template<typename OrdinalType , typename ScalarType >
std::ostream & operator<< (std::ostream &out, const SerialBandDenseMatrixPrinter< OrdinalType, ScalarType > printer)
 Output SerialBandDenseMatrix object through its stream manipulator. More...
 
template<typename OrdinalType , typename ScalarType >
SerialBandDenseMatrixPrinter
< OrdinalType, ScalarType > 
printMat (const SerialBandDenseMatrix< OrdinalType, ScalarType > &obj)
 Return SerialBandDenseMatrix ostream manipulator Use as: More...
 
template<typename OrdinalType , typename ScalarType >
std::ostream & operator<< (std::ostream &out, const SerialDenseMatrixPrinter< OrdinalType, ScalarType > printer)
 Output SerialDenseMatrix object through its stream manipulator. More...
 
template<typename OrdinalType , typename ScalarType >
SerialDenseMatrixPrinter
< OrdinalType, ScalarType > 
printMat (const SerialDenseMatrix< OrdinalType, ScalarType > &obj)
 Return SerialDenseMatrix ostream manipulator Use as: More...
 
template<typename OrdinalType , typename ScalarType >
std::ostream & operator<< (std::ostream &out, const SerialDenseVectorPrinter< OrdinalType, ScalarType > printer)
 Output SerialDenseVector object through its stream manipulator. More...
 
template<typename OrdinalType , typename ScalarType >
SerialDenseVectorPrinter
< OrdinalType, ScalarType > 
printMat (const SerialDenseVector< OrdinalType, ScalarType > &obj)
 Return SerialDenseVector ostream manipulator Use as: More...
 
template<typename OrdinalType , typename ScalarType >
std::ostream & operator<< (std::ostream &out, const SerialSymDenseMatrixPrinter< OrdinalType, ScalarType > printer)
 Output SerialSymDenseMatrix object through its stream manipulator. More...
 
template<typename OrdinalType , typename ScalarType >
SerialSymDenseMatrixPrinter
< OrdinalType, ScalarType > 
printMat (const SerialSymDenseMatrix< OrdinalType, ScalarType > &obj)
 Return SerialSymDenseMatrix ostream manipulator Use as: More...
 
void doFloatingPointTrap (bool enableTrap)
 Turn on or off a floating point trap. More...
 
void make_lexer (FiniteAutomaton &result, Language const &language)
 construct a lexer for the Language tokens. More...
 
ReaderTablesPtr make_reader_tables (Language const &language)
 constructs ReaderTables for the given Language. More...
 
Parser make_lalr1_parser (GrammarPtr grammar, bool verbose=false)
 Tries to create LALR(1) parser tables for a given grammar. More...
 

Variables

constexpr const int EVerbosityLevel_size = 6
 

Detailed Description

The Teuchos namespace contains all of the classes, structs and enums used by Teuchos, as well as a number of utility routines.

Typedef Documentation

Global statistics collected from timer data.

Key: name of the timer.

Value: each entry in the vector is a timing and call count for that timer, corresponding to a particular statistic (e.g., minimum, arithmetic mean, or maximum). What statistic that is depends on an auxiliary array "statNames" which has the same ordering as the entries in this vector. See the documentation of TimeMonitor::computeGlobalTimerStatistics().

Definition at line 113 of file Teuchos_TimeMonitor.hpp.

an RCP to a const Language

Definition at line 148 of file Teuchos_Language.hpp.

an RCP to a const ReaderTables

Definition at line 40 of file Teuchos_ReaderTables.hpp.

Enumeration Type Documentation

template<class T>
enum ENull
related

Used to initialize a RCP object to NULL using an implicit conversion!

Definition at line 22 of file Teuchos_ENull.hpp.

enum EValidateUsed
related

Validation used enum.

Enumerator
VALIDATE_USED_ENABLED 

Validate that parameters in *this list set using the default value are present in the validation list

VALIDATE_USED_DISABLED 

Do not validate that parameters in *this list set using the default value are present in the validation list

Definition at line 37 of file Teuchos_ParameterList.hpp.

enum EValidateDefaults
related

Validation defaults enum.

Enumerator
VALIDATE_DEFAULTS_ENABLED 

Validate that parameters in *this list set using the default value are present in the validation list

VALIDATE_DEFAULTS_DISABLED 

Do not validate that parameters in *this list set using the default value are present in the validation list

Definition at line 49 of file Teuchos_ParameterList.hpp.

ReturnValues for PerfTest_CheckOrAdd_Test.

Definition at line 187 of file Teuchos_XMLPerfTestArchive.hpp.

template<class OrdinalType>
enum EReductionType
related

Predefined reduction operations that Teuchos::Comm understands.

Teuchos' Comm class wraps MPI (the Message Passing Interface for distributed-memory parallel programming). If you do not have MPI, it imitates MPI's functionality, as if you were running with a single "parallel" process. This means that Teuchos must wrap a subset of MPI's functionality, so that it can build without MPI.

Comm provides wrappers for MPI_Reduce, MPI_Allreduce, and other collectives that take a reduction operator MPI_Op. Teuchos wraps MPI_Op in two different ways. The first way is this enum, which lets users pick from a set of common predefined MPI_Op. The second way is through Teuchos' wrappers for custom MPI_Op, namely ValueTypeReductionOp and ValueTypeReductionOp. Most users should find the reduction operators below sufficient.

Enumerator
REDUCE_SUM 

Sum.

REDUCE_MIN 

Min.

REDUCE_MAX 

Max.

REDUCE_AND 

Logical AND.

REDUCE_BOR 

Bitwise OR.

Definition at line 40 of file Teuchos_EReductionType.hpp.

Set operation type for mergeCounterNames() to perform.

The mergeCounterNames() function merges sets of counter names over all MPI processes in a communicator. Different MPI processes may have created different sets of counters. This enum allows the caller to specify how mergeCounterNames() picks the global set of timers.

Definition at line 33 of file Teuchos_PerformanceMonitorBase.hpp.

Enumerator
LEFT_SIDE 

Left side

RIGHT_SIDE 

Right side

Definition at line 54 of file Teuchos_BLAS_types.hpp.

Enumerator
NO_TRANS 

Not transposed

TRANS 

Transposed

CONJ_TRANS 

Conjugate transposed

Definition at line 59 of file Teuchos_BLAS_types.hpp.

Enumerator
UPPER_TRI 

Upper triangular

LOWER_TRI 

Lower triangular

UNDEF_TRI 

Unspeficied/undefined triangular structure

Definition at line 65 of file Teuchos_BLAS_types.hpp.

Enumerator
UNIT_DIAG 

Unit diagaonal

NON_UNIT_DIAG 

Not unit diagonal

Definition at line 71 of file Teuchos_BLAS_types.hpp.

Enumerator
FULL 

Full matrix

LOWER 

Lower triangular

UPPER 

Upper triangular

HESSENBERG 

Upper Hessenberg

SYM_BAND_L 

Symmetric band, lower half stored

SYM_BAND_U 

Symmetric band, upper half stored

BAND 

General band

Definition at line 76 of file Teuchos_BLAS_types.hpp.

If set to Copy, user data will be copied at construction. If set to View, user data will be encapsulated and used throughout the life of the object.

Enumerator
Copy 

User data will be copied at construction.

View 

User data will be encapsulated and used throughout the life of the object.

Definition at line 28 of file Teuchos_DataAccess.hpp.

Function Documentation

template<class ArrayPtrT_in , class T_out >
void Teuchos::arrayViewPtrConv ( const ArrayPtrT_in &  a_in,
const ArrayView< Ptr< T_out > > &  a_out 
)

Utility function to convert from an an input Array[View,RCP]<[const] PTR<T_in> > object to an output ArrayView<Ptr<T_out> > object.

Definition at line 31 of file Teuchos_ArrayConversions.hpp.

template<class ArrayPtrT_in , class T_out >
void Teuchos::arrayViewRcpConv ( const ArrayPtrT_in &  a_in,
const ArrayView< RCP< T_out > > &  a_out 
)

Utility function to convert from an input Array[View,RCP]<[const] RCP<T_in> > object to an output ArrayView<RCP<T_out> > object.

Definition at line 49 of file Teuchos_ArrayConversions.hpp.

template<class T_out , class ArrayPtrT_in >
Array<Ptr<T_out> > Teuchos::arrayPtrConv ( const ArrayPtrT_in &  a_in)

Utility function to convert an Array[View,RCP]<[const] PTR<T_in> > object to an Array<Ptr<T_out> > object.

The input array type can be Array, ArrayView, ArrayRCP, or any other array object that supports size() and operator[](const int).

The reason that the while array input type is a template argument instead of just passing in ArrayView templated on the pointer type is that implicit conversions of the array input type will not take place unless you specify the type of the input. That is painful and verbose and we can avoid this by just templating the entire array type as is done here.

NOTE: This function will convert from base type to derived types as well.

NOTE: This function will perform dynamic memory allocation in the creation of the returned Array<Ptr<T_out> > object. However, this should not be a significant performance disadvantage because typically any class type that you would manipulate through an RCP or Ptr object would tend to be larger an more complex so that such overhead would be small and insignificant.

Definition at line 84 of file Teuchos_ArrayConversions.hpp.

template<class T_out , class ArrayPtrT_in >
Array<RCP<T_out> > Teuchos::arrayRcpConv ( const ArrayPtrT_in &  a_in)

Utility function to convert any Array[View,RCP]<[const] RCP<T_in> > object to an Array<RCP<T_out> > object.

Similar to the function arrayPtrConv() except this function returns Array<RCP<T_out> > objects instead of Array<Ptr<T_out> > objects.

Definition at line 100 of file Teuchos_ArrayConversions.hpp.

template<class T >
ArrayView<const Ptr<const T> > Teuchos::arrayConstPtrConstCast ( const ArrayView< const Ptr< T > > &  a_in)

Utility function that does a reinterpret case to convert an ArrayView<const Ptr<T> > object to an ArrayView<const Ptr<const T> > object.

Making this conversion requires an reinterpret case since Ptr<T> is not exactly the same thing as a raw pointer but this conversion should be 100 percent portable and safe.

Definition at line 121 of file Teuchos_ArrayConversions.hpp.

template<class T >
ArrayView<const RCP<const T> > Teuchos::arrayConstRcpConstCast ( const ArrayView< const RCP< T > > &  a_in)

Utility function that does a reinterpret case to convert an ArrayView<const RCP<T> > object to an ArrayView<const RCP<const T> > object.

Making this conversion requires an reinterpret case since RCP<T> is not exactly the same thing as a raw pointer but this conversion should be 100 percent portable and safe.

Definition at line 139 of file Teuchos_ArrayConversions.hpp.

void Teuchos::dyn_cast_throw_exception ( const std::string &  T_from,
const std::string &  T_from_concr,
const std::string &  T_to 
)

We throw a m_bad_cast, which is a subclass of bad_cast. This is necessary, since bad_cast lacks the appropriate constructor for use with the TEUCHOS_TEST_FOR_EXCEPTION macro.

Definition at line 17 of file Teuchos_dyn_cast.cpp.

void Teuchos::print_double ( std::ostream &  os,
double  v 
)

Prints a double-precision floating-point number exactly using minimal characters.

Note
This function is based on the journal article:

Burger, Robert G., and R. Kent Dybvig. "Printing floating-point numbers quickly and accurately." ACM SIGPLAN Notices. Vol. 31. No. 5. ACM, 1996.

Burger and Dybvig describe an algorithm for printing a decimal representation of a double-precision floating-point number using the minimum number of digits such that the value is bitwise exactly preserved when scanned back in.

Their work is meant to improve on the work of Steele and White in terms of runtime performance. It requires high-precision integer arithmetic, hence the Teuchos::BigUInt class was developed to support this implementation.

Variables in this code are meant to closely reflect the variables in Burger and Dybvig's work.

Note that there is an error in the original paper which is corrected in our code: On page 4, step 4 of the Integer Arithmetic procedure, stopping condition (2) has the wrong sign, and should be: $r_n + m_n^+ > s_n$

We extend their work slightly to include an intelligent choice of leading/trailing zeros versus scientific notation, choosing whichever minimizes the number of characters. We also wrote this implementation such that the resulting string cannot be confused with an integer, by adding decimal points (e.g. "5." instead of "5").

This function prints the value (v) to the stream (os) in such a way that, when read back in, it will be bitwise exactly the same floating-point number that was passed to Teuchos::print_double (regardless of rounding mode). It will also choose the representation which minimizes the number characters required to print the value.

Definition at line 65 of file Teuchos_PrintDouble.cpp.

template<typename T , typename... Args>
auto Teuchos::make_rcp ( Args &&...  args)
inline

Allocates and constructs an object of type T passing args to its constructor, and returns an object of type Teuchos::RCP that owns and stores a pointer to it.

Definition at line 1178 of file Teuchos_RCPDecl.hpp.

template<class T , class Dealloc_T >
TEUCHOS_DEPRECATED RCP<T> Teuchos::rcp ( T *  p,
Dealloc_T  dealloc,
bool  owns_mem 
)
inline
template<class ParentT , class T >
RCP<ParentT> Teuchos::getInvertedObjOwnershipParent ( const RCP< T > &  invertedChild)

Get the parent back from an inverted ownership RCP.

Retrieves the RCP<ParentT> object set through rcpWithInvertedObjOwnership().

void Teuchos::debugAssertStrength ( ERCPStrength  strength)
inline

Definition at line 62 of file Teuchos_RCPNode.hpp.

template<class T >
RCP<SimpleObjectDB<T> > Teuchos::createSimpleObjectDB ( )

Nonmember constructor.

Definition at line 177 of file Teuchos_SimpleObjectDB.hpp.

bool Teuchos::TestForException_getEnableStacktrace ( )

Get at runtime if stacktracing functionality is enabled when exceptions are thrown.

Definition at line 79 of file Teuchos_TestForException.cpp.

void Teuchos::TestForTermination_terminate ( const std::string &  msg)

Prints the message to std::cerr and calls std::terminate.

Definition at line 84 of file Teuchos_TestForException.cpp.

bool Teuchos::includesVerbLevel ( const EVerbosityLevel  verbLevel,
const EVerbosityLevel  requestedVerbLevel,
const bool  isDefaultLevel = false 
)

Return true if the verbosity level includes the given level.

Parameters
verbLevel[in] The verbosity level that is in effect.
requestedVerbLevel[in] The verbosity level the client is asking if is included in verbLevel.
isDefaultLevel[in] Set to true if the level in requestedVerbLevel is the default verbosity level. In this case, if verbLevel==VERB_DEFAULT, then this function will return true. The default value is false.

Definition at line 94 of file Teuchos_VerbosityLevel.cpp.

Teuchos::EVerbosityLevel Teuchos::incrVerbLevel ( const EVerbosityLevel  inputVerbLevel,
const int  numLevels 
)

Return an increased or decreased verbosity level.

Parameters
inputVerbLevel[in] The base verbosity level.
numLevels[in] The number of levels to increase (>0) or decrease (<0).

See the function implementation for details on what it does!

Definition at line 109 of file Teuchos_VerbosityLevel.cpp.

void Teuchos::printValidParameters ( const ParameterListAcceptor &  paramListAccpetor,
std::ostream &  out,
const bool  showDoc = true 
)

Pretty print the valid parameters from a ParameterListAccpetor object.

Definition at line 15 of file Teuchos_ParameterListAcceptorHelpers.cpp.

template<class IntegralType >
RCP<const StringToIntegralParameterEntryValidator<IntegralType> > Teuchos::getStringToIntegralParameterEntryValidator ( ParameterEntry const &  entry,
ParameterList const &  paramList,
std::string const &  paramName 
)

Get a StringToIntegralParameterEntryValidator<IntegralType> object out of a ParameterEntry object.

This function with thrown of the validator does not exist.

XMLTestNode Teuchos::PerfTest_MachineConfig ( )

PerfTest_MachineConfig generates a basic machine configuration XMLTestNode.

The function provides a starting point for a machine configuration. Users should add new entries to the returned XMLTestNode to provide test relevant machine configuration entries. For example Kokkos users might want to provide the name of the user Kokkos NodeType or Kokkos DeviceType. The returned config contains information mostly extracted from /proc/cpuinfo if possible. On non unix systems most values will be unknown. Entries are:

  • Compiler: The compiler name.
  • Compiler_Version: A compiler version number.
  • CPU_Name: The CPUs model name.
  • CPU_Sockets: Number of CPU sockets in the system.
  • CPU_Cores_Per_Socket: Number of CPU cores per socket.
  • CPU_Total_HyperThreads: Total number of threads in a node.

Definition at line 164 of file Teuchos_XMLPerfTestArchive.cpp.

PerfTestResult Teuchos::PerfTest_CheckOrAdd_Test ( XMLTestNode  machine_config,
XMLTestNode  new_test,
const std::string  filename,
const std::string  ext_hostname = std::string() 
)

Check whether a test is present and match an existing test in an archive.

This function consumes a machine configuration XMLTestNode and a test entry XMLTestNode. It will attempt to read from an existing file containing a test archive, or generate a new one. Optionally a hostname override can be provided, which is for example useful when running on clusters, where the cluster name should be used for the test entries instead of the compute node name. PerfTest_CheckOrAdd_Test will go through the test archive and search for a matching machine name with matching machine configuration and matching test configuration. If one is found the result values will be compared, if not a new test entry is generated and the result written back to the file.

Parameters
machine_config[in] An XMLTestNode describing the machine configuration.
new_test[in] An XMLTestNode describing the test.
filename[in] The name of a file containing a performance test archive.
ext_hostname[in] An optional hostname to be used instead of the one provided by the OS.
Returns
Whether a matching test is found, or if it was added to an archive.

Here is the list of valid return values:

  • PerfTestFailed: Matching configuration found, but results are deviating more than the allowed tolerance.
  • PerfTestPassed: Matching configuration found, and results are within tolerances.
  • PerfTestNewMachine: The test archive didn't contain an entry with the same machine name. A new entry was generated.
  • PerfTestNewConfiguration: No matching machine configuration was found. A new entry was generated.
  • PerfTestNewTest: No matching testname was found. A new entry was generated.
  • PerfTestNewTestConfiguration: A matching testname was found, but different parameters were used. A new entry was generated.
  • PerfTestUpdatedTest: A matching test was found but more result values were given then previously found. The entry is updated. This will only happen if all the old result values are present in the new ones, and are within their respective tolerances.

Definition at line 205 of file Teuchos_XMLPerfTestArchive.cpp.

template<typename Ordinal , typename Packet >
void Teuchos::send ( const Packet  sendBuffer[],
const Ordinal  count,
const int  destRank,
const int  tag,
const Comm< Ordinal > &  comm 
)

Variant of send() that takes a tag (and restores the correct order of arguments).

Definition at line 2309 of file Teuchos_CommHelpers.hpp.

template<typename Ordinal , typename Packet >
void Teuchos::ssend ( const Packet  sendBuffer[],
const Ordinal  count,
const int  destRank,
const int  tag,
const Comm< Ordinal > &  comm 
)

Variant of ssend() that takes a tag (and restores the correct order of arguments).

Definition at line 2345 of file Teuchos_CommHelpers.hpp.

template<typename Ordinal , typename Packet >
void Teuchos::readySend ( const Packet  sendBuffer[],
const Ordinal  count,
const int  destRank,
const int  tag,
const Comm< Ordinal > &  comm 
)

Variant of readySend() that accepts a message tag.

Definition at line 2488 of file Teuchos_CommHelpers.hpp.

template<typename Ordinal , typename Packet >
RCP<CommRequest<Ordinal> > Teuchos::isend ( const ArrayRCP< const Packet > &  sendBuffer,
const int  destRank,
const int  tag,
const Comm< Ordinal > &  comm 
)

Variant of isend() that takes a tag (and restores the correct order of arguments).

template<typename Ordinal , typename Packet >
RCP<CommRequest<Ordinal> > Teuchos::ireceive ( const ArrayRCP< Packet > &  recvBuffer,
const int  sourceRank,
const int  tag,
const Comm< Ordinal > &  comm 
)

Variant of ireceive that takes a tag argument (and restores the correct order of arguments).

void Teuchos::unsortedMergePair ( const Array< std::string > &  localNames,
Array< std::string > &  globalNames,
const ECounterSetOp  setOp 
)

merge for unsorted lists. New entries are at the bottom of the list

Parameters
localNames- The calling MPI process' list of (local) counter names.
globalNames- Global list of names
setOpIf Intersection, globalNames on output contains the intersection of all sets of counter names. If Union, globalNames on output contains the union of all sets of counter names.

Definition at line 445 of file Teuchos_PerformanceMonitorBase.cpp.

void Teuchos::mergeCounterNames ( const Comm< int > &  comm,
const Array< std::string > &  localNames,
Array< std::string > &  globalNames,
const ECounterSetOp  setOp 
)

Merge counter names over all processors.

Different MPI processes may have created different sets of counters. Use this function to reconcile the sets among processes, either by computing their intersection or their union. This is done using a reduction to MPI Rank 0 (relative to the given communicator) and a broadcast to all processes participating in the communicator. We use a reduce-and-broadcast rather than just a reduction, so that all participating processes can use the resulting list of global names as lookup keys for computing global statistics.

Parameters
comm[in] Communicator over which to merge.
localNames[in] The calling MPI process' list of (local) counter names.
globalNames[out] On output, on each MPI process: the results of merging the counter names.
setOp[in] If Intersection, globalNames on output contains the intersection of all sets of counter names. If Union, globalNames on output contains the union of all sets of counter names.

Definition at line 479 of file Teuchos_PerformanceMonitorBase.cpp.

TEUCHOSCOMM_LIB_DLL_EXPORT void Teuchos::error_out ( const std::string &  msg,
const bool   
)

Error reporting function for stacked timer.

Definition at line 26 of file Teuchos_StackedTimer.cpp.

template<typename OrdinalType , typename ScalarType >
std::ostream& Teuchos::operator<< ( std::ostream &  out,
const SerialBandDenseMatrixPrinter< OrdinalType, ScalarType >  printer 
)

Output SerialBandDenseMatrix object through its stream manipulator.

Definition at line 1057 of file Teuchos_SerialBandDenseMatrix.hpp.

template<typename OrdinalType , typename ScalarType >
SerialBandDenseMatrixPrinter<OrdinalType,ScalarType> Teuchos::printMat ( const SerialBandDenseMatrix< OrdinalType, ScalarType > &  obj)

Return SerialBandDenseMatrix ostream manipulator Use as:

Examples:
DenseMatrix/cxx_main.cpp, DenseMatrix/cxx_main_sym.cpp, and LAPACK/cxx_main.cpp.

Definition at line 1067 of file Teuchos_SerialBandDenseMatrix.hpp.

template<typename OrdinalType , typename ScalarType >
std::ostream& Teuchos::operator<< ( std::ostream &  out,
const SerialDenseMatrixPrinter< OrdinalType, ScalarType >  printer 
)

Output SerialDenseMatrix object through its stream manipulator.

Definition at line 1065 of file Teuchos_SerialDenseMatrix.hpp.

template<typename OrdinalType , typename ScalarType >
SerialDenseMatrixPrinter<OrdinalType,ScalarType> Teuchos::printMat ( const SerialDenseMatrix< OrdinalType, ScalarType > &  obj)

Return SerialDenseMatrix ostream manipulator Use as:

Definition at line 1075 of file Teuchos_SerialDenseMatrix.hpp.

template<typename OrdinalType , typename ScalarType >
std::ostream& Teuchos::operator<< ( std::ostream &  out,
const SerialDenseVectorPrinter< OrdinalType, ScalarType >  printer 
)

Output SerialDenseVector object through its stream manipulator.

Definition at line 323 of file Teuchos_SerialDenseVector.hpp.

template<typename OrdinalType , typename ScalarType >
SerialDenseVectorPrinter<OrdinalType,ScalarType> Teuchos::printMat ( const SerialDenseVector< OrdinalType, ScalarType > &  obj)

Return SerialDenseVector ostream manipulator Use as:

Definition at line 333 of file Teuchos_SerialDenseVector.hpp.

template<typename OrdinalType , typename ScalarType >
std::ostream& Teuchos::operator<< ( std::ostream &  out,
const SerialSymDenseMatrixPrinter< OrdinalType, ScalarType >  printer 
)

Output SerialSymDenseMatrix object through its stream manipulator.

Definition at line 1161 of file Teuchos_SerialSymDenseMatrix.hpp.

template<typename OrdinalType , typename ScalarType >
SerialSymDenseMatrixPrinter<OrdinalType,ScalarType> Teuchos::printMat ( const SerialSymDenseMatrix< OrdinalType, ScalarType > &  obj)

Return SerialSymDenseMatrix ostream manipulator Use as:

Definition at line 1171 of file Teuchos_SerialSymDenseMatrix.hpp.

void Teuchos::make_lexer ( FiniteAutomaton &  result,
Language const &  language 
)

construct a lexer for the Language tokens.

First, a lexer for each token will be constructed using Teuchos::make_dfa. Then the tokens will be united. In any case when one string would match two or different more tokens, only the token with the lowest index is matched (i.e. the one that is listed first in Language::tokens. Note that Teuchos::Reader will accept the longest match from a given starting point.

Definition at line 143 of file Teuchos_Language.cpp.

ReaderTablesPtr Teuchos::make_reader_tables ( Language const &  language)

constructs ReaderTables for the given Language.

See Teuchos::make_lexer and Teuchos::make_lalr1_parser.

Definition at line 198 of file Teuchos_Language.cpp.

Parser Teuchos::make_lalr1_parser ( GrammarPtr  grammar,
bool  verbose = false 
)

Tries to create LALR(1) parser tables for a given grammar.

There are several restrictions required of said grammar:

  1. Unambiguous: There cannot exist two ASTs which produce the same string of terminals
  2. LR(1): It must be possible, reading the string from left to right, to determine its AST by only looking ahead one symbol at a time while reading.
  3. LALR(1): More of an implementation detail, but further constrains the set of parseable grammars beyond LR(1).

It is hard to determine whether a grammar satisfies these conditions without computer assitance, which is why Teuchos::make_lalr1_parser includes verbose capabilities. If the grammar is not LALR(1), Teuchos::make_lalr1_parser will throw a Teuchos::ParserFail exception with detailed debugging information available in Teuchos::ParserFail::what. It will also write a DOT file describing the parser as a state diagram. The exception string will include instruction on using GraphViz to convert that DOT file into a format that can be viewed. Together with other information in the exception string, there should be enough information to understand why the grammar is unsatisfactory and hopefully devise changes to make it LALR(1).

Designing an LALR(1) grammar is more art than science, and is probably one of the more difficult aspects of using TeuchosParser.

Definition at line 1233 of file Teuchos_make_lalr1_parser.cpp.

Variable Documentation

constexpr const int Teuchos::EVerbosityLevel_size = 6

Number of valid EVerbosityLevel enum vaules

Definition at line 42 of file Teuchos_VerbosityLevel.hpp.