| .. Copyright (C) 2004-2008 The Trustees of Indiana University. |
| Use, modification and distribution is subject to the Boost Software |
| License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at |
| http://www.boost.org/LICENSE_1_0.txt) |
| |
| ================================ |
| |Logo| Concept Global Descriptor |
| ================================ |
| |
| .. contents:: |
| |
| Description |
| ----------- |
| |
| A global descriptor is an object that represents an entity that is |
| owned by some process and may reside in an address space not |
| accessible to the currently-executing process. The global descriptor |
| consists of two parts: the *owner* of the entity, which is the |
| identifier of that process in which the entity resides, and a *local |
| descriptor*, that uniquely identifies the entity with the address |
| space of the owner. |
| |
| Refinement of |
| ------------- |
| |
| - `Default Constructible`_ |
| - Assignable_ |
| |
| Notation |
| -------- |
| X |
| A type that models the Global Descriptor concept. |
| |
| x |
| Object of type X |
| |
| |
| Associated types |
| ---------------- |
| |
| +----------------+--------------------+---------------------------------+ |
| |Process ID type |``process_id_type`` |Determined by the process group | |
| | | |associated with type X. | |
| +----------------+--------------------+---------------------------------+ |
| |Local descriptor|``local_type`` |Determined by the data structure | |
| |type | |the descriptor accesses. | |
| | | |Must model `Equality Comparable`_| |
| | | |and `Copy Constructible`_. | |
| +----------------+--------------------+---------------------------------+ |
| |
| Valid Expressions |
| ----------------- |
| |
| +----------------+---------------------+---------------------+-------------------------------------+ |
| |Name |Expression |Type |Semantics | |
| +================+=====================+=====================+=====================================+ |
| |Owner |``owner(x)`` |``process_id_type`` |Returns the owner of ``x``. | |
| +----------------+---------------------+---------------------+-------------------------------------+ |
| |Local descriptor|``local(x)`` |``local_type`` |Returns the local descriptor | |
| | | | |uniquely identifying ``x``. | |
| +----------------+---------------------+---------------------+-------------------------------------+ |
| |
| |
| ----------------------------------------------------------------------------- |
| |
| Copyright (C) 2005 The Trustees of Indiana University. |
| |
| Authors: Douglas Gregor and Andrew Lumsdaine |
| |
| .. |Logo| image:: pbgl-logo.png |
| :align: middle |
| :alt: Parallel BGL |
| :target: http://www.osl.iu.edu/research/pbgl |
| |
| .. _Assignable: http://www.sgi.com/tech/stl/Assignable.html |
| .. _Copy constructible: http://www.sgi.com/tech/stl/CopyConstructible.html |
| .. _Default constructible: http://www.sgi.com/tech/stl/DefaultConstructible.html |
| .. _Equality comparable: http://www.sgi.com/tech/stl/EqualityComparable.html |