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

   1 martin 1.55 //%LICENSE////////////////////////////////////////////////////////////////
   2 martin 1.56 //
   3 martin 1.55 // Licensed to The Open Group (TOG) under one or more contributor license
   4             // agreements.  Refer to the OpenPegasusNOTICE.txt file distributed with
   5             // this work for additional information regarding copyright ownership.
   6             // Each contributor licenses this file to you under the OpenPegasus Open
   7             // Source License; you may not use this file except in compliance with the
   8             // License.
   9 martin 1.56 //
  10 martin 1.55 // Permission is hereby granted, free of charge, to any person obtaining a
  11             // copy of this software and associated documentation files (the "Software"),
  12             // to deal in the Software without restriction, including without limitation
  13             // the rights to use, copy, modify, merge, publish, distribute, sublicense,
  14             // and/or sell copies of the Software, and to permit persons to whom the
  15             // Software is furnished to do so, subject to the following conditions:
  16 martin 1.56 //
  17 martin 1.55 // The above copyright notice and this permission notice shall be included
  18             // in all copies or substantial portions of the Software.
  19 martin 1.56 //
  20 martin 1.55 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
  21 martin 1.56 // OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
  22 martin 1.55 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
  23             // IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
  24             // CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
  25             // TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
  26             // SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
  27 martin 1.56 //
  28 martin 1.55 //////////////////////////////////////////////////////////////////////////
  29 mike   1.11 //
  30             //%/////////////////////////////////////////////////////////////////////////////
  31             
  32             #ifndef Pegasus_Value_h
  33             #define Pegasus_Value_h
  34             
  35             #include <Pegasus/Common/String.h>
  36             #include <Pegasus/Common/Config.h>
  37             #include <Pegasus/Common/CIMType.h>
  38 kumpf  1.23 #include <Pegasus/Common/CIMObjectPath.h>
  39 dave.sudlik 1.41 #include <Pegasus/Common/CIMObject.h>
  40 mike        1.11 #include <Pegasus/Common/CIMDateTime.h>
  41 kumpf       1.18 #include <Pegasus/Common/Exception.h>
  42 mike        1.11 #include <Pegasus/Common/Array.h>
  43 kumpf       1.29 #include <Pegasus/Common/Linkage.h>
  44 mike        1.11 
  45                  PEGASUS_NAMESPACE_BEGIN
  46                  
  47 kumpf       1.18 class CIMValueRep;
  48 dave.sudlik 1.41 class CIMObject;
  49 a.dunfey    1.50 class CIMInstance;
  50 kumpf       1.18 
  51 mike        1.11 /**
  52 kumpf       1.53     The CIMValue class represents a value of any of the CIM data types.
  53                      This class encapsulates a union which holds value of any CIMType.
  54                      A type field indicates the type of the value.
  55 karl        1.59 
  56                      WARNING: The returned value of CIMValue get(returnValue) is never nodified
  57                      when a CIMValue is null (i.e. isNull() == true). An isNull() test should
  58                      be executed before executing any CIMValue get(...) if there is any
  59                      question of a possible null value and you are not sure of the value in
  60                      the returned variable.
  61                  
  62 mike        1.11 */
  63                  class PEGASUS_COMMON_LINKAGE CIMValue
  64                  {
  65                  public:
  66 kumpf       1.53     /**
  67                          Constructs a null CIMValue with type Boolean and isArray=false.
  68 karl        1.15     */
  69 mike        1.11     CIMValue();
  70                  
  71 kumpf       1.53     /**
  72                          Constructs a null CIMValue object with the specified type and
  73                          array indicator.
  74                          @param type The CIMType of the value
  75                          @param isArray A Boolean indicating whether the value is of array type
  76                          @param arraySize An integer specifying the size of the array, if the
  77                              CIMValue is for an array of a fixed size.  This value is ignored
  78                              if the isArray argument is false.
  79 karl        1.15     */
  80                      CIMValue(CIMType type, Boolean isArray, Uint32 arraySize = 0);
  81                  
  82 kumpf       1.53     /**
  83                          Constructs a CIMValue with the specified value and inferred type.
  84                          @param x The Boolean value to assign
  85                      */
  86 kumpf       1.18     CIMValue(Boolean x);
  87 mike        1.11 
  88 kumpf       1.53     /**
  89                          Constructs a CIMValue with the specified value and inferred type.
  90                          @param x The Uint8 value to assign
  91                      */
  92 kumpf       1.18     CIMValue(Uint8 x);
  93 mike        1.11 
  94 kumpf       1.53     /**
  95                          Constructs a CIMValue with the specified value and inferred type.
  96                          @param x The Sint8 value to assign
  97                      */
  98 kumpf       1.18     CIMValue(Sint8 x);
  99 mike        1.11 
 100 kumpf       1.53     /**
 101                          Constructs a CIMValue with the specified value and inferred type.
 102                          @param x The Uint16 value to assign
 103                      */
 104 kumpf       1.18     CIMValue(Uint16 x);
 105 mike        1.11 
 106 kumpf       1.53     /**
 107                          Constructs a CIMValue with the specified value and inferred type.
 108                          @param x The Sint16 value to assign
 109                      */
 110 kumpf       1.18     CIMValue(Sint16 x);
 111 mike        1.11 
 112 kumpf       1.53     /**
 113                          Constructs a CIMValue with the specified value and inferred type.
 114                          @param x The Uint32 value to assign
 115                      */
 116 kumpf       1.18     CIMValue(Uint32 x);
 117 mike        1.11 
 118 kumpf       1.53     /**
 119                          Constructs a CIMValue with the specified value and inferred type.
 120                          @param x The Sint32 value to assign
 121                      */
 122 kumpf       1.18     CIMValue(Sint32 x);
 123 mike        1.11 
 124 kumpf       1.53     /**
 125                          Constructs a CIMValue with the specified value and inferred type.
 126                          @param x The Uint64 value to assign
 127                      */
 128 kumpf       1.18     CIMValue(Uint64 x);
 129 mike        1.11 
 130 kumpf       1.53     /**
 131                          Constructs a CIMValue with the specified value and inferred type.
 132                          @param x The Sint64 value to assign
 133                      */
 134 kumpf       1.18     CIMValue(Sint64 x);
 135 mike        1.11 
 136 kumpf       1.53     /**
 137                          Constructs a CIMValue with the specified value and inferred type.
 138                          @param x The Real32 value to assign
 139                      */
 140 kumpf       1.18     CIMValue(Real32 x);
 141 mike        1.11 
 142 kumpf       1.53     /**
 143                          Constructs a CIMValue with the specified value and inferred type.
 144                          @param x The Real64 value to assign
 145                      */
 146 kumpf       1.18     CIMValue(Real64 x);
 147 mike        1.11 
 148 kumpf       1.53     /**
 149                          Constructs a CIMValue with the specified value and inferred type.
 150                          @param x The Char16 value to assign
 151                      */
 152 kumpf       1.18     CIMValue(const Char16& x);
 153 mike        1.11 
 154 kumpf       1.53     /**
 155                          Constructs a CIMValue with the specified value and inferred type.
 156                          @param x The String value to assign
 157                      */
 158 kumpf       1.18     CIMValue(const String& x);
 159 mike        1.11 
 160 kumpf       1.53     /**
 161                          Constructs a CIMValue with the specified value and inferred type.
 162                          @param x The CIMDateTime value to assign
 163                      */
 164 kumpf       1.18     CIMValue(const CIMDateTime& x);
 165 mike        1.11 
 166 kumpf       1.53     /**
 167                          Constructs a CIMValue with the specified value and inferred type.
 168                          @param x The CIMObjectPath value to assign
 169                      */
 170 kumpf       1.23     CIMValue(const CIMObjectPath& x);
 171 mike        1.11 
 172 kumpf       1.53     /**
 173                          Constructs a CIMValue with the specified value and inferred type.
 174                          Note: The CIMObject argument is cloned to prevent subsequent
 175                          modification through the shared representation model.
 176                          @param x The CIMObject value to assign
 177                          @exception UninitializedObjectException If the CIMObject is
 178                              uninitialized.
 179 denise.eckstein 1.46     */
 180 dave.sudlik     1.41     CIMValue(const CIMObject& x);
 181                      
 182 kumpf           1.53     /**
 183                              Constructs a CIMValue with the specified value and inferred type.
 184                              Note: The CIMInstance argument is cloned to prevent subsequent
 185                              modification through the shared representation model.
 186                              @param x The CIMInstance value to assign
 187                              @exception UninitializedObjectException If the CIMInstance is
 188                                  uninitialized.
 189                          */
 190 a.dunfey        1.50     CIMValue(const CIMInstance& x);
 191                      
 192 kumpf           1.53     /**
 193                              Constructs a CIMValue with the specified value and inferred type.
 194                              @param x The Boolean Array value to assign
 195                          */
 196 kumpf           1.18     CIMValue(const Array<Boolean>& x);
 197 mike            1.11 
 198 kumpf           1.53     /**
 199                              Constructs a CIMValue with the specified value and inferred type.
 200                              @param x The Uint8 Array value to assign
 201                          */
 202 kumpf           1.18     CIMValue(const Array<Uint8>& x);
 203 mike            1.11 
 204 kumpf           1.53     /**
 205                              Constructs a CIMValue with the specified value and inferred type.
 206                              @param x The Sint8 Array value to assign
 207                          */
 208 kumpf           1.18     CIMValue(const Array<Sint8>& x);
 209 mike            1.11 
 210 kumpf           1.53     /**
 211                              Constructs a CIMValue with the specified value and inferred type.
 212                              @param x The Uint16 Array value to assign
 213                          */
 214 kumpf           1.18     CIMValue(const Array<Uint16>& x);
 215 mike            1.11 
 216 kumpf           1.53     /**
 217                              Constructs a CIMValue with the specified value and inferred type.
 218                              @param x The Sint16 Array value to assign
 219                          */
 220 kumpf           1.18     CIMValue(const Array<Sint16>& x);
 221 mike            1.11 
 222 kumpf           1.53     /**
 223                              Constructs a CIMValue with the specified value and inferred type.
 224                              @param x The Uint32 Array value to assign
 225                          */
 226 kumpf           1.18     CIMValue(const Array<Uint32>& x);
 227 mike            1.11 
 228 kumpf           1.53     /**
 229                              Constructs a CIMValue with the specified value and inferred type.
 230                              @param x The Sint32 Array value to assign
 231                          */
 232 kumpf           1.18     CIMValue(const Array<Sint32>& x);
 233 mike            1.11 
 234 kumpf           1.53     /**
 235                              Constructs a CIMValue with the specified value and inferred type.
 236                              @param x The Uint64 Array value to assign
 237                          */
 238 kumpf           1.18     CIMValue(const Array<Uint64>& x);
 239 mike            1.11 
 240 kumpf           1.53     /**
 241                              Constructs a CIMValue with the specified value and inferred type.
 242                              @param x The Sint64 Array value to assign
 243                          */
 244 kumpf           1.18     CIMValue(const Array<Sint64>& x);
 245 mike            1.11 
 246 kumpf           1.53     /**
 247                              Constructs a CIMValue with the specified value and inferred type.
 248                              @param x The Real32 Array value to assign
 249                          */
 250 kumpf           1.18     CIMValue(const Array<Real32>& x);
 251 mike            1.11 
 252 kumpf           1.53     /**
 253                              Constructs a CIMValue with the specified value and inferred type.
 254                              @param x The Real64 Array value to assign
 255                          */
 256 kumpf           1.18     CIMValue(const Array<Real64>& x);
 257 mike            1.11 
 258 kumpf           1.53     /**
 259                              Constructs a CIMValue with the specified value and inferred type.
 260                              @param x The Char16 Array value to assign
 261                          */
 262 kumpf           1.18     CIMValue(const Array<Char16>& x);
 263 mike            1.11 
 264 kumpf           1.53     /**
 265                              Constructs a CIMValue with the specified value and inferred type.
 266                              @param x The String Array value to assign
 267                          */
 268 kumpf           1.18     CIMValue(const Array<String>& x);
 269 mike            1.11 
 270 kumpf           1.53     /**
 271                              Constructs a CIMValue with the specified value and inferred type.
 272                              @param x The CIMDateTime Array value to assign
 273                          */
 274 kumpf           1.18     CIMValue(const Array<CIMDateTime>& x);
 275 mike            1.11 
 276 kumpf           1.53     /**
 277                              Constructs a CIMValue with the specified value and inferred type.
 278                              @param x The CIMObjectPath Array value to assign
 279                          */
 280 kumpf           1.23     CIMValue(const Array<CIMObjectPath>& x);
 281 kumpf           1.14 
 282 kumpf           1.53     /**
 283                              Constructs a CIMValue with the specified value and inferred type.
 284                              Note: The CIMObjects in the Array argument are cloned to prevent
 285                              subsequent modification through the shared representation model.
 286                              @param x The CIMObject Array value to assign
 287                              @exception UninitializedObjectException If any of the CIMObjects in the
 288                                  Array are uninitialized.
 289 denise.eckstein 1.46     */
 290 dave.sudlik     1.41     CIMValue(const Array<CIMObject>& x);
 291                      
 292 kumpf           1.53     /**
 293                              Constructs a CIMValue with the specified value and inferred type.
 294                              Note: The CIMInstances in the Array argument are cloned to prevent
 295                              subsequent modification through the shared representation model.
 296                              @param x The CIMInstance Array value to assign
 297                              @exception UninitializedObjectException If any of the CIMInstances in
 298                                  the Array are uninitialized.
 299                          */
 300 a.dunfey        1.50     CIMValue(const Array<CIMInstance>& x);
 301                      
 302 kumpf           1.53     /**
 303                              Constructs a CIMValue by copying another CIMValue object.
 304                              Note: If the specified CIMValue contains CIMObject or CIMInstance
 305                              objects, they are cloned to prevent subsequent modification through
 306                              the shared representation model.
 307                              @param x The CIMValue object to copy
 308 denise.eckstein 1.46     */
 309 mike            1.11     CIMValue(const CIMValue& x);
 310                      
 311 kumpf           1.53     /**
 312                              Destructs a CIMValue object.
 313                          */
 314 mike            1.11     ~CIMValue();
 315                      
 316 kumpf           1.53     /**
 317                              Assigns the value from a specified CIMValue object.
 318                              Note: If the specified CIMValue contains CIMObject or CIMInstance
 319                              objects, they are cloned to prevent subsequent modification through
 320                              the shared representation model.
 321                              @param x The CIMValue object to copy
 322                              @return A reference to this CIMValue object with the new assignment
 323 denise.eckstein 1.46     */
 324 kumpf           1.18     CIMValue& operator=(const CIMValue& x);
 325 mike            1.11 
 326 kumpf           1.53     /**
 327                              Assigns the value from a specified CIMValue object.
 328                              Note: If the specified CIMValue contains CIMObject or CIMInstance
 329                              objects, they are cloned to prevent subsequent modification through
 330                              the shared representation model.
 331                              @param x The CIMValue object to copy
 332 karl            1.13     */
 333 mike            1.11     void assign(const CIMValue& x);
 334                      
 335 kumpf           1.53     /**
 336                              Resets to a null value with type Boolean and isArray=false.
 337 karl            1.13     */
 338 mike            1.11     void clear();
 339                      
 340 kumpf           1.53     /**
 341                              Compares the type and isArray attributes with a specified CIMValue.
 342                              @param x The CIMValue object with which to compare
 343                              @return A Boolean indicating whether the CIMValue objects have the same
 344                                  type and isArray attribute value.
 345 mike            1.11     */
 346 kumpf           1.18     Boolean typeCompatible(const CIMValue& x) const;
 347 mike            1.11 
 348 kumpf           1.53     /**
 349                              Indicates whether the value is an array.
 350                              @return A Boolean indicating whether the value is an array.
 351 mike            1.11     */
 352 kumpf           1.18     Boolean isArray() const;
 353 mike            1.11 
 354 kumpf           1.53     /**
 355                              Indicates whether the value is null.  A null CIMValue has a type, but
 356                              no value can be retrieved from it.
 357                              @return A Boolean indicating whether the value is null.
 358 mike            1.12     */
 359 kumpf           1.18     Boolean isNull() const;
 360 mike            1.12 
 361 kumpf           1.53     /**
 362                              Gets the fixed array size of a CIMValue.  This value is undefined for
 363                              non-array values.  A value of 0 is given for variable size arrays.
 364 karl            1.59         Result is undetermined if CIMValue is null.
 365 kumpf           1.53         @return An integer indicating the array size.
 366 mike            1.11     */
 367                          Uint32 getArraySize() const;
 368                      
 369 kumpf           1.53     /**
 370                              Gets the value type.
 371                              @return A CIMType indicating the type of the value.
 372 karl            1.13     */
 373 kumpf           1.18     CIMType getType() const;
 374 mike            1.11 
 375 kumpf           1.53     /**
 376                              Sets the value to null with the specified type and array indicator.
 377                              @param type The CIMType of the value
 378                              @param isArray A Boolean indicating whether the value is of array type
 379                              @param arraySize An integer specifying the size of the array, if the
 380                                  CIMValue is for an array of a fixed size.  This value is ignored
 381                                  if the isArray argument is false.
 382 karl            1.13     */
 383 mike            1.11     void setNullValue(CIMType type, Boolean isArray, Uint32 arraySize = 0);
 384                      
 385 kumpf           1.53     /**
 386                              Sets the CIMValue to the specified value and inferred type.
 387                              @param x The Boolean value to assign
 388 kumpf           1.51     */
 389 mike            1.11     void set(Boolean x);
 390                      
 391 kumpf           1.53     /**
 392                              Sets the CIMValue to the specified value and inferred type.
 393                              @param x The Uint8 value to assign
 394                          */
 395 mike            1.11     void set(Uint8 x);
 396 kumpf           1.53 
 397                          /**
 398                              Sets the CIMValue to the specified value and inferred type.
 399                              @param x The Sint8 value to assign
 400                          */
 401 mike            1.11     void set(Sint8 x);
 402 kumpf           1.53 
 403                          /**
 404                              Sets the CIMValue to the specified value and inferred type.
 405                              @param x The Uint16 value to assign
 406                          */
 407 mike            1.11     void set(Uint16 x);
 408 kumpf           1.53 
 409                          /**
 410                              Sets the CIMValue to the specified value and inferred type.
 411                              @param x The Sint16 value to assign
 412                          */
 413 mike            1.11     void set(Sint16 x);
 414 kumpf           1.53 
 415                          /**
 416                              Sets the CIMValue to the specified value and inferred type.
 417                              @param x The Uint32 value to assign
 418                          */
 419 mike            1.11     void set(Uint32 x);
 420 kumpf           1.53 
 421                          /**
 422                              Sets the CIMValue to the specified value and inferred type.
 423                              @param x The Sint32 value to assign
 424                          */
 425 mike            1.11     void set(Sint32 x);
 426 kumpf           1.53 
 427                          /**
 428                              Sets the CIMValue to the specified value and inferred type.
 429                              @param x The Uint64 value to assign
 430                          */
 431 mike            1.11     void set(Uint64 x);
 432 kumpf           1.53 
 433                          /**
 434                              Sets the CIMValue to the specified value and inferred type.
 435                              @param x The Sint64 value to assign
 436                          */
 437 mike            1.11     void set(Sint64 x);
 438 kumpf           1.53 
 439                          /**
 440                              Sets the CIMValue to the specified value and inferred type.
 441                              @param x The Real32 value to assign
 442                          */
 443 mike            1.11     void set(Real32 x);
 444 kumpf           1.53 
 445                          /**
 446                              Sets the CIMValue to the specified value and inferred type.
 447                              @param x The Real64 value to assign
 448                          */
 449 mike            1.11     void set(Real64 x);
 450 kumpf           1.53 
 451                          /**
 452                              Sets the CIMValue to the specified value and inferred type.
 453                              @param x The Char16 value to assign
 454                          */
 455 mike            1.11     void set(const Char16& x);
 456 kumpf           1.53 
 457                          /**
 458                              Sets the CIMValue to the specified value and inferred type.
 459                              @param x The String value to assign
 460                          */
 461 mike            1.11     void set(const String& x);
 462 kumpf           1.53 
 463                          /**
 464                              Sets the CIMValue to the specified value and inferred type.
 465                              @param x The CIMDateTime value to assign
 466                          */
 467 mike            1.11     void set(const CIMDateTime& x);
 468 kumpf           1.53 
 469                          /**
 470                              Sets the CIMValue to the specified value and inferred type.
 471                              @param x The CIMObjectPath value to assign
 472                          */
 473 kumpf           1.23     void set(const CIMObjectPath& x);
 474 kumpf           1.53 
 475                          /**
 476                              Sets the CIMValue to the specified value and inferred type.
 477                              Note: The CIMObject argument is cloned to prevent subsequent
 478                              modification through the shared representation model.
 479                              @param x The CIMObject value to assign
 480                              @exception UninitializedObjectException If the CIMObject is
 481                                  uninitialized.
 482                          */
 483 dave.sudlik     1.41     void set(const CIMObject& x);
 484 kumpf           1.53 
 485                          /**
 486                              Sets the CIMValue to the specified value and inferred type.
 487                              Note: The CIMInstance argument is cloned to prevent subsequent
 488                              modification through the shared representation model.
 489                              @param x The CIMInstance value to assign
 490                              @exception UninitializedObjectException If the CIMInstance is
 491                                  uninitialized.
 492                          */
 493 a.dunfey        1.50     void set(const CIMInstance& x);
 494 kumpf           1.53 
 495                          /**
 496                              Sets the CIMValue to the specified value and inferred type.
 497                              @param x The Boolean Array value to assign
 498                          */
 499 mike            1.11     void set(const Array<Boolean>& x);
 500 kumpf           1.53 
 501                          /**
 502                              Sets the CIMValue to the specified value and inferred type.
 503                              @param x The Uint8 Array value to assign
 504                          */
 505 mike            1.11     void set(const Array<Uint8>& x);
 506 kumpf           1.53 
 507                          /**
 508                              Sets the CIMValue to the specified value and inferred type.
 509                              @param x The Sint8 Array value to assign
 510                          */
 511 mike            1.11     void set(const Array<Sint8>& x);
 512 kumpf           1.53 
 513                          /**
 514                              Sets the CIMValue to the specified value and inferred type.
 515                              @param x The Uint16 Array value to assign
 516                          */
 517 mike            1.11     void set(const Array<Uint16>& x);
 518 kumpf           1.53 
 519                          /**
 520                              Sets the CIMValue to the specified value and inferred type.
 521                              @param x The Sint16 Array value to assign
 522                          */
 523 mike            1.11     void set(const Array<Sint16>& x);
 524 kumpf           1.53 
 525                          /**
 526                              Sets the CIMValue to the specified value and inferred type.
 527                              @param x The Uint32 Array value to assign
 528                          */
 529 mike            1.11     void set(const Array<Uint32>& x);
 530 kumpf           1.53 
 531                          /**
 532                              Sets the CIMValue to the specified value and inferred type.
 533                              @param x The Sint32 Array value to assign
 534                          */
 535 mike            1.11     void set(const Array<Sint32>& x);
 536 kumpf           1.53 
 537                          /**
 538                              Sets the CIMValue to the specified value and inferred type.
 539                              @param x The Uint64 Array value to assign
 540                          */
 541 mike            1.11     void set(const Array<Uint64>& x);
 542 kumpf           1.53 
 543                          /**
 544                              Sets the CIMValue to the specified value and inferred type.
 545                              @param x The Sint64 Array value to assign
 546                          */
 547 mike            1.11     void set(const Array<Sint64>& x);
 548 kumpf           1.53 
 549                          /**
 550                              Sets the CIMValue to the specified value and inferred type.
 551                              @param x The Real32 Array value to assign
 552                          */
 553 mike            1.11     void set(const Array<Real32>& x);
 554 kumpf           1.53 
 555                          /**
 556                              Sets the CIMValue to the specified value and inferred type.
 557                              @param x The Real64 Array value to assign
 558                          */
 559 mike            1.11     void set(const Array<Real64>& x);
 560 kumpf           1.53 
 561                          /**
 562                              Sets the CIMValue to the specified value and inferred type.
 563                              @param x The Char16 Array value to assign
 564                          */
 565 mike            1.11     void set(const Array<Char16>& x);
 566 kumpf           1.53 
 567                          /**
 568                              Sets the CIMValue to the specified value and inferred type.
 569                              @param x The String Array value to assign
 570                          */
 571 mike            1.11     void set(const Array<String>& x);
 572 kumpf           1.53 
 573                          /**
 574                              Sets the CIMValue to the specified value and inferred type.
 575                              @param x The CIMDateTime Array value to assign
 576                          */
 577 mike            1.11     void set(const Array<CIMDateTime>& x);
 578 kumpf           1.53 
 579                          /**
 580                              Sets the CIMValue to the specified value and inferred type.
 581                              @param x The CIMObjectPath Array value to assign
 582                          */
 583 kumpf           1.23     void set(const Array<CIMObjectPath>& x);
 584 kumpf           1.53 
 585                          /**
 586                              Sets the CIMValue to the specified value and inferred type.
 587                              Note: The CIMObjects in the Array argument are cloned to prevent
 588                              subsequent modification through the shared representation model.
 589                              @param x The CIMObject Array value to assign
 590                              @exception UninitializedObjectException If any of the CIMObjects in the
 591                                  Array are uninitialized.
 592                          */
 593 dave.sudlik     1.41     void set(const Array<CIMObject>& x);
 594 kumpf           1.53 
 595                          /**
 596                              Sets the CIMValue to the specified value and inferred type.
 597                              Note: The CIMInstances in the Array argument are cloned to prevent
 598                              subsequent modification through the shared representation model.
 599                              @param x The CIMInstance Array value to assign
 600                              @exception UninitializedObjectException If any of the CIMInstances in
 601                                  the Array are uninitialized.
 602                          */
 603 a.dunfey        1.50     void set(const Array<CIMInstance>& x);
 604 mike            1.11 
 605 kumpf           1.53     /**
 606                              Gets the value of the CIMValue.  The caller should first verify that
 607 karl            1.58         the value is not null and may verify type to avoid the possibility of
 608                              the TypeMismatchException.  The output parameter x is NOT
 609                              updated if the value is null (isNull() == true).
 610                              <pre>
 611                                  // get with complete checking on type and nullness
 612                                  Boolean v;
 613                                  CIMValue value = property.getValue();
 614                                  if ((value.getType() == CIMTYPE_BOOLEAN) && (!value.isNull()))
 615                                      value.get(v);
 616                                  or
 617                                  // Set the value from property into v if the value is
 618                                  // of Boolean type and !isNull(). If type incorrect, generates
 619                                  // an exception.  If CIMValue is null, leaves v false. Else
 620                                  // sets Boolean value from property into v.
 621                                  Boolean v = false;
 622                                  property.getValue().get(v);
 623 karl            1.59         </pre>
 624 karl            1.58         @param x Output Boolean into which the value is stored if CIMValue
 625                                  state is not null.
 626 kumpf           1.53         @exception TypeMismatchException If the value type does not match the
 627                                  output parameter.
 628                          */
 629                          void get(Boolean& x) const;
 630 kumpf           1.31 
 631 kumpf           1.53     /**
 632                              Gets the value of the CIMValue.  The caller should first verify that
 633 karl            1.58         the value is not null and may verify type to avoid the possibility of
 634                              the TypeMismatchException.  The output parameter x is NOT
 635                              updated if the value is null (isNull() == true).
 636 karl            1.59 
 637 karl            1.58         @param x Output Uint8 into which the value is stored if CIMValue
 638                                  state is not null.
 639 kumpf           1.53         @exception TypeMismatchException If the value type does not match the
 640                                  output parameter.
 641 karl            1.13     */
 642 mike            1.11     void get(Uint8& x) const;
 643 kumpf           1.53 
 644                          /**
 645                              Gets the value of the CIMValue.  The caller should first verify that
 646 karl            1.58         the value is not null and may verify type to avoid the possibility of
 647                              the TypeMismatchException.  The output parameter x is NOT
 648                              updated if the value is null (isNull() == true).
 649                              @param x Output Sint8 into which the value is stored if CIMValue
 650                                  state is not null.
 651 kumpf           1.53         @exception TypeMismatchException If the value type does not match the
 652                                  output parameter.
 653                          */
 654 mike            1.11     void get(Sint8& x) const;
 655 kumpf           1.53 
 656                          /**
 657                              Gets the value of the CIMValue.  The caller should first verify that
 658 karl            1.58         the value is not null and may verify type to avoid the possibility of
 659                              the TypeMismatchException.  The output parameter x is NOT
 660                              updated if the value is null (isNull() == true).
 661                              @param x Output Uint16 into which the value is stored if CIMValue
 662                                  state is not null.
 663 kumpf           1.53         @exception TypeMismatchException If the value type does not match the
 664                                  output parameter.
 665                          */
 666 mike            1.11     void get(Uint16& x) const;
 667 kumpf           1.53 
 668                          /**
 669                              Gets the value of the CIMValue.  The caller should first verify that
 670 karl            1.58         the value is not null and may verify type to avoid the possibility of
 671                              the TypeMismatchException.  The output parameter x is NOT
 672                              updated if the value is null (isNull() == true).
 673                              @param x Output Sint16 into which the value is stored if CIMValue
 674                                  state is not null.
 675 kumpf           1.53         @exception TypeMismatchException If the value type does not match the
 676                                  output parameter.
 677                          */
 678 mike            1.11     void get(Sint16& x) const;
 679 kumpf           1.53 
 680                          /**
 681                              Gets the value of the CIMValue.  The caller should first verify that
 682 karl            1.58         the value is not null and may verify type to avoid the possibility of
 683                              the TypeMismatchException.  The output parameter x is NOT
 684                              updated if the value is null (isNull() == true).
 685 kumpf           1.53         <pre>
 686                                  Uint32 v;
 687                                  CIMValue value = property.getValue();
 688 karl            1.58             if ((value.getType() == CIMTYPE_SINT32) && (!value.isNull()))
 689 kumpf           1.53                 value.get(v);
 690                              </pre>
 691 karl            1.58         @param x Output Uint32 into which the value is stored if CIMValue
 692                                  state is not null.
 693 kumpf           1.53         @exception TypeMismatchException If the value type does not match the
 694                                  output parameter.
 695                          */
 696 mike            1.11     void get(Uint32& x) const;
 697 kumpf           1.53 
 698                          /**
 699                              Gets the value of the CIMValue.  The caller should first verify that
 700 karl            1.58         the value is not null and may verify type to avoid the possibility of
 701                              the TypeMismatchException.  The output parameter x is NOT
 702                              updated if the value is null (isNull() == true).
 703                              @param x Output Sint32 into which the value is stored if CIMValue
 704                                  state is not null.
 705 kumpf           1.53         @exception TypeMismatchException If the value type does not match the
 706                                  output parameter.
 707                          */
 708 mike            1.11     void get(Sint32& x) const;
 709 kumpf           1.53 
 710                          /**
 711                              Gets the value of the CIMValue.  The caller should first verify that
 712 karl            1.58         the value is not null and may verify type to avoid the possibility of
 713                              the TypeMismatchException.  The output parameter x is NOT
 714                              updated if the value is null (isNull() == true).
 715                              @param x Output Uint64 into which the value is stored if CIMValue
 716                                  state is not null.
 717 kumpf           1.53         @exception TypeMismatchException If the value type does not match the
 718                                  output parameter.
 719                          */
 720 mike            1.11     void get(Uint64& x) const;
 721 kumpf           1.53 
 722                          /**
 723                              Gets the value of the CIMValue.  The caller should first verify that
 724 karl            1.58         the value is not null and may verify type to avoid the possibility of
 725                              the TypeMismatchException.  The output parameter x is NOT
 726                              updated if the value is null (isNull() == true).
 727                              @param x Output Sint64 into which the value is stored if CIMValue
 728                                  state is not null.
 729 kumpf           1.53         @exception TypeMismatchException If the value type does not match the
 730                                  output parameter.
 731                          */
 732 mike            1.11     void get(Sint64& x) const;
 733 kumpf           1.53 
 734                          /**
 735                              Gets the value of the CIMValue.  The caller should first verify that
 736 karl            1.58         the value is not null and may verify type to avoid the possibility of
 737                              the TypeMismatchException.  The output parameter x is NOT
 738                              updated if the value is null (isNull() == true).
 739                              @param x Output Real32 into which the value is stored if CIMValue
 740                                  state is not null.
 741 kumpf           1.53         @exception TypeMismatchException If the value type does not match the
 742                                  output parameter.
 743                          */
 744 mike            1.11     void get(Real32& x) const;
 745 kumpf           1.53 
 746                          /**
 747                              Gets the value of the CIMValue.  The caller should first verify that
 748 karl            1.58         the value is not null and may verify type to avoid the possibility of
 749                              the TypeMismatchException.  The output parameter x is NOT
 750                              updated if the value is null (isNull() == true).
 751                              @param x Output Real64 into which the value is stored if CIMValue
 752                                  state is not null.
 753 kumpf           1.53         @exception TypeMismatchException If the value type does not match the
 754                                  output parameter.
 755                          */
 756 mike            1.11     void get(Real64& x) const;
 757 kumpf           1.53 
 758                          /**
 759                              Gets the value of the CIMValue.  The caller should first verify that
 760 karl            1.58         the value is not null and may verify type to avoid the possibility of
 761                              the TypeMismatchException.  The output parameter x is NOT
 762                              updated if the value is null (isNull() == true).
 763                              @param x Output Char16 into which the value is stored if CIMValue
 764                                  state is not null.
 765 kumpf           1.53         @exception TypeMismatchException If the value type does not match the
 766                                  output parameter.
 767                          */
 768 mike            1.11     void get(Char16& x) const;
 769 kumpf           1.53 
 770                          /**
 771                              Gets the value of the CIMValue.  The caller should first verify that
 772 karl            1.58         the value is not null and may verify type to avoid the possibility of
 773                              the TypeMismatchException.  The output parameter x is NOT
 774                              updated if the value is null (isNull() == true).
 775                              @param x Output String into which the value is stored if CIMValue
 776                                  state is not null.
 777 kumpf           1.53         @exception TypeMismatchException If the value type does not match the
 778                                  output parameter.
 779                          */
 780 mike            1.11     void get(String& x) const;
 781 kumpf           1.53 
 782                          /**
 783                              Gets the value of the CIMValue.  The caller should first verify that
 784 karl            1.58         the value is not null and may verify type to avoid the possibility of
 785                              the TypeMismatchException.  The output parameter x is NOT
 786                              updated if the value is null (isNull() == true).
 787                              @param x Output CIMDateTime into which the value is stored if CIMValue
 788                                  state is not null.
 789 kumpf           1.53         @exception TypeMismatchException If the value type does not match the
 790                                  output parameter.
 791                          */
 792 mike            1.11     void get(CIMDateTime& x) const;
 793 kumpf           1.53 
 794                          /**
 795                              Gets the value of the CIMValue.  The caller should first verify that
 796 karl            1.58         the value is not null and may verify type to avoid the possibility of
 797                              the TypeMismatchException.  The output parameter x is NOT
 798                              updated if the value is null (isNull() == true).).
 799                              @param x Output CIMObjectPath into which the value is stored if
 800                                  CIMValue state is not null.
 801 kumpf           1.53         @exception TypeMismatchException If the value type does not match the
 802                                  output parameter.
 803                          */
 804 kumpf           1.23     void get(CIMObjectPath& x) const;
 805 kumpf           1.53 
 806                          /**
 807                              Gets the value of the CIMValue.  The caller should first verify that
 808 karl            1.58         the value is not null and may verify type to avoid the possibility of
 809                              the TypeMismatchException.  The output parameter x is NOT
 810                              updated if the value is null (isNull() == true).
 811                              @param x Output CIMObject into which the value is stored if CIMValue
 812                                  state is not null.
 813 kumpf           1.53         @exception TypeMismatchException If the value type does not match the
 814                                  output parameter.
 815                          */
 816 dave.sudlik     1.41     void get(CIMObject& x) const;
 817 kumpf           1.53 
 818                          /**
 819                              Gets the value of the CIMValue.  The caller should first verify that
 820 karl            1.58         the value is not null and may verify type to avoid the possibility of
 821                              the TypeMismatchException.  The output parameter x is NOT
 822                              updated if the value is null (isNull() == true).
 823                              @param x Output CIMInstance into which the value is stored if CIMValue
 824                                  state is not null.
 825 kumpf           1.53         @exception TypeMismatchException If the value type does not match the
 826                                  output parameter.
 827                          */
 828 a.dunfey        1.50     void get(CIMInstance& x) const;
 829 kumpf           1.53 
 830                          /**
 831                              Gets the value of the CIMValue.  The caller should first verify that
 832 karl            1.58         the value is not null and may verify type to avoid the possibility of
 833                              the TypeMismatchException.  The output parameter x is NOT
 834                              updated if the value is null (isNull() == true).
 835                              @param x Output Boolean Array into which the value is stored if
 836                                  CIMValue state is not null.
 837 kumpf           1.53         @exception TypeMismatchException If the value type does not match the
 838                                  output parameter.
 839                          */
 840 mike            1.11     void get(Array<Boolean>& x) const;
 841 kumpf           1.53 
 842                          /**
 843                              Gets the value of the CIMValue.  The caller should first verify that
 844 karl            1.58         the value is not null and may verify type to avoid the possibility of
 845                              the TypeMismatchException.  The output parameter x is NOT
 846                              updated if the value is null (isNull() == true).
 847                              @param x Output Uint8 Array into which the value is stored if CIMValue
 848                                  state is not null.
 849 kumpf           1.53         @exception TypeMismatchException If the value type does not match the
 850                                  output parameter.
 851                          */
 852 mike            1.11     void get(Array<Uint8>& x) const;
 853 kumpf           1.53 
 854                          /**
 855                              Gets the value of the CIMValue.  The caller should first verify that
 856 karl            1.58         the value is not null and may verify type to avoid the possibility of
 857                              the TypeMismatchException.  The output parameter x is NOT
 858                              updated if the value is null (isNull() == true).
 859                              @param x Output Sint8 Array into which the value is stored if CIMValue
 860                                  state is not null.
 861 kumpf           1.53         @exception TypeMismatchException If the value type does not match the
 862                                  output parameter.
 863                          */
 864 mike            1.11     void get(Array<Sint8>& x) const;
 865 kumpf           1.53 
 866                          /**
 867                              Gets the value of the CIMValue.  The caller should first verify that
 868 karl            1.58         the value is not null and may verify type to avoid the possibility of
 869                              the TypeMismatchException.  The output parameter x is NOT
 870                              updated if the value is null (isNull() == true).).
 871                              @param x Output Uint16 Array into which the value is stored if CIMValue
 872                                  state is not null.
 873 kumpf           1.53         @exception TypeMismatchException If the value type does not match the
 874                                  output parameter.
 875                          */
 876 mike            1.11     void get(Array<Uint16>& x) const;
 877 kumpf           1.53 
 878                          /**
 879                              Gets the value of the CIMValue.  The caller should first verify that
 880 karl            1.58         the value is not null and may verify type to avoid the possibility of
 881                              the TypeMismatchException.  The output parameter x is NOT
 882                              updated if the value is null (isNull() == true).
 883                              @param x Output Sint16 Array into which the value is stored if CIMValue
 884                                  state is not null.
 885 kumpf           1.53         @exception TypeMismatchException If the value type does not match the
 886                                  output parameter.
 887                          */
 888 mike            1.11     void get(Array<Sint16>& x) const;
 889 kumpf           1.53 
 890                          /**
 891                              Gets the value of the CIMValue.  The caller should first verify that
 892 karl            1.58         the value is not null and may verify type to avoid the possibility of
 893                              the TypeMismatchException.  The output parameter x is NOT
 894                              updated if the value is null (isNull() == true).
 895                              @param x Output Uint32 Array into which the value is stored if CIMValue
 896                                  state is not null.
 897 kumpf           1.53         @exception TypeMismatchException If the value type does not match the
 898                                  output parameter.
 899                          */
 900 mike            1.11     void get(Array<Uint32>& x) const;
 901 kumpf           1.53 
 902                          /**
 903                              Gets the value of the CIMValue.  The caller should first verify that
 904 karl            1.58         the value is not null and may verify type to avoid the possibility of
 905                              the TypeMismatchException.  The output parameter x is NOT
 906                              updated if the value is null (isNull() == true).
 907                              @param x Output Sint32 Array into which the value is stored if CIMValue
 908                                  state is not null.
 909 kumpf           1.53         @exception TypeMismatchException If the value type does not match the
 910                                  output parameter.
 911                          */
 912 mike            1.11     void get(Array<Sint32>& x) const;
 913 kumpf           1.53 
 914                          /**
 915                              Gets the value of the CIMValue.  The caller should first verify that
 916 karl            1.58         the value is not null and may verify type to avoid the possibility of
 917                              the TypeMismatchException.  The output parameter x is NOT
 918                              updated if the value is null (isNull() == true).
 919                              @param x Output Uint64 Array into which the value is stored if CIMValue
 920                                  state is not null.
 921 kumpf           1.53         @exception TypeMismatchException If the value type does not match the
 922                                  output parameter.
 923                          */
 924 mike            1.11     void get(Array<Uint64>& x) const;
 925 kumpf           1.53 
 926                          /**
 927                              Gets the value of the CIMValue.  The caller should first verify that
 928 karl            1.58         the value is not null and may verify type to avoid the possibility of
 929                              the TypeMismatchException.  The output parameter x is NOT
 930                              updated if the value is null (isNull() == true).
 931                              @param x Output Sint64 Array into which the value is stored if CIMValue
 932                                  state is not null.
 933 kumpf           1.53         @exception TypeMismatchException If the value type does not match the
 934                                  output parameter.
 935                          */
 936 mike            1.11     void get(Array<Sint64>& x) const;
 937 kumpf           1.53 
 938                          /**
 939                              Gets the value of the CIMValue.  The caller should first verify that
 940 karl            1.58         the value is not null and may verify type to avoid the possibility of
 941                              the TypeMismatchException.  The output parameter x is NOT
 942                              updated if the value is null (isNull() == true).
 943                              @param x Output Real32 Array into which the value is stored if CIMValue
 944                                  state is not null.
 945 kumpf           1.53         @exception TypeMismatchException If the value type does not match the
 946                                  output parameter.
 947                          */
 948 mike            1.11     void get(Array<Real32>& x) const;
 949 kumpf           1.53 
 950                          /**
 951                              Gets the value of the CIMValue.  The caller should first verify that
 952 karl            1.58         the value is not null and may verify type to avoid the possibility of
 953                              the TypeMismatchException.  The output parameter x is NOT
 954                              updated if the value is null (isNull() == true).
 955                              @param x Output Real64 Array into which the value is stored if CIMValue
 956                                  state is not null.
 957 kumpf           1.53         @exception TypeMismatchException If the value type does not match the
 958                                  output parameter.
 959                          */
 960 mike            1.11     void get(Array<Real64>& x) const;
 961 kumpf           1.53 
 962                          /**
 963                              Gets the value of the CIMValue.  The caller should first verify that
 964 karl            1.58         the value is not null and may verify type to avoid the possibility of
 965                              the TypeMismatchException.  The output parameter x is NOT
 966                              updated if the value is null (isNull() == true).
 967                              @param x Output Char16 Array into which the value is stored if CIMValue
 968                                  state is not null.
 969 kumpf           1.53         @exception TypeMismatchException If the value type does not match the
 970                                  output parameter.
 971                          */
 972 mike            1.11     void get(Array<Char16>& x) const;
 973 kumpf           1.53 
 974                          /**
 975                              Gets the value of the CIMValue.  The caller should first verify that
 976 karl            1.58         the value is not null and may verify type to avoid the possibility of
 977                              the TypeMismatchException.  The output parameter x is NOT
 978                              updated if the value is null (isNull() == true).
 979                              @param x Output String Array into which the value is stored if CIMValue
 980                                  state is not null.
 981 kumpf           1.53         @exception TypeMismatchException If the value type does not match the
 982                                  output parameter.
 983                          */
 984 mike            1.11     void get(Array<String>& x) const;
 985 kumpf           1.53 
 986                          /**
 987                              Gets the value of the CIMValue.  The caller should first verify that
 988 karl            1.58         the value is not null and may verify type to avoid the possibility of
 989                              the TypeMismatchException.  The output parameter x is NOT
 990                              updated if the value is null (isNull() == true).
 991                              @param x Output CIMDateTime Array into which the value is stored if
 992                                  CIMValue state is not null.
 993 kumpf           1.53         @exception TypeMismatchException If the value type does not match the
 994                                  output parameter.
 995                          */
 996 kumpf           1.51     void get(Array<CIMDateTime>& x) const;
 997 kumpf           1.53 
 998                          /**
 999                              Gets the value of the CIMValue.  The caller should first verify that
1000 karl            1.58         the value is not null and may verify type to avoid the possibility of
1001                              the TypeMismatchException.  The output parameter x is NOT
1002                              updated if the value is null (isNull() == true).
1003                              @param x Output CIMObjectPath Array into which the value is stored if
1004                                  CIMValue state is not null.
1005 kumpf           1.53         @exception TypeMismatchException If the value type does not match the
1006                                  output parameter.
1007                          */
1008 kumpf           1.51     void get(Array<CIMObjectPath>& x) const;
1009 kumpf           1.53 
1010                          /**
1011                              Gets the value of the CIMValue.  The caller should first verify that
1012 karl            1.58         the value is not null and may verify type to avoid the possibility of
1013                              the TypeMismatchException.  The output parameter x is NOT
1014                              updated if the value is null (isNull() == true).
1015                              @param x Output CIMObject Array into which the value is stored if
1016                                  CIMValue state is not null.
1017 kumpf           1.53         @exception TypeMismatchException If the value type does not match the
1018                                  output parameter.
1019                          */
1020 kumpf           1.51     void get(Array<CIMObject>& x) const;
1021 kumpf           1.53 
1022                          /**
1023                              Gets the value of the CIMValue.  The caller should first verify that
1024 karl            1.58         the value is not null and may verify type to avoid the possibility of
1025                              the TypeMismatchException.  The output parameter x is NOT
1026                              updated if the value is null (isNull() == true).
1027                              @param x Output CIMInstance Array into which the value is stored if
1028                                  CIMValue state is not null.
1029 kumpf           1.53         @exception TypeMismatchException If the value type does not match the
1030                                  output parameter.
1031                          */
1032 kumpf           1.51     void get(Array<CIMInstance>& x) const;
1033 mike            1.11 
1034 kumpf           1.53     /**
1035                              Compares with another CIMValue object for equality.
1036                              @param x The CIMValue with which to compare
1037                              @return A Boolean indicating whether they are identical in type,
1038                                  array attributes, and value.
1039 kumpf           1.27     */
1040                          Boolean equal(const CIMValue& x) const;
1041 kumpf           1.20 
1042 kumpf           1.53     /**
1043                              Converts a CIMValue to a String.  This method should only be
1044                              used for diagnostic output purposes.  To get an actual String value,
1045                              use get(String &).
1046                              @return A String representation of the value.
1047 kumpf           1.44     */
1048 mike            1.11     String toString() const;
1049                      
1050 david.dillard   1.43 #ifdef PEGASUS_USE_DEPRECATED_INTERFACES
1051 kumpf           1.44     /**
1052                              <I><B>Deprecated Interface</B></I><BR>
1053 kumpf           1.53         Constructs a CIMValue with the specified value and type Sint8.
1054                              (Note: This constructor exists solely to support binary compatibility
1055                              with a previous definition of the Sint8 type.)
1056                              @param x The Sint8 value to assign
1057 kumpf           1.44     */
1058 david.dillard   1.43     CIMValue(char x);
1059                      
1060 kumpf           1.44     /**
1061                              <I><B>Deprecated Interface</B></I><BR>
1062 kumpf           1.53         Constructs a CIMValue with the specified value and type Sint8 Array.
1063                              (Note: This constructor exists solely to support binary compatibility
1064                              with a previous definition of the Sint8 type.)
1065                              @param x The Sint8 Array value to assign
1066 kumpf           1.44     */
1067 david.dillard   1.43     CIMValue(const Array<char>& x);
1068                      
1069 kumpf           1.44     /**
1070                              <I><B>Deprecated Interface</B></I><BR>
1071 kumpf           1.53         Sets the CIMValue to the specified value and type Sint8.
1072                              (Note: This method exists solely to support binary compatibility with
1073                              a previous definition of the Sint8 type.)
1074                              @param x The value to assign
1075 kumpf           1.44     */
1076 david.dillard   1.43     void set(char x);
1077                      
1078 kumpf           1.44     /**
1079                              <I><B>Deprecated Interface</B></I><BR>
1080 kumpf           1.53         Sets the CIMValue to the specified value and type Sint8 Array.
1081                              (Note: This method exists solely to support binary compatibility with
1082                              a previous definition of the Sint8 type.)
1083                              @param x The Array value to assign
1084 kumpf           1.44     */
1085 david.dillard   1.43     void set(const Array<char>& x);
1086                      
1087 kumpf           1.44     /**
1088                              <I><B>Deprecated Interface</B></I><BR>
1089 kumpf           1.53         Gets the Sint8 value of the CIMValue.  The caller should first verify
1090 karl            1.58         that the value is of the expected type and is not null.  The output
1091                              parameter x is not updated if the value is null (isNull() == true).
1092 kumpf           1.53         (Note: This method exists solely to support binary compatibility with
1093                              a previous definition of the Sint8 type.)
1094                              @param x Output variable into which the value is stored.
1095 kumpf           1.44     */
1096 david.dillard   1.43     void get(char& x) const;
1097                      
1098 kumpf           1.44     /**
1099                              <I><B>Deprecated Interface</B></I><BR>
1100 kumpf           1.53         Gets the Sint8 Array value of the CIMValue.  The caller should first
1101                              verify that the value is of the expected type and is not null.  The
1102 karl            1.58         output parameter x is not updated if the value is null
1103                              (isNull() == true).
1104 kumpf           1.53         (Note: This method exists solely to support binary compatibility with
1105                              a previous definition of the Sint8 type.)
1106                              @param x Output Array variable into which the value is stored.
1107 kumpf           1.44     */
1108 david.dillard   1.43     void get(Array<char>& x) const;
1109                      #endif
1110                      
1111 mike            1.11 private:
1112                      
1113 mike            1.47     void _get(const String*& data, Uint32& size) const;
1114                      
1115 a.arora         1.37     CIMValueRep* _rep;
1116 mike            1.11 
1117                          friend class CIMMethodRep;
1118                          friend class CIMParameterRep;
1119                          friend class CIMPropertyRep;
1120                          friend class CIMQualifierRep;
1121                          friend class CIMQualifierDeclRep;
1122 schuur          1.38     friend class BinaryStreamer;
1123 mike            1.47     friend class XmlWriter;
1124 thilo.boehm     1.57     friend class SCMOClass;
1125                          friend class SCMOInstance;
1126 mike            1.11 };
1127 kumpf           1.18 
1128 kumpf           1.53 /**
1129                          Compares two CIMValue objects for equality.
1130                          @param x First CIMValue to compare
1131                          @param y Second CIMValue to compare
1132                          @return A Boolean indicating whether they are identical in type, array
1133                              attributes, and value.
1134 karl            1.17 */
1135 mike            1.11 PEGASUS_COMMON_LINKAGE Boolean operator==(const CIMValue& x, const CIMValue& y);
1136                      
1137 kumpf           1.53 /**
1138                          Compares two CIMValue objects for inequality.
1139                          @param x First CIMValue to compare
1140                          @param y Second CIMValue to compare
1141                          @return A Boolean indicating whether they are NOT identical in type, array
1142                              attributes, and value.
1143 karl            1.17 */
1144 kumpf           1.18 PEGASUS_COMMON_LINKAGE Boolean operator!=(const CIMValue& x, const CIMValue& y);
1145 mike            1.11 
1146                      #define PEGASUS_ARRAY_T CIMValue
1147 kumpf           1.24 # include <Pegasus/Common/ArrayInter.h>
1148 mike            1.11 #undef PEGASUS_ARRAY_T
1149                      
1150                      PEGASUS_NAMESPACE_END
1151                      
1152 mike            1.48 #ifdef PEGASUS_INTERNALONLY
1153                      #include <Pegasus/Common/CIMValueInline.h>
1154                      #endif
1155                      
1156 mike            1.11 #endif /* Pegasus_Value_h */

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2