(file) Return to SCMOInstance.h CVS log (file) (dir) Up to [Pegasus] / pegasus / src / Pegasus / Common

Diff for /pegasus/src/Pegasus/Common/SCMOInstance.h between version 1.1.2.5 and 1.1.2.12

version 1.1.2.5, 2009/08/06 09:08:09 version 1.1.2.12, 2009/09/09 13:16:14
Line 37 
Line 37 
 #include <Pegasus/Common/Linkage.h> #include <Pegasus/Common/Linkage.h>
 #include <Pegasus/Common/SCMO.h> #include <Pegasus/Common/SCMO.h>
 #include <Pegasus/Common/SCMOClass.h> #include <Pegasus/Common/SCMOClass.h>
   #include <Pegasus/Common/Union.h>
  
 PEGASUS_NAMESPACE_BEGIN PEGASUS_NAMESPACE_BEGIN
  
Line 140 
Line 141 
      * It is a deep copy of the SCMOInstance into the CIMInstance.      * It is a deep copy of the SCMOInstance into the CIMInstance.
      * @param cimInstance An empty CIMInstance.      * @param cimInstance An empty CIMInstance.
      */      */
     void getCIMInstance(CIMInstance& cimInstance) const;      SCMO_RC getCIMInstance(CIMInstance& cimInstance) const;
  
     /**     /**
      * Makes a deep copy of the instance.      * Makes a deep copy of the instance.
Line 152 
Line 153 
     SCMOInstance clone(Boolean objectPathOnly = false) const;     SCMOInstance clone(Boolean objectPathOnly = false) const;
  
     /**     /**
        * Retrieves the objectpath part of the SCMOInstance as an instance
        * of class CIMObjectPath.                .
        * @param cimObj Reference to an instantiated CIMObjectPath to be
        *     populated with the data from the SCMOInstance.
        * @return void
        */
       void getCIMObjectPath(CIMObjectPath& cimObj) const;
   
       /**
      * Returns the number of properties of the instance.      * Returns the number of properties of the instance.
      * @param Number of properties      * @param Number of properties
      */      */
