_CMPIBrokerMemFT Struct Reference

#include <cmpift.h>

List of all members.

Public Attributes

int ftVersion
CMPIGcStat *(* mark )(const CMPIBroker *mb, CMPIStatus *rc)
CMPIStatus(* release )(const CMPIBroker *mb, const CMPIGcStat *gc)
void *(* cmpiMalloc )(const CMPIBroker *mb, size_t size)
void *(* cmpiCalloc )(const CMPIBroker *mb, size_t, size_t)
void *(* cmpiRealloc )(const CMPIBroker *mb, void *, size_t)
char *(* cmpiStrDup )(const CMPIBroker *mb, const char *)
void(* cmpiFree )(const CMPIBroker *mb, void *)
void(* freeInstance )(const CMPIBroker *mb, CMPIInstance *inst)
void(* freeObjectPath )(const CMPIBroker *mb, CMPIObjectPath *obj)
void(* freeArgs )(const CMPIBroker *mb, CMPIArgs *args)
void(* freeString )(const CMPIBroker *mb, CMPIString *str)
void(* freeArray )(const CMPIBroker *mb, CMPIArray *array)
void(* freeDateTime )(const CMPIBroker *mb, CMPIDateTime *date)
void(* freeSelectExp )(const CMPIBroker *mb, CMPISelectExp *se)

Detailed Description

This structure is a table of pointers to memory specific CIMOM services. This table is made available by the Management Broker, whenever a provider is loaded and initialized. This is an extension used by CIMOMs to support memory management enhancements.


Member Data Documentation

void*(* _CMPIBrokerMemFT::cmpiCalloc)(const CMPIBroker *mb, size_t, size_t)

This function shall return a pointer to the allocated memory, the memory will be initialized to zero.

Parameters:
mbThe broker.
nElemsThe number of elements to allocate.
sizeElemThe number of elements to allocate.
Returns:
Returns a pointer to the allocated memory, or NULL if the memory could not be allocated.
void(* _CMPIBrokerMemFT::cmpiFree)(const CMPIBroker *mb, void *)

This function frees memory allocated via the cmpiMalloc, cmpiCalloc or cmpiRealloc functions.

Parameters:
mbThe broker.
ptrThe memory to free. This memory MUST have been allocated via the cmpiMalloc, cmpiCalloc or cmpiRealloc functions.
Returns:
None
void*(* _CMPIBrokerMemFT::cmpiMalloc)(const CMPIBroker *mb, size_t size)

Allocates uninitalized memory of the specified size.

Parameters:
mbSpecifies the broker.
sizeSpecifies the amount of memory to allocate.
Returns:
Returns a pointer to the allocated memory, or NULL if the memory could not be allocated
void*(* _CMPIBrokerMemFT::cmpiRealloc)(const CMPIBroker *mb, void *, size_t)

This function changes the size of the memory block pointed to by ptr which must have been returned by a previous call to cmpiMalloc or cmpiCalloc. See the ANSI-C function realloc for more information

Parameters:
mbthe broker.
ptrPointer to previosuly allocated memory. Passing a pointer to this function which was not allocated explicitly by cmpiMalloc or cmpiCalloc is undefined.
sizeThe new size of the memory block.
Returns:
Returns a pointer to the newly allocated memory block, or NULL if the new memory is not allcoated. If the function fals nothing is done with the original ptr argument.
char*(* _CMPIBrokerMemFT::cmpiStrDup)(const CMPIBroker *mb, const char *)

This function returns a pointer to a new string which is a duplicate of the string src.

Parameters:
mbThe broker
srcThe string to duplicate
Returns:
a pointer to the duplicated string, or NULL if insufficient memory was available.
void(* _CMPIBrokerMemFT::freeArgs)(const CMPIBroker *mb, CMPIArgs *args)

Allows a MI to free memory associated to a CMPIArgs which was allocated via CMPIBrokerEncFT.newArgs. this function should be called when an instance is no longer being used by the MI. This function will free all contained objects.

Parameters:
mbthe broker.
argsThe argument to free.
Returns:
None.
void(* _CMPIBrokerMemFT::freeArray)(const CMPIBroker *mb, CMPIArray *array)

Allows a MI to free memory associated to a CMPIArray which was allocated via CMPIBrokerEncFT.newArray. this function should be called when an instance is no longer being used by the MI. This function will free all contained objects (e.g. the array elements).

Parameters:
mbthe broker.
argsThe string to free.
Returns:
None.

Allows a MI to free memory associated to a CMPIDateTime which was allocated via CMPIBrokerEncFT.newDateTime functions. this function should be called when an instance is no longer being used by the MI. This function will free all contained objects.

Parameters:
mbthe broker.
argsThe string to free.
Returns:
None.

Allows a MI to free memory associated to a CMPIinstance which was allocated via CMPIBrokerEncFT.newInstance. this function should be called when an instance is no longer being used by the MI. This function will free all contained objects (e.g. properties).

Parameters:
mbthe broker.
instThe instance to free.
Returns:
None.

Allows a MI to free memory associated to a CMPIArgs which was allocated via CMPIBrokerEncFT.newArgs. this function should be called when an instance is no longer being used by the MI. This function will free all contained objects.

Parameters:
mbthe broker.
objThe object path to free.
Returns:
None

Allows a MI to free memory associated to a CMPISelectExp which was allocated via CMPIBrokerEncFT.newSelectExp functions. this function should be called when an instance is no longer being used by the MI. This function will free all contained objects.

Parameters:
mbthe broker.
argsThe string to free.
Returns:
None.

Allows a MI to free memory associated to a CMPIString which was allocated via CMPIBrokerEncFT.newString. this function should be called when an instance is no longer being used by the MI. This function will free all contained objects.

Parameters:
mbthe broker.
argsThe string to free.
Returns:
None.

Function table version.

CMPIGcStat*(* _CMPIBrokerMemFT::mark)(const CMPIBroker *mb, CMPIStatus *rc)

Returns a marker. Invoking this function marks subsequent newly created CMPI objects to be released when release() function is invoked. Note: mark() functions can be stacked.

Parameters:
mbThe broker.
rcOutput: Service return status (suppressed when NULL).
Returns:
Handle to be provided to releae() function.
CMPIStatus(* _CMPIBrokerMemFT::release)(const CMPIBroker *mb, const CMPIGcStat *gc)

Release all CMPI objects created since last mark() operation represented by the parameter. release() functions can be stacked.

Parameters:
mbThe broker.
gcThe handle returned from the mark() operation.
Returns:
Service return status.

The documentation for this struct was generated from the following file:
  • /srv/build/STABLE_8/pkgs/tog-pegasus/BUILD/pegasus/src/Pegasus/Provider/CMPI/cmpift.h