bactria  0.0.1
The bactria library is a header-only C++14 library for profiling and tracing.
Internal documentation. Not intended or useful for the user.
Collaboration diagram for Internal documentation. Not intended or useful for the user.:

Typedefs

using bactria::metrics::plugin::create_sector_t = std::add_pointer_t< void *(char const *, std::uint32_t) noexcept >
 Signature for plugin function bactria_metrics_create_sector(). More...
 
using bactria::metrics::plugin::destroy_sector_t = std::add_pointer_t< void(void *) noexcept >
 Signature for plugin function bactria_metrics_destroy_sector(). More...
 
using bactria::metrics::plugin::enter_sector_t = std::add_pointer_t< void(void *, char const *, std::uint32_t, char const *) noexcept >
 Signature for plugin function bactria_metrics_enter_sector(). More...
 
using bactria::metrics::plugin::leave_sector_t = std::add_pointer_t< void(void *, char const *, std::uint32_t, char const *) noexcept >
 Signature for plugin function bactria_metrics_leave_sector(). More...
 
using bactria::metrics::plugin::sector_summary_t = std::add_pointer_t< void(void *) noexcept >
 Signature for plugin function bactria_metrics_sector_summary(). More...
 
using bactria::metrics::plugin::create_phase_t = std::add_pointer_t< void *(char const *) noexcept >
 Signature for plugin function bactria_metrics_create_phase(). More...
 
using bactria::metrics::plugin::destroy_phase_t = std::add_pointer_t< void(void *) noexcept >
 Signature for plugin function bactria_metrics_destroy_phase(). More...
 
using bactria::metrics::plugin::enter_phase_t = std::add_pointer_t< void(void *, char const *, std::uint32_t, char const *) noexcept >
 Signature for plugin function bactria_metrics_enter_phase(). More...
 
using bactria::metrics::plugin::leave_phase_t = std::add_pointer_t< void(void *, char const *, std::uint32_t, char const *) noexcept >
 Signature for plugin function bactria_metrics_leave_phase(). More...
 

Functions

auto bactria::metrics::plugin::activated () -> bool
 Checks for an active metrics plugin. More...
 
auto bactria::metrics::plugin::load () -> plugin_handle_t
 Initializes the metrics plugin. More...
 
auto bactria::metrics::plugin::create_sector (char const *name, std::uint32_t tag) noexcept
 Creates a plugin-specific sector handle. More...
 
auto bactria::metrics::plugin::destroy_sector (void *sector_handle) noexcept
 Destroys a plugin-specific sector handle. More...
 
auto bactria::metrics::plugin::enter_sector (void *sector_handle, char const *source, std::uint32_t lineno, char const *caller) noexcept
 Plugin-specific sector entering. More...
 
auto bactria::metrics::plugin::leave_sector (void *sector_handle, char const *source, std::uint32_t lineno, char const *caller) noexcept
 Plugin-specific sector leaving. More...
 
auto bactria::metrics::plugin::sector_summary (void *sector_handle) noexcept
 Plugin-specific sector summary. More...
 
auto bactria::metrics::plugin::create_phase (char const *name) noexcept
 Creates a plugin-specific phase handle. More...
 
auto bactria::metrics::plugin::destroy_phase (void *phase_handle) noexcept
 Destroys a plugin-specific phase handle. More...
 
auto bactria::metrics::plugin::enter_phase (void *phase_handle, char const *source, std::uint32_t lineno, char const *caller) noexcept
 Plugin-specific phase entering. More...
 
auto bactria::metrics::plugin::leave_phase (void *phase_handle, char const *source, std::uint32_t lineno, char const *caller) noexcept
 Plugin-specific phase leaving. More...
 

Variables

auto bactria::metrics::plugin::create_sector_ptr = create_sector_t{nullptr}
 Pointer to plugin function bactria_metrics_create_sector(). More...
 
auto bactria::metrics::plugin::destroy_sector_ptr = destroy_sector_t{nullptr}
 Pointer to plugin function bactria_metrics_destroy_sector(). More...
 
auto bactria::metrics::plugin::enter_sector_ptr = enter_sector_t{nullptr}
 Pointer to plugin function bactria_metrics_enter_sector(). More...
 
auto bactria::metrics::plugin::leave_sector_ptr = leave_sector_t{nullptr}
 Pointer to plugin function bactria_metrics_leave_sector(). More...
 
auto bactria::metrics::plugin::sector_summary_ptr = sector_summary_t{nullptr}
 Pointer to plugin function bactria_metrics_sector_summary(). More...
 
