]> git.proxmox.com Git - ceph.git/blob - ceph/src/rocksdb/utilities/transactions/transaction_db_mutex_impl.h
add subtree-ish sources for 12.0.3
[ceph.git] / ceph / src / rocksdb / utilities / transactions / transaction_db_mutex_impl.h
1 // Copyright (c) 2011-present, Facebook, Inc. All rights reserved.
2 // This source code is licensed under the BSD-style license found in the
3 // LICENSE file in the root directory of this source tree. An additional grant
4 // of patent rights can be found in the PATENTS file in the same directory.
5
6 #pragma once
7 #ifndef ROCKSDB_LITE
8
9 #include "rocksdb/utilities/transaction_db_mutex.h"
10
11 namespace rocksdb {
12
13 class TransactionDBMutex;
14 class TransactionDBCondVar;
15
16 // Default implementation of TransactionDBMutexFactory. May be overridden
17 // by TransactionDBOptions.custom_mutex_factory.
18 class TransactionDBMutexFactoryImpl : public TransactionDBMutexFactory {
19 public:
20 std::shared_ptr<TransactionDBMutex> AllocateMutex() override;
21 std::shared_ptr<TransactionDBCondVar> AllocateCondVar() override;
22 };
23
24 } // namespace rocksdb
25
26 #endif // ROCKSDB_LITE