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

 1 mike  1.14 //%/////////////////////////////////////////////////////////////////////////////
 2            //
 3            // Copyright (c) 2000, 2001 The Open group, BMC Software, Tivoli Systems, IBM
 4            //
 5            // Permission is hereby granted, free of charge, to any person obtaining a copy
 6            // of this software and associated documentation files (the "Software"), to 
 7            // deal in the Software without restriction, including without limitation the 
 8            // rights to use, copy, modify, merge, publish, distribute, sublicense, and/or 
 9            // sell copies of the Software, and to permit persons to whom the Software is
10            // furnished to do so, subject to the following conditions:
11            // 
12            // THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN 
13            // ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
14            // "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
15            // LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR 
16            // PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 
17            // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN 
18            // ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
19            // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
20            //
21            //==============================================================================
22 mike  1.14 //
23            // Author: Mike Brasher (mbrasher@bmc.com)
24            //
25            // Modified By:
26            //
27            //%/////////////////////////////////////////////////////////////////////////////
28            
29            #ifndef Pegasus_QualifierList_h
30            #define Pegasus_QualifierList_h
31            
32            #include <Pegasus/Common/Config.h>
33            #include <Pegasus/Common/CIMQualifier.h>
34            #include <Pegasus/Common/Array.h>
35            #include <Pegasus/Common/Pair.h>
36            
37            PEGASUS_NAMESPACE_BEGIN
38            
39            class DeclContext;
40            
41            class PEGASUS_COMMON_LINKAGE CIMQualifierList
42            {
43 mike  1.14 public:
44            
45                CIMQualifierList();
46            
47                ~CIMQualifierList();
48            
49                CIMQualifierList& add(const CIMQualifier& qualifier);
50            
51                Uint32 getCount() const
52                {
53            	return _qualifiers.size(); 
54                }
55            
56                CIMQualifier& getQualifier(Uint32 pos);
57            
58                const CIMQualifier& getQualifier(Uint32 pos) const
59                {
60            	return _qualifiers[pos]; 
61                }
62                // ATTN: KS 18 may 2001
63                /** removeQualifier - Removes the Qualifier defined by
64 mike  1.14     the pos parameter
65                @exception Throws "OutOfBounds" if pos not within
66                range of current qualifiers.
67                */
68                void removeQualifier(Uint32 pos);
69                
70                Uint32 find(const String& name) const;
71            
72                Uint32 findReverse(const String& name) const;
73            
74                void resolve(
75            	DeclContext* declContext,
76            	const String& nameSpace,
77            	Uint32 scope,
78            	Boolean isInstancePart,
79            	CIMQualifierList& inheritedQualifiers);
80            
81                void toXml(Array<Sint8>& out) const;
82            
83                void print(PEGASUS_STD(ostream) &o=PEGASUS_STD(cout)) const;
84            
85 mike  1.14     Boolean identical(const CIMQualifierList& x) const;
86            
87                void cloneTo(CIMQualifierList& x) const;
88            
89            private:
90            
91                Array<CIMQualifier> _qualifiers;
92            };
93            
94            PEGASUS_NAMESPACE_END
95            
96            #endif /* Pegasus_QualifierList_h */

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2