Teuchos::RawWorkspace Class Reference
[Set of utilities for allocating temporary workspace.]

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...

#include <Teuchos_Workspace.hpp>

Collaboration diagram for Teuchos::RawWorkspace:

[legend]
List of all members.

Public Member Functions

 RawWorkspace (WorkspaceStore *workspace_store, size_t num_bytes)
 Allocate num_bytes bytes of temporary workspace. When this object is created if workspace_store != NULL the workspace_store object will be used to get the raw memory. If workspace_store == NULL || workspace_store->num_bytes_remaining() < num_bytes then this memory will have to be dynamically allocated.
 ~RawWorkspace ()
 Deallocate workspace.
size_t num_bytes () const
 Return the number of bytes of raw workspace.
char * workspace_ptr ()
 Give a raw pointer to the beginning of the workspace.
const char * workspace_ptr () const
 

Friends

class WorkspaceStore
 

Detailed Description

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.

Definition at line 87 of file Teuchos_Workspace.hpp.


Constructor & Destructor Documentation

Teuchos::RawWorkspace::RawWorkspace WorkspaceStore workspace_store,
size_t  num_bytes
 

Allocate num_bytes bytes of temporary workspace. When this object is created if workspace_store != NULL the workspace_store object will be used to get the raw memory. If workspace_store == NULL || workspace_store->num_bytes_remaining() < num_bytes then this memory will have to be dynamically allocated.

Preconditons:

  • num_bytes >= 0 (throw std::invalid_arguemnt)

Postconditons:

Parameters:
workspace_store [in] Pointer to the workspace object to get the memory from. This can be NULL in which case new T[] and delete [] will be used instead.
num_bytes [in] The number of bytes to allocate.

Definition at line 109 of file Teuchos_Workspace.cpp.

Teuchos::RawWorkspace::~RawWorkspace  ) 
 

Deallocate workspace.

Definition at line 141 of file Teuchos_Workspace.cpp.


Member Function Documentation

size_t Teuchos::RawWorkspace::num_bytes  )  const [inline]
 

Return the number of bytes of raw workspace.

Definition at line 445 of file Teuchos_Workspace.hpp.

char * Teuchos::RawWorkspace::workspace_ptr  )  [inline]
 

Give a raw pointer to the beginning of the workspace.

Definition at line 451 of file Teuchos_Workspace.hpp.

const char * Teuchos::RawWorkspace::workspace_ptr  )  const [inline]
 

Definition at line 457 of file Teuchos_Workspace.hpp.


Friends And Related Function Documentation

friend class WorkspaceStore [friend]
 

Definition at line 90 of file Teuchos_Workspace.hpp.


The documentation for this class was generated from the following files:
Generated on Thu Sep 18 12:39:12 2008 for Teuchos - Trilinos Tools Package by doxygen 1.3.9.1