Man Linux: Main Page and Category List

NAME

       sc::MemoryGrpBuf -

       The MemoryGrpBuf class provides access to pieces of the global shared
       memory that have been obtained with MemoryGrp.

SYNOPSIS

       #include <memory.h>

   Public Member Functions
       MemoryGrpBuf (const Ref< MemoryGrp > &)
           Creates a new MemoryGrpBuf given a MemoryGrp reference.
       data_t * writeonly (distsize_t offset, int length)
           Request write only access to global memory at the global address
           offset and with size length.
       data_t * readwrite (distsize_t offset, int length)
           Request read write access to global memory at the global address
           offset and with size length.
       const data_t * readonly (distsize_t offset, int length)
           Request read only access to global memory at the global address
           offset and with size length.
       data_t * writeonly_on_node (size_t offset, int length, int node=-1)
           These behave like writeonly, readwrite, and readonly, except the
           offset is local to the node specified by node.
       data_t * readwrite_on_node (size_t offset, int length, int node=-1)
       const data_t * readonly_on_node (size_t offset, int length, int
           node=-1)
       void release ()
           Release the access to the chunk of global memory that was obtained
           with writeonly, readwrite, readonly, writeonly_on_node,
           readwrite_on_node, and readonly_on_node.
       int length () const
           The length of the current bit of memory.

Detailed Description

   template<class data_t> class sc::MemoryGrpBuf< data_t >
       The MemoryGrpBuf class provides access to pieces of the global shared
       memory that have been obtained with MemoryGrp.

       MemoryGrpBuf is a template class that is parameterized on data_t. All
       lengths and offsets of given in terms of sizeof(data_t).

Constructor & Destructor Documentation

   template<class data_t > sc::MemoryGrpBuf< data_t >::MemoryGrpBuf (const
       Ref< MemoryGrp > & grp) [inline]
       Creates a new MemoryGrpBuf given a MemoryGrp reference. This is a
       template class parameterized on data_t.

Member Function Documentation

   template<class data_t > const data_t * sc::MemoryGrpBuf< data_t >::readonly
       (distsize_t offset, int length) [inline]
       Request read only access to global memory at the global address offset
       and with size length. Writing to the specified region without an
       intervening sync of the MemoryGrp will have undefined results.

       References sc::MemoryGrpBuf< data_t >::release().

   template<class data_t > data_t * sc::MemoryGrpBuf< data_t >::readwrite
       (distsize_t offset, int length) [inline]
       Request read write access to global memory at the global address offset
       and with size length. This will lock the memory it uses until release
       is called unless locking has been turned off in the MemoryGrp object.

       References sc::MemoryGrpBuf< data_t >::release().

   template<class data_t > void sc::MemoryGrpBuf< data_t >::release ()
       [inline]
       Release the access to the chunk of global memory that was obtained with
       writeonly, readwrite, readonly, writeonly_on_node, readwrite_on_node,
       and readonly_on_node.

       Referenced by sc::MemoryGrpBuf< data_t >::readonly(), sc::MemoryGrpBuf<
       data_t >::readwrite(), and sc::MemoryGrpBuf< data_t >::writeonly().

   template<class data_t > data_t * sc::MemoryGrpBuf< data_t >::writeonly
       (distsize_t offset, int length) [inline]
       Request write only access to global memory at the global address offset
       and with size length. Writing the same bit of memory twice without an
       intervening sync of the MemoryGrp will have undefined results.

       References sc::MemoryGrpBuf< data_t >::release().

       Referenced by sc::MemoryGrpBuf< data_t >::writeonly_on_node().

   template<class data_t > data_t * sc::MemoryGrpBuf< data_t
       >::writeonly_on_node (size_t offset, int length, int node = -1)
       [inline]
       These behave like writeonly, readwrite, and readonly, except the offset
       is local to the node specified by node. If node = -1, then the local
       node is used.

       References sc::MemoryGrpBuf< data_t >::writeonly().

Author

       Generated automatically by Doxygen for MPQC from the source code.