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

 1 karl  1.19 //%2005////////////////////////////////////////////////////////////////////////
 2 mike  1.8  //
 3 karl  1.17 // Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development
 4            // Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems.
 5            // Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L.P.;
 6 karl  1.16 // IBM Corp.; EMC Corporation, The Open Group.
 7 karl  1.17 // Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.;
 8            // IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group.
 9 karl  1.19 // Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.;
10            // EMC Corporation; VERITAS Software Corporation; The Open Group.
11 mike  1.8  //
12            // Permission is hereby granted, free of charge, to any person obtaining a copy
13 kumpf 1.14 // of this software and associated documentation files (the "Software"), to
14            // deal in the Software without restriction, including without limitation the
15            // rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
16 mike  1.8  // sell copies of the Software, and to permit persons to whom the Software is
17            // furnished to do so, subject to the following conditions:
18            // 
19 kumpf 1.14 // THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
20 mike  1.8  // ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
21            // "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
22 kumpf 1.14 // LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
23            // PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
24            // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
25 mike  1.8  // ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
26            // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
27            //
28            //==============================================================================
29            //
30            // Author: Mike Brasher (mbrasher@bmc.com)
31            //
32 kumpf 1.10 // Modified By: Roger Kumpf, Hewlett-Packard Company (roger_kumpf@hp.com)
33 dave.sudlik 1.18 //              Dave Sudlik, IBM (dsudlik@us.ibm.com)
34 mike        1.8  //
35                  //%/////////////////////////////////////////////////////////////////////////////
36                  
37                  #ifndef Pegasus_Union_h
38                  #define Pegasus_Union_h
39                  
40                  #include <Pegasus/Common/Config.h>
41                  #include <Pegasus/Common/CIMType.h>
42                  #include <Pegasus/Common/String.h>
43                  #include <Pegasus/Common/CIMDateTime.h>
44 kumpf       1.12 #include <Pegasus/Common/CIMObjectPath.h>
45 dave.sudlik 1.18 #include <Pegasus/Common/CIMObject.h>
46 mike        1.8  #include <Pegasus/Common/Array.h>
47                  
48                  PEGASUS_NAMESPACE_BEGIN
49                  
50                  /** This union is used to represent the values of properties, qualifiers,
51                      method return values, and method arguments. All of the types
52                      defined in CIMType.h are represented by a Union. The 
53                      Union is used as the the basis for the CIMValue implementation.
54                  */
55                  union Union
56                  {
57                      Uint8 _booleanValue;
58                      Uint8 _uint8Value;
59                      Sint8 _sint8Value;
60                      Uint16 _uint16Value;
61                      Sint16 _sint16Value;
62                      Uint32 _uint32Value;
63                      Sint32 _sint32Value;
64                      Uint64 _uint64Value;
65                      Sint64 _sint64Value;
66                      Real32 _real32Value;
67 mike        1.8      Real64 _real64Value;
68                      Uint16 _char16Value;
69 kumpf       1.11     String* _stringValue;
70 mike        1.8      CIMDateTime* _dateTimeValue;
71 kumpf       1.12     CIMObjectPath* _referenceValue;
72 dave.sudlik 1.18     CIMObject* _objectValue;
73 mike        1.8  
74 kumpf       1.13     Array<Boolean>* _booleanArray;
75                      Array<Uint8>* _uint8Array;
76                      Array<Sint8>* _sint8Array;
77                      Array<Uint16>* _uint16Array;
78                      Array<Sint16>* _sint16Array;
79                      Array<Uint32>* _uint32Array;
80                      Array<Sint32>* _sint32Array;
81                      Array<Uint64>* _uint64Array;
82                      Array<Sint64>* _sint64Array;
83                      Array<Real32>* _real32Array;
84                      Array<Real64>* _real64Array;
85                      Array<Char16>* _char16Array;
86                      Array<String>* _stringArray;
87                      Array<CIMDateTime>* _dateTimeArray;
88                      Array<CIMObjectPath>* _referenceArray;
89 dave.sudlik 1.18     Array<CIMObject>* _objectArray;
90 mike        1.8  };
91                  
92                  PEGASUS_NAMESPACE_END
93                  
94                  #endif /* Pegasus_Union_h */

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2