Line data Source code
1 : /* 2 : * Copyright (c) 2013 Juniper Networks, Inc. All rights reserved. 3 : */ 4 : 5 : #ifndef __AGENT_OPER_GLOBAL_QOS_CONFIG_H 6 : #define __AGENT_OPER_GLOBAL_QOS_CONFIG_H 7 : 8 : #include <cmn/agent_cmn.h> 9 : #include <oper/oper_db.h> 10 : 11 : class IFMapNode; 12 : class GlobalQosConfig : public OperIFMapTable { 13 : public: 14 : static const uint8_t kInvalidDscp = 0xFF; 15 : GlobalQosConfig(Agent *agent); 16 : virtual ~GlobalQosConfig(); 17 : 18 : void ConfigDelete(IFMapNode *node); 19 : void ConfigAddChange(IFMapNode *node); 20 : void ConfigManagerEnqueue(IFMapNode *node); 21 9 : uint8_t control_dscp() const { return control_dscp_; } 22 1 : uint8_t dns_dscp() const { return dns_dscp_; } 23 : uint8_t analytics_dscp() const { return analytics_dscp_; } 24 : private: 25 : void ResetDscp(); 26 : void SetDnsDscp(uint8_t value); 27 : uint8_t control_dscp_; 28 : uint8_t dns_dscp_; 29 : uint8_t analytics_dscp_; 30 : 31 : DISALLOW_COPY_AND_ASSIGN(GlobalQosConfig); 32 : }; 33 : #endif