NOX::SharedObject< Object, Owner > Class Template Reference

Holder for objects that are shared between NOX::Abstract::Groups. More...

#include <NOX_SharedObjectTemplate.H>

Inheritance diagram for NOX::SharedObject< Object, Owner >:

[legend]
Collaboration diagram for NOX::SharedObject< Object, Owner >:
[legend]
List of all members.

Public Member Functions

 SharedObject (const Teuchos::RefCountPtr< Object > &newObject)
 Constructor.
 ~SharedObject ()
 Destructor.
Teuchos::RefCountPtr< Object > getObject (const Owner *newOwner)
 Get a non-const reference to the underlying object.
Teuchos::RefCountPtr< const
Object > 
getObject () const
 Return a const reference to the underlying object.
bool isOwner (const Owner *checkOwner) const
 Return true if testOwner is the owner of the Jacobian.

Protected Attributes

Teuchos::RefCountPtr< Object > object
 Pointer to the shared object.
const Owner * owner
 Pointer to const object that owns the shared object.

Detailed Description

template<class Object, class Owner>
class NOX::SharedObject< Object, Owner >

Holder for objects that are shared between NOX::Abstract::Groups.

Due to the size of certain operators (i.e. the Jacobian and Preconditioning Matrices), we cannot afford to have multiple copies. Instead we implement a shared object class that that all groups use.


The documentation for this class was generated from the following file:
Generated on Thu Sep 18 12:38:37 2008 for NOX by doxygen 1.3.9.1