Line 196 
Line 206 
         Uint32& size ) const;         Uint32& size ) const;
  
     /**     /**
        * Gets the property name, type, and value addressed by a positional index.
        * The property name and value has to be copied by the caller !
        * @param pos The positional index of the property
        * @param pname Returns the property name as '\0' terminated string.
        *              Has to be copied by caller.
        *              It is set to NULL if rc != SCMO_OK.
        * @param value Returns an absolute pointer to the value of property.
        *                  Sub-pointers are NOT resolved!
        *               The value has to be copied by the caller !
        *               It returns NULL if rc != SCMO_OK.
        *               If the value is an array, the
        *               value array is stored in continuous memory.
        *               e.g. If the CIMType is CIMTYPE_UINT32:
        *               value = (void*)Uint32[0 to size-1]
        *               If it is an array of CIMTYPE_STRING, an array
        *               of char* to the string values is returned.
        *               This array has to be freed by the caller !
        * @param valueBase Returns an absolute pointer to the base of value,
        *                  because subsequent pointers in the value are NOT
        *                  resolved.
        * @param propDef Returns an absolute pointer to the property definition
        *                  Sub-pointers are NOT resolved!
        *             It is invalid if rc == SCMO_INDEX_OUT_OF_BOUND.
        *
        * @return     SCMO_OK
        *             SCMO_NULL_VALUE : The value is a null value.
        *             SCMO_INDEX_OUT_OF_BOUND : Given index not found
        *
        */
       SCMO_RC getPropertyAt(
           Uint32 pos,
           SCMBValue** value,
           const char ** valueBase,
           SCMBClassProperty ** propDef) const;
   
       /**
      * Gets the type and value of the named property.      * Gets the type and value of the named property.
      * The value has to be copied by the caller !      * The value has to be copied by the caller !
      * @param name The property name      * @param name The property name
Line 326 
Line 372 
         Uint32 size = 0);         Uint32 size = 0);
  
     /**     /**
      * Set/replace the named key binding       * Set/replace the named key binding using binary data
      * @param name The key binding name.      * @param name The key binding name.
      * @param type The type as CIMKeyBinding::Type.       * @param type The type as CIMType.
      * @parma value The value as string.       * @param keyvalue A pointer to the binary key value.
        *         The value is copied into the instance
        *         If the value == NULL, a null value is assumed.
      * @return     SCMO_OK      * @return     SCMO_OK
        *             SCMO_INVALID_PARAMETER : Given name or pvalue
        *                                      is a NULL pointer.
      *             SCMO_TYPE_MISSMATCH : Given type does not      *             SCMO_TYPE_MISSMATCH : Given type does not
      *                                   match to key binding type      *                                   match to key binding type
      *             SCMO_NOT_FOUND : Given property name not found.      *             SCMO_NOT_FOUND : Given property name not found.
      */      */
     SCMO_RC setKeyBinding(     SCMO_RC setKeyBinding(
         const char* name,         const char* name,
         CIMKeyBinding::Type type,          CIMType type,
         const char* pvalue);          void* keyvalue);
   
       /**
        * Set/replace the key binding at node
        * @param node The node index of the key.
        * @param type The type as CIMType.
        * @param keyvalue A pointer to the binary key value.
        *         The value is copied into the instance
        *         If the value == NULL, a null value is assumed.
        * @return     SCMO_OK
        *             SCMO_INVALID_PARAMETER : Given pvalue is a NULL pointer.
        *             SCMO_TYPE_MISSMATCH : Given type does not
        *                                   match to key binding type
        *             SCMO_INDEX_OUT_OF_BOUND : Given index is our of range.
        */
       SCMO_RC setKeyBindingAt(
           Uint32 node,
           CIMType type,
           void* keyvalue);
  
     /**     /**
      * Gets the key binding count.      * Gets the key binding count.
      * @return the number of key bindings set.      * @return the number of key bindings set.
      */      */
     Uint32 getKeyBindingCount();      Uint32 getKeyBindingCount() const;
  
     /**     /**
      * Get the indexed key binding.      * Get the indexed key binding.
Line 352 
Line 420 
      * @parm pname Returns the name.      * @parm pname Returns the name.
      *             Has to be copied by caller.      *             Has to be copied by caller.
      *             It is invalid if rc == SCMO_INDEX_OUT_OF_BOUND.      *             It is invalid if rc == SCMO_INDEX_OUT_OF_BOUND.
      * @param type Returns the type as CIMKeyBinding::Type.       * @param type Returns the type as CIMType.
      *             It is invalid if rc == SCMO_INDEX_OUT_OF_BOUND.      *             It is invalid if rc == SCMO_INDEX_OUT_OF_BOUND.
      * @parma pvalue Returns the value as string.       * @param keyvalue A pointer to the binary key value.
      *             Has to be copied by caller.      *             Has to be copied by caller.
      *             It is only valid if rc == SCMO_OK.      *             It is only valid if rc == SCMO_OK.
      * @return     SCMO_OK      * @return     SCMO_OK
Line 365 
Line 433 
     SCMO_RC getKeyBindingAt(     SCMO_RC getKeyBindingAt(
         Uint32 idx,         Uint32 idx,
         const char** pname,         const char** pname,
         CIMKeyBinding::Type& type,          CIMType& type,
         const char** pvalue) const;          const void** keyvalue) const;
  
     /**     /**
      * Get the named key binding.      * Get the named key binding.
      * @parm name The name of the key binding.      * @parm name The name of the key binding.
      * @param type Returns the type as CIMKeyBinding::Type.       * @param type Returns the type as CIMType.
      *             It is invalid if rc == SCMO_INDEX_OUT_OF_BOUND.      *             It is invalid if rc == SCMO_INDEX_OUT_OF_BOUND.
      * @parma value Returns the value as string.       * @param keyvalue A pointer to the binary key value.
      *             Has to be copied by caller.      *             Has to be copied by caller.
      *             It is only valid if rc == SCMO_OK.      *             It is only valid if rc == SCMO_OK.
      * @return     SCMO_OK      * @return     SCMO_OK
Line 382 
Line 450 
      */      */
     SCMO_RC getKeyBinding(     SCMO_RC getKeyBinding(
         const char* name,         const char* name,
         CIMKeyBinding::Type& ptype,          CIMType& ptype,
         const char** pvalue) const;          const void** keyvalue) const;
  
     /**     /**
      * Determines whether the object has been initialized.      * Determines whether the object has been initialized.
Line 410 
Line 478 
     void setHostName(const char* hostName);     void setHostName(const char* hostName);
  
     /**     /**
      * Get the class name of the instance. The cabler has to make a copy !       * Get the class name of the instance. The caller has to make a copy !
      * @return The class name as UTF8.      * @return The class name as UTF8.
      */      */
     const char* getClassName() const;     const char* getClassName() const;
  
     /**     /**
        * Get the class name of the instance. The caller has to make a copy !
        * @return The class name as UTF8. Return length of result string.
        */
       const char* getClassName_l(Uint64 & length) const;
   
       /**
      * Get the name space of the instance. The caller has to make a copy !      * Get the name space of the instance. The caller has to make a copy !
      * @return The name space as UTF8.      * @return The name space as UTF8.
      */      */
