Line data Source code
1 : /* 2 : * Copyright (c) 2016 Juniper Networks, Inc. All rights reserved. 3 : */ 4 : 5 : #ifndef vnsw_agent_vrf_index_resource_hpp 6 : #define vnsw_agent_vrf_index_resource_hpp 7 : 8 : /* 9 : * vrf index allocator using index_vector 10 : */ 11 : #include <oper/interface.h> 12 : #include <resource_manager/index_resource.h> 13 : #include <resource_manager/resource_backup.h> 14 : 15 : class ResourceManager; 16 : class ResourceKey; 17 : 18 : class VrfIndexResourceKey : public IndexResourceKey { 19 : public: 20 : VrfIndexResourceKey(ResourceManager *rm, 21 : const string &vrf_name); 22 24 : virtual ~VrfIndexResourceKey() {}; 23 : virtual void Backup(ResourceData *data, uint16_t op); 24 : virtual bool IsLess(const ResourceKey &rhs) const; 25 : private: 26 : std::string vrf_name_; 27 : }; 28 : #endif