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