xrpld
Loading...
Searching...
No Matches
xrpl::LedgerHolder Class Reference

Hold a ledger in a thread-safe way. More...

#include <LedgerHolder.h>

Inheritance diagram for xrpl::LedgerHolder:
Collaboration diagram for xrpl::LedgerHolder:

Public Member Functions

void set (std::shared_ptr< Ledger const > ledger)
std::shared_ptr< Ledger const > get ()
bool empty ()

Public Attributes

friend Object

Static Private Member Functions

static auto & getCounter () noexcept

Private Attributes

std::mutex lock_
std::shared_ptr< Ledger const > heldLedger_

Detailed Description

Hold a ledger in a thread-safe way.

VFALCO TODO The constructor should require a valid ledger, this way the object always holds a value. We can use the genesis ledger in all cases.

Definition at line 20 of file LedgerHolder.h.

Member Function Documentation

◆ set()

void xrpl::LedgerHolder::set ( std::shared_ptr< Ledger const > ledger)

Definition at line 25 of file LedgerHolder.h.

◆ get()

std::shared_ptr< Ledger const > xrpl::LedgerHolder::get ( )

Definition at line 37 of file LedgerHolder.h.

◆ empty()

bool xrpl::LedgerHolder::empty ( )

Definition at line 44 of file LedgerHolder.h.

◆ getCounter()

auto & xrpl::CountedObject< LedgerHolder >::getCounter ( )
staticprivatenoexceptinherited

Definition at line 109 of file CountedObject.h.

Member Data Documentation

◆ lock_

std::mutex xrpl::LedgerHolder::lock_
private

Definition at line 51 of file LedgerHolder.h.

◆ heldLedger_

std::shared_ptr<Ledger const> xrpl::LedgerHolder::heldLedger_
private

Definition at line 52 of file LedgerHolder.h.

◆ Object

Definition at line 134 of file CountedObject.h.