8.0 Grid libraryThe CLegionLib.h file contains the declarations for the C Library interface to the Legion system. This library is specifically designed to allow ease of use in many languages (including Fortran, C, C++). For additional functionality, the CError.h header file contains all necessary declarations to doing some small amount of error handling.
Note that anytime this header file talks about freeing memory, it is referring to using the C-language's free() function to return memory to the heap, NOT the C++ language's delete operators. /* LOID Parameters */ #define LOID_PARAM 0 /* These defines give the */ #define CONTEXT_PARAM 1 /* two valid values for */ /* LegionIdType variables */ /* parameters. */ typedef int LegionIdType; /* This type is used in */ /* function calls to indicate */ /* whether or note the */ /* parameter is a LOID. The */ /* valid values are LOID_PARAM */ /* and CONTEXT_PARAM. */ typedef int CLegionBinding; /* These typedefs are used to */ typedef int CLegionHostReservation; /* represent all of the */ typedef int CLegionHostReservationRecord; /* necessary C++ classes that */ typedef int CLegionVaultReservation; /* would normally be used in */ typedef int CLegionVaultReservationRecord; /* their place. In all cases */ typedef int CLegionReservation; /* these are actually pointers */ typedef int CLegionHostObjectStatus; /* to LRefs to the actual */ typedef int CLegionOPRAddress; /* class type. This double */ typedef int CUVaL_InstanceRecord; /* level of pointer */ typedef int CInstancePlacementInfo; /* indirection was done to */ typedef int CLegionCollection Data; /* allow for some small measure */ /* of reference counting. */ The following section contains all of the valid Legion architectures.
All programs that use the CLegionLib library contain some small amount of state which determines how the CLegionLib library interacts with certain Legion functions. The following section gives the declarations for the functions that allow the user to interface with this state. void SetTimeOutValue (int Seconds); /* These functions set and clear */ void ClearTimeOutValue (); /* the default timeout value for */ /* most Legion method invocations. */ void SetForceActivation (); /* In some small number of calls, */ void ClearForceActivation (); /* a target Legion object may not */ /* not yet be active. The force */ /* activation flag indicates */ /* whether the call should */ /* activate the object or fail. */ All programs that use the CLegionLib library contain some small amount of state which determines how the CLegionLib library interacts with certain Legion functions. The following section gives the declarations for the functions that allow the user to interface with this state. 8.1 Legion Library interface8.2 Exceptions8.3 Legion context space8.4 Legion object management8.5 Legion attributes8.6 Interfaces to Legion objects8.7 Legion C++ type manipulation8.8 Legion host object8.9 Vault object8.10 Class object8.11 Legion implicit parameters8.12 Collections
legion@Virginia.edu
|