]> git.proxmox.com Git - ceph.git/blame - ceph/src/crimson/osd/osdmap_service.h
import quincy beta 17.1.0
[ceph.git] / ceph / src / crimson / osd / osdmap_service.h
CommitLineData
11fdf7f2
TL
1// -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*-
2// vim: ts=8 sw=2 smarttab
3
4#pragma once
5
6#include <boost/smart_ptr/local_shared_ptr.hpp>
7
8#include "include/types.h"
9
10class OSDMap;
11
12class OSDMapService {
13public:
9f95a23c 14 using cached_map_t = boost::local_shared_ptr<const OSDMap>;
11fdf7f2
TL
15 virtual ~OSDMapService() = default;
16 virtual seastar::future<cached_map_t> get_map(epoch_t e) = 0;
17 /// get the latest map
18 virtual cached_map_t get_map() const = 0;
9f95a23c 19 virtual epoch_t get_up_epoch() const = 0;
11fdf7f2 20};