_CMPIBrokerExtFT Struct Reference

#include <cmpift.h>

List of all members.

Public Attributes

int ftVersion
char *(* resolveFileName )(const char *filename)
CMPI_THREAD_TYPE(* newThread )(CMPI_THREAD_RETURN(CMPI_THREAD_CDECL *start)(void *), void *parm, int detached)
int(* joinThread )(CMPI_THREAD_TYPE thread, CMPI_THREAD_RETURN *retval)
int(* exitThread )(CMPI_THREAD_RETURN return_code)
int(* cancelThread )(CMPI_THREAD_TYPE thread)
int(* threadSleep )(CMPIUint32 msec)
int(* threadOnce )(int *once, void(*init)(void))
int(* createThreadKey )(CMPI_THREAD_KEY_TYPE *key, void(*cleanup)(void *))
int(* destroyThreadKey )(CMPI_THREAD_KEY_TYPE key)
void *(* getThreadSpecific )(CMPI_THREAD_KEY_TYPE key)
int(* setThreadSpecific )(CMPI_THREAD_KEY_TYPE key, void *value)
CMPI_MUTEX_TYPE(* newMutex )(int opt)
void(* destroyMutex )(CMPI_MUTEX_TYPE mutex)
void(* lockMutex )(CMPI_MUTEX_TYPE mutex)
void(* unlockMutex )(CMPI_MUTEX_TYPE mutex)
CMPI_COND_TYPE(* newCondition )(int opt)
void(* destroyCondition )(CMPI_COND_TYPE cond)
int(* condWait )(CMPI_COND_TYPE cond, CMPI_MUTEX_TYPE mutex)
int(* timedCondWait )(CMPI_COND_TYPE cond, CMPI_MUTEX_TYPE mutex, struct timespec *wait)
int(* signalCondition )(CMPI_COND_TYPE cond)

Detailed Description

This structure is a table of pointers to extended broker CIMOM services This table is made available by the Management Broker, whenever a provider is loaded and initialized. This is an extension used by Pegasus to support platform dependencies.


Member Data Documentation

int(* _CMPIBrokerExtFT::cancelThread)(CMPI_THREAD_TYPE thread)

Cancel the thread using the POSIX threading semantics.

Parameters:
threadThe thread to be canceled.
Returns:
Completion code as defined by POSIX threading semantics (pthread_cancel)
int(* _CMPIBrokerExtFT::condWait)(CMPI_COND_TYPE cond, CMPI_MUTEX_TYPE mutex)

Wait until condition is signalled. This function returns when condition has been signalled already and otherwise must wait for the signal and then return.

Parameters:
condThe handle of the condition variable to be used.
mutexThe handle of a locked mutex guarding this condition variable.
Returns:
Return value As defined by POSIX threading specifications.
int(* _CMPIBrokerExtFT::createThreadKey)(CMPI_THREAD_KEY_TYPE *key, void(*cleanup)(void *))

Create a POSIX threading conformant thread key. This key can be used as a key to access the thread local store.

Parameters:
keyThe address for the key to be returned.
cleanupFunction to be invoked during thread local store cleanup.
Returns:
Completion code as defined by POSIX threading semantics.
void(* _CMPIBrokerExtFT::destroyCondition)(CMPI_COND_TYPE cond)

Destroy a condition variable.

Parameters:
condThe condition variable to be destroyed.
void(* _CMPIBrokerExtFT::destroyMutex)(CMPI_MUTEX_TYPE mutex)

Destroy a POSIX threading conformant mutex.

Parameters:
mutexThe mutex to be destroyed.
int(* _CMPIBrokerExtFT::destroyThreadKey)(CMPI_THREAD_KEY_TYPE key)

Destroy a POSIX threading conformant thread key.

Parameters:
keyThe key to be destroyed.
Returns:
Completion code as defined by POSIX threading semantics.
int(* _CMPIBrokerExtFT::exitThread)(CMPI_THREAD_RETURN return_code)

Causes the current thread to exit with the passed in return code using POSIX threading semantics.

Parameters:
return_codeIs the return code that should be used for the thread.
Returns:
The function never exits.

Function table version.

