cmpi
Public Attributes | List of all members
_CMPIBrokerMemFT Struct Reference

#include <cmpi/cmpift.h>

Public Attributes

const 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

◆ cmpiCalloc

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

◆ cmpiFree

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

◆ cmpiMalloc

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

◆ cmpiRealloc

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.

◆ cmpiStrDup

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.

◆ freeArgs

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.

◆ freeArray

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.

◆ freeDateTime

void(* _CMPIBrokerMemFT::freeDateTime) (const CMPIBroker *mb, CMPIDateTime *date)

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.

◆ freeInstance

void(* _CMPIBrokerMemFT::freeInstance) (const CMPIBroker *mb, CMPIInstance *inst)

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. inst The instance to free.
Returns
None

◆ freeObjectPath

void(* _CMPIBrokerMemFT::freeObjectPath) (const CMPIBroker *mb, CMPIObjectPath *obj)

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

◆ freeSelectExp

void(* _CMPIBrokerMemFT::freeSelectExp) (const CMPIBroker *mb, CMPISelectExp *se)

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.

◆ freeString

void(* _CMPIBrokerMemFT::freeString) (const CMPIBroker *mb, CMPIString *str)

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.

◆ ftVersion

const int _CMPIBrokerMemFT::ftVersion

◆ mark

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.  

◆ release

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: