NOX Development
Public Member Functions
NOX::GlobalData Class Reference

Container class to hold "global" NOX objects. More...

#include <NOX_GlobalData.H>

Collaboration diagram for NOX::GlobalData:
Collaboration graph

List of all members.

Public Member Functions

 GlobalData (const Teuchos::RCP< Teuchos::ParameterList > &noxParams)
 Consturctor using the top level NOX parameter list.
 GlobalData (const Teuchos::RCP< NOX::Utils > &utils, const Teuchos::RCP< NOX::MeritFunction::Generic > &mf)
 Constructor taking a ref-count pointer to each global object.
virtual ~GlobalData ()
Teuchos::RCP< NOX::UtilsgetUtils () const
 Returns the print utils object.
< NOX::MeritFunction::Generic
getMeritFunction () const
 Returns the merit function object.
< Teuchos::ParameterList
getNoxParameterList () const
 Returns the top-level nox parameter list input by the user.

Detailed Description

Container class to hold "global" NOX objects.

GlobalData is a container class that holds ref-count pointers to "global" objects, i.e., objects that nearly every NOX object will need access to. By putting them all in one container class, the container class can be stored in each NOX object, and if a new global object is needed, it can be added here without modifying the rest of the code. This is an alternative to true global or static objects which are note safe in many contexts (threading). In particular, this approach allows multiple NOX "invocations" to be in memory at the same time.

Member Function Documentation

Teuchos::RCP< Teuchos::ParameterList > NOX::GlobalData::getNoxParameterList ( ) const

Returns the top-level nox parameter list input by the user.

This list is kept in global data so that any sublists of the main parameters list that objects may keep a refernece to is still valid. The line searches and directions usually store data in an output sublist for the users to query. These sublists are NOT wrapped in reference counted smart pointers, so if the base list is deleted, the references to the sublist will no longer be valid. To remedy this, any object that stores a reference to a sublist should also store the global data object.

The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends