rippled
Loading...
Searching...
No Matches
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...

#include <LedgerHolder.h>

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 40 of file LedgerHolder.h.

Member Function Documentation

◆ set()

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

Definition at line 45 of file LedgerHolder.h.

◆ get()

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

Definition at line 57 of file LedgerHolder.h.

◆ empty()

bool ripple::LedgerHolder::empty ( )

Definition at line 64 of file LedgerHolder.h.

◆ getCounter()

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

Definition at line 129 of file CountedObject.h.

Member Data Documentation

◆ m_lock

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

Definition at line 71 of file LedgerHolder.h.

◆ m_heldLedger

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

Definition at line 72 of file LedgerHolder.h.