Library API
Welcome to the developer reference to Exhale Companion. The code being documented here is largely meaningless and was only created to test various corner cases e.g. nested namespaces and the like.
Note
The text you are currently reading was fed to exhale_args using
the afterTitleDescription key. Full
reStructuredText syntax can be used.
Tip
Sphinx / Exhale support unicode! You’re conf.py already has
it’s encoding declared as # -*- coding: utf-8 -*- by
default. If you want to pass Unicode strings into Exhale, simply
prefix them with a u e.g. u"👽😱💥" (of course you would
actually do this because you are writing with åçćëñtß or
non-English 寫作 😉).
Class Hierarchy
File Hierarchy
Below the hierarchies comes the full API listing.
The text you are currently reading is provided by
afterHierarchyDescription.The Title of the next section just below this normally defaults to
Full API, but the title was changed by providing an argument tofullApiSubSectionTitle.You can control the number of bullet points for each linked item on the remainder of the page using
fullToctreeMaxDepth.
Custom Full API SubSection Title
Namespaces
Classes and Structs
- Struct PerCoreCounters
- Struct Documentation
PerCoreCountersPerCoreCounters::apply()PerCoreCounters::apply()PerCoreCounters::operator+=()PerCoreCounters::operator-=()PerCoreCounters::operator+()PerCoreCounters::operator-()PerCoreCounters::operator*=()PerCoreCounters::operator/=()PerCoreCounters::operator*()PerCoreCounters::operator/()PerCoreCounters::lines_rejectedPerCoreCounters::sent_pktsPerCoreCounters::retryPerCoreCounters::max_retryPerCoreCounters::rcvd_pktsPerCoreCounters::parse_successPerCoreCounters::parse_failPerCoreCounters::other_worker_idPerCoreCounters::noerrorPerCoreCounters::nxdomainPerCoreCounters::servfailPerCoreCounters::rcode_otherPerCoreCounters::num_resolved
- Struct Documentation
- Template Struct RTEMbufArray::BaseIterator
- Nested Relationships
- Template Parameter Order
- Struct Documentation
BaseIteratorBaseIterator::iterator_categoryBaseIterator::difference_typeBaseIterator::value_typeBaseIterator::pointerBaseIterator::double_pointerBaseIterator::referenceBaseIterator::BaseIterator()BaseIterator::BaseIterator()BaseIterator::operator*()BaseIterator::operator->()BaseIterator::operator++()BaseIterator::operator++()BaseIterator::operator==()BaseIterator::operator!=()
- Struct UserConfig
- Struct Documentation
UserConfigUserConfig::headlessUserConfig::coresUserConfig::rateUserConfig::num_concurrentUserConfig::timeout_msUserConfig::num_retriesUserConfig::gateway_ipUserConfig::static_ipUserConfig::gateway_macUserConfig::device_nameUserConfig::input_fileUserConfig::xdp_pathUserConfig::resolversUserConfig::rcode_filtersUserConfig::prefixUserConfig::postfixUserConfig::log_pathUserConfig::output_pathUserConfig::output_rawUserConfig::no_hugeUserConfig::debugUserConfig::skip_queue_count_checkUserConfig::q_type
- Struct Documentation
- Struct WorkerParams
- Struct Documentation
WorkerParamsWorkerParams::num_workersWorkerParams::num_containersWorkerParams::rate_lim_ppsWorkerParams::timeout_msWorkerParams::max_retriesWorkerParams::countersWorkerParams::resolversWorkerParams::rcode_filtersWorkerParams::workers_finishedWorkerParams::domains_finishedWorkerParams::ringWorkerParams::rxtx_ifWorkerParams::raw_mempoolWorkerParams::pkt_mempoolWorkerParams::request_mempoolWorkerParams::output_rawWorkerParams::dns_mempoolWorkerParams::distribution_rings
- Struct Documentation
- Template Class EthRxTx
- Template Parameter Order
- Class Documentation
EthRxTxEthRxTx::EthRxTx()EthRxTx::operator=()EthRxTx::operator=()EthRxTx::EthRxTx()EthRxTx::~EthRxTx()EthRxTx::SendPackets()EthRxTx::SendPacket()EthRxTx::RcvPackets()EthRxTx::PreparePackets()EthRxTx::GetMacAddr()EthRxTx::GenerateDNSFlow()EthRxTx::PrintStats()EthRxTx::GetPortId()EthRxTx::init()EthRxTx::PreparePktCksums()
- Template Class IntrusiveList
- Nested Relationships
- Template Parameter Order
- Class Documentation
IntrusiveListIntrusiveList::IteratorIntrusiveList::ConstIteratorIntrusiveList::IntrusiveList()IntrusiveList::IntrusiveList()IntrusiveList::operator=()IntrusiveList::IntrusiveList()IntrusiveList::operator=()IntrusiveList::push_back()IntrusiveList::delete_elem()IntrusiveList::in_list()IntrusiveList::size()IntrusiveList::begin()IntrusiveList::end()IntrusiveList::begin()IntrusiveList::end()IntrusiveList::erase()IntrusiveList::swap()IntrusiveList::BaseIteratorIntrusiveList::BaseIterator::BaseIterator()IntrusiveList::BaseIterator::operator*()IntrusiveList::BaseIterator::operator->()IntrusiveList::BaseIterator::front()IntrusiveList::BaseIterator::operator++()IntrusiveList::BaseIterator::operator++()IntrusiveList::BaseIterator::operator==()IntrusiveList::BaseIterator::operator!=()
- Template Class RTEMbufArray
- Nested Relationships
- Template Parameter Order
- Class Documentation
RTEMbufArrayRTEMbufArray::value_typeRTEMbufArray::owning_value_typeRTEMbufArray::pointerRTEMbufArray::const_pointerRTEMbufArray::double_pointerRTEMbufArray::referenceRTEMbufArray::const_referenceRTEMbufArray::IteratorRTEMbufArray::ConstIteratorRTEMbufArray::RTEMbufArray()RTEMbufArray::~RTEMbufArray()RTEMbufArray::release()RTEMbufArray::RTEMbufArray()RTEMbufArray::operator=()RTEMbufArray::RTEMbufArray()RTEMbufArray::operator=()RTEMbufArray::insert()RTEMbufArray::split()RTEMbufArray::FromSpan()RTEMbufArray::size()RTEMbufArray::free_cnt()RTEMbufArray::capacity()RTEMbufArray::data()RTEMbufArray::operator[]()RTEMbufArray::operator[]()RTEMbufArray::get_data()RTEMbufArray::get_data()RTEMbufArray::begin()RTEMbufArray::end()RTEMbufArray::begin()RTEMbufArray::end()RTEMbufArray::front()RTEMbufArray::back()RTEMbufArray::front()RTEMbufArray::back()RTEMbufArray::pop()RTEMbufArray::push()RTEMbufArray::init()RTEMbufArray::init()RTEMbufArray::init()RTEMbufArray::BaseIteratorRTEMbufArray::BaseIterator::iterator_categoryRTEMbufArray::BaseIterator::difference_typeRTEMbufArray::BaseIterator::value_typeRTEMbufArray::BaseIterator::pointerRTEMbufArray::BaseIterator::double_pointerRTEMbufArray::BaseIterator::referenceRTEMbufArray::BaseIterator::BaseIterator()RTEMbufArray::BaseIterator::BaseIterator()RTEMbufArray::BaseIterator::operator*()RTEMbufArray::BaseIterator::operator->()RTEMbufArray::BaseIterator::operator++()RTEMbufArray::BaseIterator::operator++()RTEMbufArray::BaseIterator::operator==()RTEMbufArray::BaseIterator::operator!=()
- Template Class RTEMbufElement
- Inheritance Relationships
- Template Parameter Order
- Class Documentation
RTEMbufElementRTEMbufElement::value_typeRTEMbufElement::pointerRTEMbufElement::double_pointerRTEMbufElement::referenceRTEMbufElement::const_referenceRTEMbufElement::~RTEMbufElement()RTEMbufElement::RTEMbufElement()RTEMbufElement::operator=()RTEMbufElement::RTEMbufElement()RTEMbufElement::operator=()RTEMbufElement::operator bool()RTEMbufElement::release()RTEMbufElement::get()RTEMbufElement::get()RTEMbufElement::get_data()RTEMbufElement::get_data()RTEMbufElement::init()RTEMbufElement::init()
- Template Class RTERing
- Template Parameter Order
- Class Documentation
RTERingRTERing::value_typeRTERing::owning_value_typeRTERing::pointerRTERing::const_pointerRTERing::double_pointerRTERing::referenceRTERing::const_referenceRTERing::~RTERing()RTERing::enqueue()RTERing::enqueue_burst()RTERing::dequeue()RTERing::dequeue_burst()RTERing::count()RTERing::capacity()RTERing::free_count()RTERing::empty()RTERing::RTERing()RTERing::operator=()RTERing::RTERing()RTERing::operator=()RTERing::init()RTERing::init()
- Class ThreadManager
- Nested Relationships
- Class Documentation
ThreadManagerThreadManager::LaunchThreadResultThreadManager::ThreadManager()ThreadManager::~ThreadManager()ThreadManager::join()ThreadManager::ThreadManager()ThreadManager::ThreadManager()ThreadManager::LaunchThread()ThreadManager::GetTotalThreads()ThreadManager::GetUnusedThreads()ThreadManager::get_stop_source()ThreadManager::get_stop_token()ThreadManager::request_stop()
Enums
- Enum DNSParseError
- Enum Documentation
DNSParseErrorDNSParseError::PktErrorDNSParseError::OutOfBoundsDNSParseError::InvalidQCountDNSParseError::NameTooLongDNSParseError::MaxJumpsReachedDNSParseError::AllocationErrorDNSParseError::IpHdrProtoErrDNSParseError::EtherHdrProtoErrDNSParseError::SrcPortErrDNSParseError::MalformedPacketDNSParseError::TxtTooLongDNSParseError::InvalidChar
- Enum Documentation
- Enum DnsRCode
- Enum Documentation
DnsRCodeDnsRCode::NOERRORDnsRCode::FORMERRORDnsRCode::SERVFAILDnsRCode::NXDOMAINDnsRCode::NOTIMPDnsRCode::REFUSEDDnsRCode::YXDOMAINDnsRCode::XYRRSETDnsRCode::NXRRSETDnsRCode::NOTAUTHDnsRCode::NOTZONEDnsRCode::DSOTYPENIDnsRCode::BADVERSDnsRCode::BADKEYDnsRCode::BADTIMEDnsRCode::BADMODEDnsRCode::BADNAMDnsRCode::BADALGDnsRCode::BADTRUNCDnsRCode::BADCOOKIE
- Enum Documentation
Functions
Variables
Defines
Typedefs
You read all the way to the bottom?! This text is specified by giving
an argument to afterBodySummary. As the docs
state, this summary gets put in after a lot of information. It’s
available for you to use if you want it, but from a design perspective
it’s rather unlikely any of your users will even see this text.