void*(* _CMPIBrokerExtFT::getThreadSpecific)(CMPI_THREAD_KEY_TYPE key)

Return data from the thread local store using a thread key.

Parameters:
keyThe key to be used to retrieve the data.
Returns:
Completion code as defined by POSIX threading semantics.
int(* _CMPIBrokerExtFT::joinThread)(CMPI_THREAD_TYPE thread, CMPI_THREAD_RETURN *retval)

Waits until the specified thread ends using the POSIX threading semantics.

Parameters:
threadThe thread ID of the thread waiting for completion.
retvalPointer to the return value of the thread.
Returns:
Completion code as defined by POSIX threading semantics (pthread_join)
void(* _CMPIBrokerExtFT::lockMutex)(CMPI_MUTEX_TYPE mutex)

Attempt to get control of the mutex and must wait until released when not available.

Parameters:
mutexThe mutex to be locked.
CMPI_COND_TYPE(* _CMPIBrokerExtFT::newCondition)(int opt)

Create a new POSIX threading-conformant condition variable.

Parameters:
optThe POSIX options. If not options are to be defined the 0 values must be used.
Returns:
Handle of newly created condition variable.
CMPI_MUTEX_TYPE(* _CMPIBrokerExtFT::newMutex)(int opt)

Create a POSIX threading conformant mutex.

Parameters:
optThe POSIX options. If not options are to be defined the 0 values must be used.
Returns:
Handle of newly created mutex.
CMPI_THREAD_TYPE(* _CMPIBrokerExtFT::newThread)(CMPI_THREAD_RETURN(CMPI_THREAD_CDECL *start)(void *), void *parm, int detached)

Start a new thread using the POSIX threading semantics.

Parameters:
startPointer to the function to be started as a thread.
paramPointer to the function to be started as a thread.
detachedIf not zero, defines that the thread should run in detached mode.
Returns:
The return value is the thread ID.
char*(* _CMPIBrokerExtFT::resolveFileName)(const char *filename)

This function complements a generic dynamic library nameto its OS-dependent native format.

Parameters:
filenamePointer to the generic library name,
Returns:
The returned char* pointer points to the complemented library name in native OS format. Space for this string has been obtained using malloc() and must be released using free() by the caller. In case no storage could be obtained for the complemented library name, NULL will be returned.
int(* _CMPIBrokerExtFT::setThreadSpecific)(CMPI_THREAD_KEY_TYPE key, void *value)

Set a pointer to data in the therad local store using a thread key.

Parameters:
keyThe key to be used.
valueThe pointer to the data.
Returns:
Completion code as defined by POSIX threading semantics.
int(* _CMPIBrokerExtFT::signalCondition)(CMPI_COND_TYPE cond)

Sends a signal to a condition variable.

Parameters:
condSpecifies the handle of the condition variable to send the signal.
Returns:
As defined by POSIX threading specifications.
int(* _CMPIBrokerExtFT::threadOnce)(int *once, void(*init)(void))

Executes the specified function procedure only once during the lifetime of the thread.

Parameters:
onceThe pointer to the counter.
Thefunction to be called
Returns:
Completion code as defined by POSIX threading semantics (pthread_once)
int(* _CMPIBrokerExtFT::threadSleep)(CMPIUint32 msec)

Suspends the execution of the current thread for the specified duration.

Parameters:
msecThe suspend duration in milliseconds.
Returns:
Completion code as defined by POSIX threading semantics (pthread_sleep)
int(* _CMPIBrokerExtFT::timedCondWait)(CMPI_COND_TYPE cond, CMPI_MUTEX_TYPE mutex, struct timespec *wait)

Wait until the condition is signalled using a timeout value. This function shall return when condition has been signalled already and otherwise must wait for the signal and then return. The function shall return when the timeout specification elapses before the condition is signalled.

Parameters:
condSpecifies the handle of the condition variable to be used.
mutexSpecifies the handle of a locked mutex guarding this condition variable.
waitSpecifies the timeout value.
Returns:
As defined by POSIX threading specifications.
void(* _CMPIBrokerExtFT::unlockMutex)(CMPI_MUTEX_TYPE mutex)

Release control of the mutex.

Parameters:
mutexThe mutex to be unlocked.

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