aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/clickhouse/src/Disks/SingleDiskVolume.h
blob: bade6041ea0d8310b8697b1f87b8d4622a10d5a3 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#pragma once

#include <Disks/IVolume.h>

namespace DB
{

class SingleDiskVolume : public IVolume
{
public:
    SingleDiskVolume(const String & name_, DiskPtr disk, size_t max_data_part_size_ = 0): IVolume(name_, {disk}, max_data_part_size_)
    {
    }

    ReservationPtr reserve(UInt64 bytes) override
    {
        return disks[0]->reserve(bytes);
    }

    VolumeType getType() const override { return VolumeType::SINGLE_DISK; }

};

using VolumeSingleDiskPtr = std::shared_ptr<SingleDiskVolume>;
using VolumesSingleDiskPtr = std::vector<VolumeSingleDiskPtr>;

}