#include <profiling.hpp>
Public Types | |
using | mutex = Mutex |
using | duration = Duration |
using | clock = Clock |
using | event = profile_event<Duration, Clock> |
Public Member Functions | |
profile (profile const &)=delete | |
profile (profile &&)=delete | |
profile () noexcept | |
~profile () noexcept | |
profile & | operator= (profile const &)=delete |
profile & | operator= (profile &&)=delete |
void | log (event const &e) noexcept |
void | set_process_name (std::string name="") noexcept |
void | set_thread_name (std::string const &name) noexcept |
void | instant (static_string name, scope s) noexcept |
void | counter (static_string name, nlohmann::json args) noexcept |
void | flow_start (static_string name, static_string category, static_string id) noexcept |
void | flow_end (std::string name, static_string cat, static_string id) noexcept |
void | save (std::filesystem::path filename) noexcept |
Public Attributes | |
Mutex | events_mutex |
std::vector< event > | events |
nlohmann::json | metadata |
bool | saved |
std::filesystem::path | filename |
Friends | |
template<typename OStream > | |
OStream & | operator<< (OStream &o, profile &p) |
Definition at line 114 of file profiling.hpp.
using ein::profiling::profile< Mutex, Duration, Clock >::clock = Clock |
Definition at line 117 of file profiling.hpp.
using ein::profiling::profile< Mutex, Duration, Clock >::duration = Duration |
Definition at line 116 of file profiling.hpp.
using ein::profiling::profile< Mutex, Duration, Clock >::event = profile_event<Duration, Clock> |
Definition at line 118 of file profiling.hpp.
using ein::profiling::profile< Mutex, Duration, Clock >::mutex = Mutex |
Definition at line 115 of file profiling.hpp.
|
delete |
|
delete |
|
inlinenoexcept |
Definition at line 129 of file profiling.hpp.
|
inlinenoexcept |
Definition at line 136 of file profiling.hpp.
References ein::profiling::profile< Mutex, Duration, Clock >::events, and ein::profiling::profile< Mutex, Duration, Clock >::saved.
|
inlinenoexcept[[always_inline]] |
Definition at line 175 of file profiling.hpp.
References ein::profiling::counter, and ein::profiling::profile< Mutex, Duration, Clock >::log().
|
inlinenoexcept[[always_inline]] |
Definition at line 185 of file profiling.hpp.
References ein::profiling::flow_end, and ein::profiling::profile< Mutex, Duration, Clock >::log().
|
inlinenoexcept[[always_inline]] |
Definition at line 180 of file profiling.hpp.
References ein::profiling::flow_start, and ein::profiling::profile< Mutex, Duration, Clock >::log().
|
inlinenoexcept[[always_inline]] |
Definition at line 170 of file profiling.hpp.
References ein::profiling::instant, and ein::profiling::profile< Mutex, Duration, Clock >::log().
|
inlinenoexcept[[always_inline]] |
Definition at line 146 of file profiling.hpp.
References ein::profiling::profile< Mutex, Duration, Clock >::events, ein::profiling::profile< Mutex, Duration, Clock >::events_mutex, and ein::profiling::profile< Mutex, Duration, Clock >::saved.
Referenced by ein::profiling::profile< Mutex, Duration, Clock >::counter(), ein::profiling::profile< Mutex, Duration, Clock >::flow_end(), ein::profiling::profile< Mutex, Duration, Clock >::flow_start(), ein::profiling::profile< Mutex, Duration, Clock >::instant(), ein::profiling::scope_event< Profile >::scope_event(), ein::profiling::profile< Mutex, Duration, Clock >::set_process_name(), ein::profiling::profile< Mutex, Duration, Clock >::set_thread_name(), ein::profiling::duration_event< Profile >::start(), ein::profiling::duration_event< Profile >::stop(), and ein::profiling::scope_event< Profile >::~scope_event().
|
delete |
|
delete |
|
inlinenoexcept[[always_inline]] |
Definition at line 190 of file profiling.hpp.
References ein::profiling::profile< Mutex, Duration, Clock >::filename.
Referenced by ein::profiling::profile_scope< Mutex, Duration, Clock >::~profile_scope().
|
inlinenoexcept[[always_inline]] |
Definition at line 153 of file profiling.hpp.
References ein::profiling::profile< Mutex, Duration, Clock >::log(), and ein::profiling::metadata.
|
inlinenoexcept[[always_inline]] |
Definition at line 165 of file profiling.hpp.
References ein::profiling::profile< Mutex, Duration, Clock >::log(), and ein::profiling::metadata.
|
friend[[always_inline]] |
Definition at line 199 of file profiling.hpp.
std::vector<event> ein::profiling::profile< Mutex, Duration, Clock >::events |
Definition at line 121 of file profiling.hpp.
Referenced by ein::profiling::profile< Mutex, Duration, Clock >::log(), and ein::profiling::profile< Mutex, Duration, Clock >::~profile().
Mutex ein::profiling::profile< Mutex, Duration, Clock >::events_mutex |
Definition at line 120 of file profiling.hpp.
Referenced by ein::profiling::profile< Mutex, Duration, Clock >::log().
std::filesystem::path ein::profiling::profile< Mutex, Duration, Clock >::filename |
Definition at line 128 of file profiling.hpp.
Referenced by ein::profiling::profile< Mutex, Duration, Clock >::save().
nlohmann::json ein::profiling::profile< Mutex, Duration, Clock >::metadata |
Definition at line 122 of file profiling.hpp.
bool ein::profiling::profile< Mutex, Duration, Clock >::saved |
Definition at line 123 of file profiling.hpp.
Referenced by ein::profiling::profile< Mutex, Duration, Clock >::log(), and ein::profiling::profile< Mutex, Duration, Clock >::~profile().