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

Diff for /pegasus/src/Pegasus/Common/CIMFlavor.h between version 1.6 and 1.18

version 1.6, 2001/07/10 06:43:22 version 1.18, 2003/03/12 21:02:53
Line 1 
Line 1 
 //%///////////////////////////////////////////////////////////////////////////// //%/////////////////////////////////////////////////////////////////////////////
 // //
 // Copyright (c) 2000, 2001 The Open group, BMC Software, Tivoli Systems, IBM  // Copyright (c) 2000, 2001, 2002 BMC Software, Hewlett-Packard Company, IBM,
   // The Open Group, Tivoli Systems
 // //
 // Permission is hereby granted, free of charge, to any person obtaining a copy // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to // of this software and associated documentation files (the "Software"), to
Line 22 
Line 23 
 // //
 // Author: Mike Brasher (mbrasher@bmc.com) // Author: Mike Brasher (mbrasher@bmc.com)
 // //
 // Modified By:  // Modified By:  Karl Schopmeyer(k.schopmeyer@opengroup.org)
   //               Roger Kumpf, Hewlett-Packard Company (roger_kumpf@hp.com)
   //              Carol Ann Krug Graves, Hewlett-Packard Company
   //                (carolann_graves@hp.com)
 // //
 //%///////////////////////////////////////////////////////////////////////////// //%/////////////////////////////////////////////////////////////////////////////
  
 /*  
   
  CIMFlavor.h -- This file declares qualifier flavor constants.  
   
 */  
   
 #ifndef Pegasus_Flavor_h #ifndef Pegasus_Flavor_h
 #define Pegasus_Flavor_h #define Pegasus_Flavor_h
  
 #include <Pegasus/Common/Config.h> #include <Pegasus/Common/Config.h>
 #include <Pegasus/Common/Array.h>  
 #include <Pegasus/Common/String.h> #include <Pegasus/Common/String.h>
   #include <Pegasus/Common/Linkage.h>
  
 PEGASUS_NAMESPACE_BEGIN PEGASUS_NAMESPACE_BEGIN
   
 /** /**
 CIMQualifier flavor constants      The CIMFlavor class implements the concept of the CIM qualifier flavor.
       The qualifier flavor concept encapsulates the propagation and override
       rules for the qualifier.  The propagation rules define whether a qualifier
       may be propagated from classes to derived classes, or from classes to
       instances.  The override rules define whether or not derived classes may
       override a qualifier value, or whether it must be fixed for an entire
       class hierarchy.
   
       The possible values are: OVERRIDABLE, TOSUBCLASS, TOINSTANCE,
       TRANSLATABLE, DISABLEOVERRIDE, RESTRICTED.
       The flavor is a set of zero or more of these possible values.
 */ */
 struct PEGASUS_COMMON_LINKAGE CIMFlavor  class PEGASUS_COMMON_LINKAGE CIMFlavor
 { {
     static const Uint32 NONE;  public:
     static const Uint32 OVERRIDABLE;  
     static const Uint32 TOSUBCLASS;  
     static const Uint32 TOINSTANCE;  
     static const Uint32 TRANSLATABLE;  
  
     // These are the defaults according to the CIM DTD:      /**
     // OVERRIDABLE, TOSUBCLASS          Constructs a CIMFlavor object with no flavor values set (default
           constructor).
        */
       CIMFlavor ();
  
     static const Uint32 DEFAULTS;      /**
 };          Constructs a CIMFlavor object from an existing CIMFlavor object (copy
           constructor).
   
           @param   flavor  another CIMFlavor object.
        */
       CIMFlavor (const CIMFlavor & flavor);
   
       /**
           Assigns the value of one CIMFlavor object to another (assignment
           operator).
   
           @param   flavor   a CIMFlavor object.
   
           @return  the CIMFlavor object
        */
       CIMFlavor & operator= (const CIMFlavor & flavor);
   
       /**
           Adds the set of flavor values of the specified CIMFlavor object to this
           CIMFlavor object.
   
           @param   flavor  a CIMFlavor object.
        */
       void addFlavor (const CIMFlavor & flavor);
   
       /**
           Removes the specified set of flavor values from the CIMFlavor object.
   
           @param   flavor   a CIMFlavor representing the flavor
                             values to be removed.
        */
       void removeFlavor (const CIMFlavor & flavor);
   
       /**
           Determines if every value in the specified CIMFlavor object is included
           in this CIMFlavor object.
   
           @param   flavor  a CIMFlavor object.
   
           @return  true if every value in the specified CIMFlavor object is
                    included in the CIMFlavor object, false otherwise.
        */
       Boolean hasFlavor (const CIMFlavor & flavor) const;
   
       /**
           Compares two CIMFlavor objects.
   
           @param   flavor  a CIMFlavor object.
   
           @return true if the two CIMFlavor objects are equal,
                   false otherwise.
        */
       Boolean equal (const CIMFlavor & flavor) const;
   
       /**
           Combines two CIMFlavor objects.
   
           @param   flavor   a CIMFlavor object to add.
  
 PEGASUS_COMMON_LINKAGE String FlavorToString(Uint32 scope);          @return A new CIMFlavor object that represents the combination of this
                   flavor with the specified flavor.
        */
       CIMFlavor operator+ (const CIMFlavor & flavor) const;
   
       /**
           Returns a String representation of the CIMFlavor object.
           This method is for diagnostic purposes.  The format of the output
           is subject to change.
        */
       String toString () const;
   
       /**
           Indicates that the qualifier has no flavors.
        */
       static const CIMFlavor NONE;
   
       /**
           Indicates that the qualifier may be overridden.
        */
       static const CIMFlavor OVERRIDABLE;
       static const CIMFlavor ENABLEOVERRIDE;
   
       /**
           Indicates that the qualifier may not be overridden.
        */
       static const CIMFlavor DISABLEOVERRIDE;
   
       /**
           Indicates that the qualifier is propagated to the qualifier in the
           subclass with the same name.
        */
       static const CIMFlavor TOSUBCLASS;
   
       /**
           Indicates that the qualifier is not propagated to the qualifier in the
           subclass with the same name; it applies only to the class in which it
           is declared.
        */
       static const CIMFlavor RESTRICTED;
  
 PEGASUS_COMMON_LINKAGE void FlavorToXml(      /**
     Array<Sint8>& out,          Indicates that the qualifier is propagated to the qualifier in the
     Uint32 flavor);          instance with the same name.
        */
       static const CIMFlavor TOINSTANCE;
   
       /**
           Indicates that the qualifier is translatable (for internationalization).
        */
       static const CIMFlavor TRANSLATABLE;
   
       /**
           Indicates default flavor setting (OVERRIDABLE | TOSUBCLASS).
        */
       static const CIMFlavor DEFAULTS;
   
       /**
           Indicates both toSubclass and toInstance (TOSUBCLASS | TOINSTANCE).
        */
       static const CIMFlavor TOSUBELEMENTS;
   
   private:
   
       /**
           Constructs a CIMFlavor object with the specified set of values.
   
           @param   flavor    a Uint32 representing the set of flavor
                              values to initialize with.
        */
       CIMFlavor (const Uint32 flavor);
   
       Uint32 cimFlavor;
   };
  
 PEGASUS_NAMESPACE_END PEGASUS_NAMESPACE_END
  


Legend:
Removed from v.1.6  
changed lines
  Added in v.1.18

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2