GlobalDescriptor.rst 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. .. Copyright (C) 2004-2008 The Trustees of Indiana University.
  2. Use, modification and distribution is subject to the Boost Software
  3. License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
  4. http://www.boost.org/LICENSE_1_0.txt)
  5. ================================
  6. |Logo| Concept Global Descriptor
  7. ================================
  8. .. contents::
  9. Description
  10. -----------
  11. A global descriptor is an object that represents an entity that is
  12. owned by some process and may reside in an address space not
  13. accessible to the currently-executing process. The global descriptor
  14. consists of two parts: the *owner* of the entity, which is the
  15. identifier of that process in which the entity resides, and a *local
  16. descriptor*, that uniquely identifies the entity with the address
  17. space of the owner.
  18. Refinement of
  19. -------------
  20. - `Default Constructible`_
  21. - Assignable_
  22. Notation
  23. --------
  24. X
  25. A type that models the Global Descriptor concept.
  26. x
  27. Object of type X
  28. Associated types
  29. ----------------
  30. +----------------+--------------------+---------------------------------+
  31. |Process ID type |``process_id_type`` |Determined by the process group |
  32. | | |associated with type X. |
  33. +----------------+--------------------+---------------------------------+
  34. |Local descriptor|``local_type`` |Determined by the data structure |
  35. |type | |the descriptor accesses. |
  36. | | |Must model `Equality Comparable`_|
  37. | | |and `Copy Constructible`_. |
  38. +----------------+--------------------+---------------------------------+
  39. Valid Expressions
  40. -----------------
  41. +----------------+---------------------+---------------------+-------------------------------------+
  42. |Name |Expression |Type |Semantics |
  43. +================+=====================+=====================+=====================================+
  44. |Owner |``owner(x)`` |``process_id_type`` |Returns the owner of ``x``. |
  45. +----------------+---------------------+---------------------+-------------------------------------+
  46. |Local descriptor|``local(x)`` |``local_type`` |Returns the local descriptor |
  47. | | | |uniquely identifying ``x``. |
  48. +----------------+---------------------+---------------------+-------------------------------------+
  49. -----------------------------------------------------------------------------
  50. Copyright (C) 2005 The Trustees of Indiana University.
  51. Authors: Douglas Gregor and Andrew Lumsdaine
  52. .. |Logo| image:: pbgl-logo.png
  53. :align: middle
  54. :alt: Parallel BGL
  55. :target: http://www.osl.iu.edu/research/pbgl
  56. .. _Assignable: http://www.sgi.com/tech/stl/Assignable.html
  57. .. _Copy constructible: http://www.sgi.com/tech/stl/CopyConstructible.html
  58. .. _Default constructible: http://www.sgi.com/tech/stl/DefaultConstructible.html
  59. .. _Equality comparable: http://www.sgi.com/tech/stl/EqualityComparable.html