📄 cmpift.h
字号:
/** Opaque pointer to MB specific implementation data. */ void *hdl; /** Pointer to the Instance Function Table. */ CMPIInstanceFT *ft; }; //--------------------------------------------------- //-- // _CMPIInstance Function Table //-- //--------------------------------------------------- /** This structure is a table of pointers providing access to Instance support sevices. */ struct _CMPIInstanceFT { /** Function table version */ int ftVersion; /** The Instance object will not be used any further and may be freed by CMPI run time system. This will also release the contained objects. @param inst Instance this pointer. @return Service return status. */ CMPIStatus (*release) (CMPIInstance * inst); /** Create an independent copy of this Instance object. The resulting object must be released explicitly. @param inst Instance this pointer. @param rc Output: Service return status (suppressed when NULL). @return Pointer to copied Instance object. */ CMPIInstance *(*clone) (const CMPIInstance * inst, CMPIStatus * rc); /** Gets a named property value. @param inst Instance this pointer. @param name Property name. @param rc Output: Service return status (suppressed when NULL). @return Property value. */ CMPIData (*getProperty) (const CMPIInstance * inst, const char *name, CMPIStatus * rc); /** Gets a Property value defined by its index. @param inst Instance this pointer. @param index Position in the internal Data array. @param name Output: Returned property name (suppressed when NULL). @param rc Output: Service return status (suppressed when NULL). @return Property value. */ CMPIData (*getPropertyAt) (const CMPIInstance * inst, CMPICount index, CMPIString ** name, CMPIStatus * rc); /** Gets the number of properties contained in this Instance. @param inst Instance this pointer. @param rc Output: Service return status (suppressed when NULL). @return Number of properties. */ CMPICount (*getPropertyCount) (const CMPIInstance * inst, CMPIStatus * rc); /** Adds/replaces a named Property. @param inst Instance this pointer. @param name Entry name. @param value Address of value structure. @param type Value type. @return Service return status. */ CMPIStatus (*setProperty) (const CMPIInstance * inst, const char *name, const CMPIValue * value, CMPIType type); /** Generates an ObjectPath out of the namespace, classname and key propeties of this Instance. @param inst Instance this pointer. @param rc Output: Service return status (suppressed when NULL). @return the generated ObjectPath. */ CMPIObjectPath *(*getObjectPath) (const CMPIInstance * inst, CMPIStatus * rc); /** Directs CMPI to ignore any setProperty operations for this instance for any properties not in this list. @param inst Instance this pointer. @param propertyList If not NULL, the members of the array define one or more Property names to be accepted by setProperty operations. @param keys Deprecated, ignored by MB, maintained here for compatibility. @return Service return status. */ CMPIStatus (*setPropertyFilter) (CMPIInstance * inst, const char **propertyList, const char **keys);# ifdef CMPI_VER_100 /** Set/replace the ObjectPath component in an instance. @param inst The CMPIInstance structure containing a complete instance. @parmm op The CMPIObjectPath structure. This objectpath shall contain the namespace,classname, as well as all keys for the specified instance. @return Service return status. */ CMPIStatus (*setObjectPath) (CMPIInstance * inst, const CMPIObjectPath * op);# endif /* CMPI_VER_100 */# ifdef CMPI_VER_200 /** add/replace a named Property value and origin @param inst is a pointer to the CMPIInstance structure. @param name is a string containing the Property name. @param value points to a CMPIValue structure containing the value to be assigned to the Property. @param type is a CMPIType structure defining the type of the value. @param origin specifies the instance origin. If NULL, then no origin is attached to the property @return Service return status */ CMPIStatus (*setPropertyWithOrigin)(const CMPIInstance*, const char*, const CMPIValue*, const CMPIType, const char*);# endif /* CMPI_VER_200 */ }; //--------------------------------------------------- //-- // _CMPIObjectPath Encapsulated object //-- //--------------------------------------------------- /** This structure represents the Encapsulated Instance object. */ struct _CMPIObjectPath { /** Opaque pointer to MB specific implementation data. */ void *hdl; /** Pointer to the ObjectPath Function Table. */ CMPIObjectPathFT *ft; }; //--------------------------------------------------- //-- // _CMPIObjectPath Function Table //-- //--------------------------------------------------- /** This structure is a table of pointers providing access to ObjectPath support sevices. */ struct _CMPIObjectPathFT { /** Function table version */ int ftVersion; /** The ObjectPath object will not be used any further and may be freed by CMPI run time system. @param op ObjectPath this pointer. @return Service return status. */ CMPIStatus (*release) (CMPIObjectPath * op); /** Create an independent copy of this ObjectPath object. The resulting object must be released explicitly. @param op ObjectPath this pointer. @param rc Output: Service return status (suppressed when NULL). @return Pointer to copied ObjectPath object. */ CMPIObjectPath *(*clone) (const CMPIObjectPath * op, CMPIStatus * rc); /** Set/replace the namespace component. @param op ObjectPath this pointer. @param ns The namespace string @return Service return status. */ CMPIStatus (*setNameSpace) (CMPIObjectPath * op, const char *ns); /** Get the namespace component. @param op ObjectPath this pointer. @param rc Output: Service return status (suppressed when NULL). @return The namespace component. */ CMPIString *(*getNameSpace) (const CMPIObjectPath * op, CMPIStatus * rc); /** Set/replace the hostname component. @param op ObjectPath this pointer. @param hn The hostname string @return Service return status. */ CMPIStatus (*setHostname) (CMPIObjectPath * op, const char *hn); /** Get the hostname component. @param op ObjectPath this pointer. @param rc Output: Service return status (suppressed when NULL). @return The hostname component. */ CMPIString *(*getHostname) (const CMPIObjectPath * op, CMPIStatus * rc); /** Set/replace the classname component. @param op ObjectPath this pointer. @param cn The hostname string @return Service return status. */ CMPIStatus (*setClassName) (CMPIObjectPath * op, const char *cn); /** Get the classname component. @param op ObjectPath this pointer. @param rc Output: Service return status (suppressed when NULL). @return The classname component. */ CMPIString *(*getClassName) (const CMPIObjectPath * op, CMPIStatus * rc); /** Adds/replaces a named key property. @param op ObjectPath this pointer. @param name Key property name. @param value Address of value structure. @param type Value type. @return Service return status. */ CMPIStatus (*addKey) (CMPIObjectPath * op, const char *name, const CMPIValue * value, const CMPIType type); /** Gets a named key property value. @param op ObjectPath this pointer. @param name Key property name. @param rc Output: Service return status (suppressed when NULL). @return Entry value. */ CMPIData (*getKey) (const CMPIObjectPath * op, const char *name, CMPIStatus * rc); /** Gets a key property value defined by its index. @param op ObjectPath this pointer. @param index Position in the internal Data array. @param name Output: Returned property name (suppressed when NULL). @param rc Output: Service return status (suppressed when NULL). @return Data value. */ CMPIData (*getKeyAt) (const CMPIObjectPath * op, CMPICount index, CMPIString ** name, CMPIStatus * rc); /** Gets the number of key properties contained in this ObjectPath. @param op ObjectPath this pointer. @param rc Output: Service return status (suppressed when NULL). @return Number of properties. */ CMPICount (*getKeyCount) (const CMPIObjectPath * op, CMPIStatus * rc); /** Set/replace namespace and classname components from <src>. @param op ObjectPath this pointer. @param src Source input. @return Service return status. */ CMPIStatus (*setNameSpaceFromObjectPath) (CMPIObjectPath * op, const CMPIObjectPath * src); /** Set/replace hostname, namespace and classname components from <src>. @param op ObjectPath this pointer. @param src Source input. @return Service return status. */ CMPIStatus (*setHostAndNameSpaceFromObjectPath) (CMPIObjectPath * op, const CMPIObjectPath * src); // optional qualifier support /** Get class qualifier value. @param op ObjectPath this pointer. @param qName Qualifier name. @param rc Output: Service return status (suppressed when NULL). @return Qualifier value. */ CMPIData (*getClassQualifier) (const CMPIObjectPath * op, const char *qName, CMPIStatus * rc); /** Get property qualifier value. @param op ObjectPath this pointer. @param pName Property name. @param qName Qualifier name. @param rc Output: Service return status (suppressed when NULL). @return Qualifier value. */ CMPIData (*getPropertyQualifier) (const CMPIObjectPath * op, const char *pName, const char *qName, CMPIStatus * rc); /** Get method qualifier value. @param op ObjectPath this pointer. @param mName Method name. @param qName Qualifier name. @param rc Output: Service return status (suppressed when NULL). @return Qualifier value. */ CMPIData (*getMethodQualifier) (const CMPIObjectPath * op, const char *methodName, const char *qName, CMPIStatus * rc); /** Get method parameter quailifier value. @param op ObjectPath this pointer. @param mName Method name. @param pName Parameter name. @param qName Qualifier name. @param rc Output: Service return status (suppressed when NULL). @return Qualifier value. */ CMPIData (*getParameterQualifier) (const CMPIObjectPath * op, const char *mName, const char *pName, const char *qName, CMPIStatus * rc);# ifdef CMPI_VER_86 /** Generates a well formed string representation of this
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -