rippled
Public Member Functions | Static Private Member Functions | Private Attributes | List of all members
ripple::LedgerHolder Class Reference

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

Inheritance diagram for ripple::LedgerHolder:
Inheritance graph
[legend]
Collaboration diagram for ripple::LedgerHolder:
Collaboration graph
[legend]

Public Member Functions

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

Static Private Member Functions

static auto & getCounter () noexcept
 

Private Attributes

std::mutex m_lock
 
std::shared_ptr< Ledger const > m_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 39 of file LedgerHolder.h.

Member Function Documentation

◆ set()

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

Definition at line 44 of file LedgerHolder.h.

◆ get()

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

Definition at line 56 of file LedgerHolder.h.

◆ empty()

bool ripple::LedgerHolder::empty ( )

Definition at line 63 of file LedgerHolder.h.

◆ getCounter()

static auto& ripple::CountedObject< LedgerHolder >::getCounter
staticprivatenoexceptinherited

Definition at line 128 of file CountedObject.h.

Member Data Documentation

◆ m_lock

std::mutex ripple::LedgerHolder::m_lock
private

Definition at line 70 of file LedgerHolder.h.

◆ m_heldLedger

std::shared_ptr<Ledger const> ripple::LedgerHolder::m_heldLedger
private

Definition at line 71 of file LedgerHolder.h.