CMPI 2.1.0 API
|
Variables | |
CMPIGcStat *(* | CMPIBrokerMemFT::mark )(const CMPIBroker *mb, CMPIStatus *rc) |
Mark a new object lifecycle level for subsequent newly created CMPI encapsulated data type objects. More... | |
CMPIStatus(* | CMPIBrokerMemFT::release )(const CMPIBroker *mb, const CMPIGcStat *gc) |
Release all CMPI encapsulated data type objects created at the specified object lifecycle level, and remove that level. More... | |
void *(* | CMPIBrokerMemFT::cmpiMalloc )(const CMPIBroker *mb, size_t size) |
Allocate an uninitalized memory block of the specified size. More... | |
void *(* | CMPIBrokerMemFT::cmpiCalloc )(const CMPIBroker *mb, size_t nElems, size_t sizeElem) |
Allocate a memory block of the specified size and initialize it to zero. More... | |
void *(* | CMPIBrokerMemFT::cmpiRealloc )(const CMPIBroker *mb, void *ptr, size_t size) |
Change the size of a memory block. More... | |
char *(* | CMPIBrokerMemFT::cmpiStrDup )(const CMPIBroker *mb, const char *str) |
Allocate a memory block and initialize it with a string. More... | |
void(* | CMPIBrokerMemFT::cmpiFree )(const CMPIBroker *mb, void *ptr) |
Release a memory block. More... | |
void(* | CMPIBrokerMemFT::freeInstance )(const CMPIBroker *mb, CMPIInstance *inst) |
Release a CMPIInstance object. More... | |
void(* | CMPIBrokerMemFT::freeObjectPath )(const CMPIBroker *mb, CMPIObjectPath *obj) |
Release a CMPIObjectPath object. More... | |
void(* | CMPIBrokerMemFT::freeArgs )(const CMPIBroker *mb, CMPIArgs *args) |
Release a CMPIArgs object. More... | |
void(* | CMPIBrokerMemFT::freeString )(const CMPIBroker *mb, CMPIString *str) |
Release a CMPIString object. More... | |
void(* | CMPIBrokerMemFT::freeArray )(const CMPIBroker *mb, CMPIArray *array) |
Release a CMPIArray object. More... | |
void(* | CMPIBrokerMemFT::freeDateTime )(const CMPIBroker *mb, CMPIDateTime *dt) |
Release a CMPIDateTime object. More... | |
void(* | CMPIBrokerMemFT::freeSelectExp )(const CMPIBroker *mb, CMPISelectExp *se) |
Release a CMPISelectExp object. More... | |
void(* | CMPIBrokerMemFT::freeChars )(const CMPIBroker *mb, char *chars) |
Free the memory of a C-language string. More... | |
CMPIGcStat*(* CMPIBrokerMemFT::mark)(const CMPIBroker *mb, CMPIStatus *rc) |
Mark a new object lifecycle level for subsequent newly created CMPI encapsulated data type objects.
CMPIBrokerMemFT.mark() marks a new object lifecycle level for the calling MI. Subsequent newly created CMPI encapsulated data type objects in that MI will be associated with that new object lifecycle level. A subsequent invocation of CMPIBrokerMemFT.release() with the returned CMPIGcStat pointer will release only the objects associated with that object lifecycle level.
The mark() and release() function calls may be stacked.
Stacked object lifecycle levels shall not overlap other than inner levels being completely contained in outer levels.
mb | Points to a CMPIBroker structure. | |
[out] | rc | If not NULL, points to a CMPIStatus structure that upon return will have been updated with the function return status. |
If successful, a pointer to a CMPIGcStat structure will be returned, for use with CMPIBrokerMemFT.release().
If not successful, NULL will be returned.
CMPI_RC_OK
- Function successful. CMPI_RC_ERR_INVALID_HANDLE
- The mb
handle is invalid CMPI_RC_ERR_FAILED
- Other error occurred.CMPIStatus(* CMPIBrokerMemFT::release)(const CMPIBroker *mb, const CMPIGcStat *gc) |
Release all CMPI encapsulated data type objects created at the specified object lifecycle level, and remove that level.
CMPIBrokerMemFT.release() releases all CMPI encapsulated data type objects created other than with clone()
at the specified object lifecycle level, and removes that object lifecycle level. This indicates to the MB that these objects (including any objects they contain) will no longer be used by the MI. The MB may free (=reclaim) the memory associated with these objects during the call to this function, or later during some garbage collection cycle (see Subclause 4.1.7 of the CMPI Standard).
The mark() and release() function calls may be stacked. See CMPIBrokerMemFT.mark() for details.
mb | Points to a CMPIBroker structure. |
gc | Points to the CMPIGcStat structure returned from the CMPIBrokerMemFT.mark() function, that identifies the object lifecycle level. |
CMPI_RC_OK
- Function successful. CMPI_RC_ERR_INVALID_HANDLE
- The mb
handle is invalid CMPI_RC_ERR_FAILED
- Other error occurred.void*(* CMPIBrokerMemFT::cmpiMalloc)(const CMPIBroker *mb, size_t size) |
Allocate an uninitalized memory block of the specified size.
CMPIBrokerMemFT.cmpiMalloc() allocates an uninitalized memory block of the specified size. This function behaves consistently with the POSIX malloc()
function (see IEEE 1003.1).
The allocated memory block can be explicitly released by the MI using CMPIBrokerMemFT.cmpiFree(), or will be automatically released by the MB after cleanup of the MI (see Subclause 4.1.7 of the CMPI Standard).
mb | Points to a CMPIBroker structure. |
size | Amount of memory to allocate, in Bytes. |
If successful, a pointer to the allocated memory block will be returned.
If not successful, NULL will be returned.
void*(* CMPIBrokerMemFT::cmpiCalloc)(const CMPIBroker *mb, size_t nElems, size_t sizeElem) |
Allocate a memory block of the specified size and initialize it to zero.
CMPIBrokerMemFT.cmpiCalloc() allocates a memory block of the specified size and initializes it to zero. This function behaves consistently with the POSIX calloc()
function (see IEEE 1003.1). The allocated memory block can be explicitly released by the MI using CMPIBrokerMemFT.cmpiFree(), or will be automatically released by the MB after cleanup of the MI (see Subclause 4.1.7 of the CMPI Standard).
mb | Points to a CMPIBroker structure. |
nElems | Number of elements to allocate. |
sizeElem | Size of each element to allocate, in Bytes. |
If successful, a pointer to the allocated and initialized memory block will be returned.
If not successful, NULL will be returned.
void*(* CMPIBrokerMemFT::cmpiRealloc)(const CMPIBroker *mb, void *ptr, size_t size) |
Change the size of a memory block.
CMPIBrokerMemFT.cmpiRealloc() changes the size of the memory block pointed to by ptr
which shall have been returned by a previous call to CMPIBrokerMemFT.cmpiMalloc() or CMPIBrokerMemFT.cmpiCalloc(). This function behaves consistently with the POSIX realloc()
function (see IEEE 1003.1). The allocated memory block can be explicitly released by the MI using CMPIBrokerMemFT.cmpiFree(), or will be automatically released by the MB after cleanup of the MI (see Subclause 4.1.7 of the CMPI Standard).
The function may move the memory block to a new location (whose address is returned by the function). The content of the memory block is preserved up to the lesser of the new and old sizes, even if the block is moved to a new location. If the new size is larger, the value of the newly allocated portion is indeterminate.
mb | Points to a CMPIBroker structure. |
ptr | If not NULL, points to previosuly allocated memory. Passing a non-NULL pointer to this function which was not allocated explicitly by cmpiMalloc() or cmpiCalloc() is undefined. If ptr is NULL, the function behaves like cmpiMalloc(), assigning a new memory block of size Bytes and returning a pointer to its beginning. |
size | New size of the memory block, in Bytes. The new size may be larger or smaller than (or equal to) the current size. |
If successful, a pointer to the resized memory block will be returned.
If not successful, NULL will be returned returned and the original memory block pointed to by ptr
is not deallocated and is unchanged.
char*(* CMPIBrokerMemFT::cmpiStrDup)(const CMPIBroker *mb, const char *str) |
Allocate a memory block and initialize it with a string.
CMPIBrokerMemFT.cmpiStrDup() allocates a memory block and initializes it by copying a C-language string into it. This function behaves consistently with the POSIX strdup()
function (see IEEE 1003.1). The allocated memory block can be explicitly released by the MI using CMPIBrokerMemFT.cmpiFree(), or will be automatically released by the MB after cleanup of the MI (see Subclause 4.1.7 of the CMPI Standard).
mb | Points to a CMPIBroker structure. |
str | C-language string to be duplicated. |
If successful, a pointer to the new memory block (that is, to the new C-language string) will be returned.
If not successful, NULL will be returned returned.
void(* CMPIBrokerMemFT::cmpiFree)(const CMPIBroker *mb, void *ptr) |
Release a memory block.
CMPIBrokerMemFT.cmpiFree() releases a memory block. This function behaves consistently with the POSIX free()
function (see IEEE 1003.1). This indicates to the MB that the memory block will no longer be used by the MI. The MB may free (=reclaim) the memory block during the call to this function, or later during some garbage collection cycle (see Subclause 4.1.7 of the CMPI Standard). Memory blocks that have not been explicitly released that way, will be automatically released after cleanup of the MI.
mb | Points to a CMPIBroker structure. |
ptr | Points to the memory block to free. The memory block shall have been allocated via the cmpiMalloc(), cmpiCalloc(), cmpiRealloc(), or cmpiStrDup() functions. |
void(* CMPIBrokerMemFT::freeInstance)(const CMPIBroker *mb, CMPIInstance *inst) |
Release a CMPIInstance object.
CMPIBrokerMemFT.freeInstance() releases a CMPIInstance object. This indicates to the MB that the object (including any objects it contains) will no longer be used by the MI. The MB may free (=reclaim) the memory associated with the object during the call to this function, or later during some garbage collection cycle (see Subclause 4.1.7 of the CMPI Standard).
mb | Points to a CMPIBroker structure. |
inst | Points to the CMPIInstance object that is to be released. That object shall have been created using CMPIBrokerEncFT.newInstance(). |
void(* CMPIBrokerMemFT::freeObjectPath)(const CMPIBroker *mb, CMPIObjectPath *obj) |
Release a CMPIObjectPath object.
CMPIBrokerMemFT.freeObjectPath() releases a CMPIObjectPath object. This indicates to the MB that the object (including any objects it contains) will no longer be used by the MI. The MB may free (=reclaim) the memory associated with the object during the call to this function, or later during some garbage collection cycle (see Subclause 4.1.7 of the CMPI Standard).
mb | Points to a CMPIBroker structure. |
obj | Points to the CMPIObjectPath object that is to be released. That object shall have been created using CMPIBrokerEncFT.newObjectPath(). |
void(* CMPIBrokerMemFT::freeArgs)(const CMPIBroker *mb, CMPIArgs *args) |
Release a CMPIArgs object.
CMPIBrokerMemFT.freeArgs() releases a CMPIArgs object. This indicates to the MB that the object (including any objects it contains) will no longer be used by the MI. The MB may free (=reclaim) the memory associated with the object during the call to this function, or later during some garbage collection cycle (see Subclause 4.1.7 of the CMPI Standard).
mb | Points to a CMPIBroker structure. |
args | Points to the CMPIArgs object that is to be released. That object shall have been created using CMPIBrokerEncFT.newArgs(). |
void(* CMPIBrokerMemFT::freeString)(const CMPIBroker *mb, CMPIString *str) |
Release a CMPIString object.
CMPIBrokerMemFT.freeString() releases a CMPIString object. This indicates to the MB that the object (including any objects it contains) will no longer be used by the MI. The MB may free (=reclaim) the memory associated with the object during the call to this function, or later during some garbage collection cycle (see Subclause 4.1.7 of the CMPI Standard).
mb | Points to a CMPIBroker structure. |
str | Points to the CMPIString object that is to be released. That object shall have been created using CMPIBrokerEncFT.newString() or CMPIBrokerEncFT.newStringCP(). |
void(* CMPIBrokerMemFT::freeArray)(const CMPIBroker *mb, CMPIArray *array) |
Release a CMPIArray object.
CMPIBrokerMemFT.freeArray() releases a CMPIArray object. This indicates to the MB that the object (including any objects it contains) will no longer be used by the MI. The MB may free (=reclaim) the memory associated with the object during the call to this function, or later during some garbage collection cycle (see Subclause 4.1.7 of the CMPI Standard).
mb | Points to a CMPIBroker structure. |
array | Points to the CMPIArray object that is to be released. That object shall have been created using CMPIBrokerEncFT.newArray(). |
void(* CMPIBrokerMemFT::freeDateTime)(const CMPIBroker *mb, CMPIDateTime *dt) |
Release a CMPIDateTime object.
CMPIBrokerMemFT.freeDateTime() releases a CMPIDateTime object. This indicates to the MB that the object (including any objects it contains) will no longer be used by the MI. The MB may free (=reclaim) the memory associated with the object during the call to this function, or later during some garbage collection cycle (see Subclause 4.1.7 of the CMPI Standard).
mb | Points to a CMPIBroker structure. |
dt | Points to the CMPIDateTime object that is to be released. That object shall have been created using CMPIBrokerEncFT.newDateTime(), CMPIBrokerEncFT.newDateTimeFromBinary(), or CMPIBrokerEncFT.newDateTimeFromChars(). |
void(* CMPIBrokerMemFT::freeSelectExp)(const CMPIBroker *mb, CMPISelectExp *se) |
Release a CMPISelectExp object.
CMPIBrokerMemFT.freeSelectExp() releases a CMPISelectExp object. This indicates to the MB that the object (including any objects it contains) will no longer be used by the MI. The MB may free (=reclaim) the memory associated with the object during the call to this function, or later during some garbage collection cycle (see Subclause 4.1.7 of the CMPI Standard).
mb | Points to a CMPIBroker structure. |
se | Points to the CMPISelectExp object that is to be released. That object shall have been created using CMPIBrokerEncFT.newSelectExp(). |
void(* CMPIBrokerMemFT::freeChars)(const CMPIBroker *mb, char *chars) |
Free the memory of a C-language string.
CMPIBrokerMemFT.freeChars() releases a C-language string. This indicates to the MB that the string will no longer be used by the MI. The MB may free (=reclaim) the memory associated with the string during the call to this function, or later during some garbage collection cycle (see Subclause 4.1.7 of the CMPI Standard).
mb | Points to a CMPIBroker structure. |
chars | Points to the C-language string to be released. This C-language string shall have been created using CMPIStringFT.newCharsCP(). |