]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/librbd/exclusive_lock/StandardPolicy.h
update source to Ceph Pacific 16.2.2
[ceph.git] / ceph / src / librbd / exclusive_lock / StandardPolicy.h
index c756db4f94abd1ae7152190cbd3c10026746f21b..dd4e19050ce46727297f4a2f2aad0b3c95bd797d 100644 (file)
@@ -12,9 +12,10 @@ struct ImageCtx;
 
 namespace exclusive_lock {
 
+template <typename ImageCtxT = ImageCtx>
 class StandardPolicy : public Policy {
 public:
-  StandardPolicy(ImageCtx *image_ctx) : m_image_ctx(image_ctx) {
+  StandardPolicy(ImageCtxT* image_ctx) : m_image_ctx(image_ctx) {
   }
 
   bool may_auto_request_lock() override {
@@ -24,11 +25,13 @@ public:
   int lock_requested(bool force) override;
 
 private:
-  ImageCtx *m_image_ctx;
+  ImageCtxT* m_image_ctx;
 
 };
 
 } // namespace exclusive_lock
 } // namespace librbd
 
+extern template class librbd::exclusive_lock::StandardPolicy<librbd::ImageCtx>;
+
 #endif // CEPH_LIBRBD_EXCLUSIVE_LOCK_STANDARD_POLICY_H