auto bactria::metrics::plugin::create_phase_ptr = create_phase_t{nullptr}
 Pointer to plugin function bactria_metrics_create_phase(). More...
 
auto bactria::metrics::plugin::destroy_phase_ptr = destroy_phase_t{nullptr}
 Pointer to plugin function bactria_metrics_destroy_phase(). More...
 
auto bactria::metrics::plugin::enter_phase_ptr = enter_phase_t{nullptr}
 Pointer to plugin function bactria_metrics_enter_phase(). More...
 
auto bactria::metrics::plugin::leave_phase_ptr = leave_phase_t{nullptr}
 Pointer to plugin function bactria_metrics_leave_phase(). More...
 

Detailed Description

Typedef Documentation

◆ create_phase_t

using bactria::metrics::plugin::create_phase_t = typedef std::add_pointer_t<void*(char const*) noexcept>

Signature for plugin function bactria_metrics_create_phase().

Used internally by bactria during plugin initialization. Should never be used by the user.

◆ create_sector_t

using bactria::metrics::plugin::create_sector_t = typedef std::add_pointer_t<void*(char const*, std::uint32_t) noexcept>

Signature for plugin function bactria_metrics_create_sector().

Used internally by bactria during plugin initialization. Should never be used by the user.

◆ destroy_phase_t

using bactria::metrics::plugin::destroy_phase_t = typedef std::add_pointer_t<void(void*) noexcept>

Signature for plugin function bactria_metrics_destroy_phase().

Used internally by bactria during plugin initialization. Should never be used by the user.

◆ destroy_sector_t

using bactria::metrics::plugin::destroy_sector_t = typedef std::add_pointer_t<void(void*) noexcept>

Signature for plugin function bactria_metrics_destroy_sector().

Used internally by bactria during plugin initialization. Should never be used by the user.

◆ enter_phase_t

using bactria::metrics::plugin::enter_phase_t = typedef std::add_pointer_t<void(void*, char const*, std::uint32_t, char const*) noexcept>

Signature for plugin function bactria_metrics_enter_phase().

Used internally by bactria during plugin initialization. Should never be used by the user.

◆ enter_sector_t

using bactria::metrics::plugin::enter_sector_t = typedef std::add_pointer_t<void(void*, char const*, std::uint32_t, char const*) noexcept>

Signature for plugin function bactria_metrics_enter_sector().

Used internally by bactria during plugin initialization. Should never be used by the user.

◆ leave_phase_t

using bactria::metrics::plugin::leave_phase_t = typedef std::add_pointer_t<void(void*, char const*, std::uint32_t, char const*) noexcept>

Signature for plugin function bactria_metrics_leave_phase().

Used internally by bactria during plugin initialization. Should never be used by the user.

◆ leave_sector_t

using bactria::metrics::plugin::leave_sector_t = typedef std::add_pointer_t<void(void*, char const*, std::uint32_t, char const*) noexcept>

Signature for plugin function bactria_metrics_leave_sector().

Used internally by bactria during plugin initialization. Should never be used by the user.

◆ sector_summary_t

using bactria::metrics::plugin::sector_summary_t = typedef std::add_pointer_t<void(void*) noexcept>

Signature for plugin function bactria_metrics_sector_summary().

Used internally by bactria during plugin initialization. Should never be used by the user.

Function Documentation

◆ activated()

auto bactria::metrics::plugin::activated ( ) -> bool
inline

Checks for an active metrics plugin.

This function checks for an activate metrics plugin. It should never be called by the user directly.

Returns
true If BACTRIA_DEACTIVATE is NOT defined and BACTRIA_METRICS_PLUGIN is defined.
false If either BACTRIA_DEACTIVATE is defined or BACTRIA_METRICS_PLUGIN is NOT defined.

◆ create_phase()

auto bactria::metrics::plugin::create_phase ( char const *  name)
inlinenoexcept

Creates a plugin-specific phase handle.

Used internally by the Phase class. Users should not call this directly.

Returns
A plugin-specific phase handle.
See also
Phase::Phase()

◆ create_sector()

auto bactria::metrics::plugin::create_sector ( char const *  name,
std::uint32_t  tag 
)
inlinenoexcept

Creates a plugin-specific sector handle.

Used internally by the Sector class. Users should not call this directly.

See also
Sector::Sector()

◆ destroy_phase()

auto bactria::metrics::plugin::destroy_phase ( void *  phase_handle)
inlinenoexcept