Line 509 
Line 583 
  
     void _setCIMValueAtNodeIndex(Uint32 node, CIMValueRep* valRep);     void _setCIMValueAtNodeIndex(Uint32 node, CIMValueRep* valRep);
  
       void _getCIMValueFromSCMBUnion(
           CIMValue& cimV,
           const CIMType type,
           const Boolean isNull,
           const Boolean isArray,
           const Uint32 arraySize,
           const SCMBUnion& scmbUn,
           const char * base) const;
   
       void _getCIMValueFromSCMBValue(
           CIMValue& cimV,
           const SCMBValue& scmbV,
           const char * base) const;
   
       CIMProperty _getCIMPropertyAtNodeIndex(Uint32 nodeIdx) const;
   
     void _setCIMObjectPath(const CIMObjectPath& cimObj);     void _setCIMObjectPath(const CIMObjectPath& cimObj);
  
     void* _getSCMBUnion(      void* _resolveSCMBUnion(
         CIMType type,         CIMType type,
         Boolean isArray,         Boolean isArray,
         Uint32 size,         Uint32 size,
Line 523 
Line 613 
         CIMType type,         CIMType type,
         Boolean isArray,         Boolean isArray,
         Uint32 size,         Uint32 size,
         Uint64 start);          SCMBUnion & u);
  
     static void _setUnionValue(     static void _setUnionValue(
         Uint64 start,         Uint64 start,
Line 531 
Line 621 
         CIMType type,         CIMType type,
         Union& u);         Union& u);
  
     static void _setArrayValue(      static void _setUnionArrayValue(
         Uint64 start,         Uint64 start,
         SCMBMgmt_Header** pmem,         SCMBMgmt_Header** pmem,
         CIMType type,         CIMType type,
         Uint32& n,         Uint32& n,
         Union& u);         Union& u);
  
     SCMO_RC _getKeyBindingAtNodeIndex(      SCMO_RC _getKeyBindingDataAtNodeIndex(
         Uint32 pos,          Uint32 node,
         const char** pname,         const char** pname,
         CIMKeyBinding::Type& ptype,          Uint32 & pnameLen,
         const char** pvalue) const;          CIMType& type,
           const SCMBUnion** pdata) const;
  
     void _copyKeyBindings(SCMOInstance& targetInst) const;     void _copyKeyBindings(SCMOInstance& targetInst) const;
  
Line 556 
Line 647 
  
     void _setKeyBindingFromSCMBUnion(     void _setKeyBindingFromSCMBUnion(
         CIMType type,         CIMType type,
         SCMBUnion& u,          const SCMBUnion& u,
         SCMBDataPtr& keyNode);          const char * uBase,
           SCMBKeyBindingValue& keyData);
   
       SCMO_RC _setKeyBindingFromString(const char* name,String cimKeyBinding);
   
       Boolean _setCimKeyBindingStringToSCMOKeyBindigValue(
           const char* v,
           Uint32 len,
           CIMType type,
           SCMBKeyBindingValue& scmoKBV
           );
   
  
     union{     union{
         // To access the instance main structure         // To access the instance main structure
Line 570 
Line 672 
  
     friend class SCMOClass;     friend class SCMOClass;
     friend class SCMODump;     friend class SCMODump;
       friend class SCMOXmlWriter;
 }; };
  
  


Legend:
Removed from v.1.1.2.5  
changed lines
  Added in v.1.1.2.12

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2