// Copyright (c) 2005 DMTF.  All rights reserved.
   [Version ( "2.7.0" ), 
    UMLPackagePath ( "CIM::Network::QoS" ), 
    Description ( 
       "This class is a subclass of the abstract class "
       "SchedulingElement. It introduces a new property, "
       "WeightingFactor, to give some inputs a higher probability of "
       "being serviced than other inputs. It also introduces a "
       "Priority property, to serve as a tiebreaker to be used when "
       "inputs have equal weighting factors. As is the case with all "
       "subclasses of SchedulingElement, the input associated with an "
       "instance of WRRSchedulingElement is of one of two types: "
       "either a queue, or another scheduler. Because scheduling of "
       "this type is always work conserving, the inherited boolean "
       "property, WorkConserving, is restricted to TRUE in this class." )]
class CIM_WRRSchedulingElement : CIM_SchedulingElement {

      [Override ( "WorkConserving" )]
   boolean WorkConserving = true;

      [Description ( 
          "A 32-bit bit unsigned integer defining the weighting "
          "factor that offers some inputs a higher probability of "
          "being serviced than other inputs. The property\'s "
          "minimum value is 0, its maximum value is 100000, and its "
          "Units are thousandths." ), 
       Units ( "Thousandths" ), 
       MinValue ( 0 ), 
       MaxValue ( 100000 )]
   uint32 WeightingFactor;

      [Description ( 
          "A 16-bit bit unsigned integer which serves as a "
          "tiebreaker, in the event that two or more inputs have "
          "equal weights. A larger value represents a higher "
          "priority. While this condition may not occur in some "
          "implementations of a weighted round robin scheduler, "
          "many implementations require a priority to resolve an "
          "equal-weight condition. In the instances where this "
          "behavior is not necessary or is undesirable, the "
          "property may be left unspecified. \n"
          "\n"
          "If this property is specified for any of the "
          "WRRSchedulingElements associated with a "
          "PacketSchedulingService, then it MUST be specified for "
          "all WRRSchedulingElements for that "
          "PacketSchedulingService, and the property values for "
          "these WRRSchedulingElements MUST all be different." )]
   uint16 Priority;


};
