AXOM
Axom provides a robust, flexible software infrastructure for the development of multi-physics applications and computational tools.
Annotations.hpp File Reference

Defines functions to help with performance annotations. More...

#include "axom/config.hpp"
#include "axom/core/Macros.hpp"
#include <string>
#include <map>

Namespaces

 axom
 
 axom::utilities
 
 axom::utilities::annotations
 
 axom::utilities::annotations::detail
 

Functions

void axom::utilities::annotations::detail::initialize_adiak ()
 
void axom::utilities::annotations::detail::initialize_caliper (const std::string &mode)
 
bool axom::utilities::annotations::detail::is_mode_valid (const std::string &mode)
 
std::string axom::utilities::annotations::detail::mode_help_string ()
 
void axom::utilities::annotations::initialize (const std::string &mode)
 Initializes the Annotation API. More...
 
void axom::utilities::annotations::finalize ()
 Finalizes and flushes the Annotation API. More...
 
void axom::utilities::annotations::begin (const std::string &name)
 Begins an annotation within a region. More...
 
void axom::utilities::annotations::end (const std::string &name)
 Ends an annotation within a region. More...
 
template<typename T >
void axom::utilities::annotations::declare_metadata (const std::string &name, const T &value, std::string category="")
 Declares metadata for this run. More...
 
std::map< std::string, std::string > axom::utilities::annotations::retrieve_metadata ()
 Access registered metadata from adiak (when available) and returns the result as a map of key-value pairs of strings. More...
 

Detailed Description

Defines functions to help with performance annotations.

The annotations API and macros are always available but they are effectively no-ops unless axom is built with caliper and adiak support