Destroys a plugin-specific phase handle.

Used internally by the Phase class. Users should not call this direcctly.

See also
Phase::~Phase()

◆ destroy_sector()

auto bactria::metrics::plugin::destroy_sector ( void *  sector_handle)
inlinenoexcept

Destroys a plugin-specific sector handle.

Used internally by the Sector class. Users should not call this directly.

See also
Sector::~Sector()

◆ enter_phase()

auto bactria::metrics::plugin::enter_phase ( void *  phase_handle,
char const *  source,
std::uint32_t  lineno,
char const *  caller 
)
inlinenoexcept

Plugin-specific phase entering.

Used internally by the Phase class. Users should not call this directly.

See also
Phase::enter()

◆ enter_sector()

auto bactria::metrics::plugin::enter_sector ( void *  sector_handle,
char const *  source,
std::uint32_t  lineno,
char const *  caller 
)
inlinenoexcept

Plugin-specific sector entering.

Used internally by the Sector class. Users should not call this directly.

See also
Sector::enter()

◆ leave_phase()

auto bactria::metrics::plugin::leave_phase ( void *  phase_handle,
char const *  source,
std::uint32_t  lineno,
char const *  caller 
)
inlinenoexcept

Plugin-specific phase leaving.

Used internally by the Phase class. Users should not call this directly.

See also
Phase::leave()

◆ leave_sector()

auto bactria::metrics::plugin::leave_sector ( void *  sector_handle,
char const *  source,
std::uint32_t  lineno,
char const *  caller 
)
inlinenoexcept

Plugin-specific sector leaving.

Used internally by the Sector class. Users should not call this directly.

See also
Sector::leave()

◆ load()

auto bactria::metrics::plugin::load ( ) -> plugin_handle_t
inline

Initializes the metrics plugin.

Used internally by bactria during plugin initialization. Should never be used by the user.

Returns
A platform-specific plugin handle.
Exceptions
std::runtime_errorOn failure during plugin initialization.

◆ sector_summary()

auto bactria::metrics::plugin::sector_summary ( void *  sector_handle)
inlinenoexcept

Plugin-specific sector summary.

Used internally by the Sector class. Users should not call this directly.

See also
Sector::summary()

Variable Documentation

◆ create_phase_ptr

auto bactria::metrics::plugin::create_phase_ptr = create_phase_t{nullptr}

Pointer to plugin function bactria_metrics_create_phase().

Used internally by bactria during plugin initialization. Should never be used by the user.

◆ create_sector_ptr

auto bactria::metrics::plugin::create_sector_ptr = create_sector_t{nullptr}

Pointer to plugin function bactria_metrics_create_sector().

Used internally by bactria during plugin initialization. Should never be used by the user.

◆ destroy_phase_ptr

auto bactria::metrics::plugin::destroy_phase_ptr = destroy_phase_t{nullptr}

Pointer to plugin function bactria_metrics_destroy_phase().

Used internally by bactria during plugin initialization. Should never be used by the user.

◆ destroy_sector_ptr

auto bactria::metrics::plugin::destroy_sector_ptr = destroy_sector_t{nullptr}

Pointer to plugin function bactria_metrics_destroy_sector().

Used internally by bactria during plugin initialization. Should never be used by the user.

◆ enter_phase_ptr

auto bactria::metrics::plugin::enter_phase_ptr = enter_phase_t{nullptr}

Pointer to plugin function bactria_metrics_enter_phase().

Used internally by bactria during plugin initialization. Should never be used by the user.

◆ enter_sector_ptr

auto bactria::metrics::plugin::enter_sector_ptr = enter_sector_t{nullptr}

Pointer to plugin function bactria_metrics_enter_sector().

Used internally by bactria during plugin initialization. Should never be used by the user.

◆ leave_phase_ptr

auto bactria::metrics::plugin::leave_phase_ptr = leave_phase_t{nullptr}

Pointer to plugin function bactria_metrics_leave_phase().

Used internally by bactria during plugin initialization. Should never be used by the user.

◆ leave_sector_ptr

auto bactria::metrics::plugin::leave_sector_ptr = leave_sector_t{nullptr}

Pointer to plugin function bactria_metrics_leave_sector().

Used internally by bactria during plugin initialization. Should never be used by the user.

◆ sector_summary_ptr

auto bactria::metrics::plugin::sector_summary_ptr = sector_summary_t{nullptr}

Pointer to plugin function bactria_metrics_sector_summary().

Used internally by bactria during plugin initialization. Should never be used by the user.