Tpetra parallel linear algebra  Version of the Day
Protected Attributes | List of all members
Tpetra::SerialPlatform< Tpetra::Details::DefaultTypes::node_type > Class Template Reference

SerialPlatform specialization for the default Node type. More...

#include <Tpetra_SerialPlatform.hpp>

Inherits Describable.

Public Types

Typedefs
typedef Tpetra::Details::DefaultTypes::node_type NodeType
 Kokkos Node type; the template parameter of this class. More...
 

Public Member Functions

Constructors and destructor
 SerialPlatform ()
 Default constructor: uses Kokkos default node. More...
 
 SerialPlatform (int *argc, char ***argv)
 Constructor that accepts the same arguments as Tpetra::initialize(). More...
 
 SerialPlatform (const Teuchos::RCP< NodeType > &node)
 Constructor that accepts a Kokkos Node. More...
 
 SerialPlatform (int *argc, char ***argv, const Teuchos::RCP< NodeType > &node)
 Constructor that accepts the same arguments as Tpetra::initialize(), plus a Kokkos Node. More...
 
virtual ~SerialPlatform ()
 Destructor (virtual for memory safety of derived classes). More...
 
Methods to access the communicator and Kokkos Node.
Teuchos::RCP< const Teuchos::Comm< int > > getComm () const
 The Teuchos::Comm instance with which this object was created. More...
 
Teuchos::RCP< Tpetra::Details::DefaultTypes::node_typegetNode () const
 The Kokkos Node instance with which this object was created. More...
 

Protected Attributes

Teuchos::RCP< const Teuchos::Comm< int > > comm_
 Teuchos::Comm object instantiated for the platform. More...
 
Teuchos::RCP< NodeTypenode_
 Node object instantiated for the platform. More...
 

Detailed Description

template<>
class Tpetra::SerialPlatform< Tpetra::Details::DefaultTypes::node_type >

SerialPlatform specialization for the default Node type.

Note
Tpetra::Details::DefaultTypes::node_type is a typedef, and may have a different type, depending on Trilinos' build options.
In the past (up to and including the 10.8 Trilinos release), the specialization of SerialPlatform for the default Node type delayed instantiation of the default Node instance until getNode() was called. We have changed this behavior to simplify the code and make the specialization of SerialPlatform conform more closely to the generic version of SerialPlatform.

Definition at line 216 of file Tpetra_SerialPlatform.hpp.

Member Typedef Documentation

Kokkos Node type; the template parameter of this class.

Definition at line 223 of file Tpetra_SerialPlatform.hpp.

Constructor & Destructor Documentation

Default constructor: uses Kokkos default node.

The specialization of SerialPlatform for the default Node type includes a default constructor. At some point before the first call to getNode() returns, this class will create a Node with default parameters.

Definition at line 235 of file Tpetra_SerialPlatform.hpp.

Tpetra::SerialPlatform< Tpetra::Details::DefaultTypes::node_type >::SerialPlatform ( int *  argc,
char ***  argv 
)
inlineexplicit

Constructor that accepts the same arguments as Tpetra::initialize().

Parameters
argc[in/out] First argument of Tpetra::initialize().
argv[in/out] Second argument of Tpetra::initialize().

Definition at line 252 of file Tpetra_SerialPlatform.hpp.

Tpetra::SerialPlatform< Tpetra::Details::DefaultTypes::node_type >::SerialPlatform ( const Teuchos::RCP< NodeType > &  node)
inlineexplicit

Constructor that accepts a Kokkos Node.

This version of the constructor is declared "explicit" to forbid silent type conversions from the Node instance to a SerialPlatform. (A single-argument constructor that is not declared "explicit" defines a type conversion method from the input type to the constructor's class's type.) The "explicit" declaration does not affect typical use of this constructor.

Parameters
node[in/out] The Kokkos Node instance. If null, this class will create a Node with default parameters, at some time no later than during the first call to getNode().

Definition at line 273 of file Tpetra_SerialPlatform.hpp.

Tpetra::SerialPlatform< Tpetra::Details::DefaultTypes::node_type >::SerialPlatform ( int *  argc,
char ***  argv,
const Teuchos::RCP< NodeType > &  node 
)
inlineexplicit

Constructor that accepts the same arguments as Tpetra::initialize(), plus a Kokkos Node.

Parameters
argc[in/out] First argument of Tpetra::initialize().
argv[in/out] Second argument of Tpetra::initialize().
node[in/out] The Kokkos Node instance. If null, this class will create a Node with default parameters, at some time no later than during the first call to getNode().

Definition at line 288 of file Tpetra_SerialPlatform.hpp.

Destructor (virtual for memory safety of derived classes).

Definition at line 299 of file Tpetra_SerialPlatform.hpp.

Member Function Documentation

Teuchos::RCP<const Teuchos::Comm<int> > Tpetra::SerialPlatform< Tpetra::Details::DefaultTypes::node_type >::getComm ( ) const
inline

The Teuchos::Comm instance with which this object was created.

Definition at line 306 of file Tpetra_SerialPlatform.hpp.

The Kokkos Node instance with which this object was created.

Definition at line 311 of file Tpetra_SerialPlatform.hpp.

Member Data Documentation

Teuchos::RCP<const Teuchos::Comm<int> > Tpetra::SerialPlatform< Tpetra::Details::DefaultTypes::node_type >::comm_
protected

Teuchos::Comm object instantiated for the platform.

Definition at line 347 of file Tpetra_SerialPlatform.hpp.

Node object instantiated for the platform.

Definition at line 350 of file Tpetra_SerialPlatform.hpp.


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