The Sparta Modeling Framework
Loading...
Searching...
No Matches
ReportDescriptor.hpp File Reference

Describes reports to instantiate and tracks their instantiations. More...

#include <algorithm>
#include <boost/algorithm/string/replace.hpp>
#include <boost/any.hpp>
#include <boost/iterator/iterator_traits.hpp>
#include <boost/type_index/type_index_facade.hpp>
#include <cstddef>
#include <cstdint>
#include <deque>
#include <map>
#include <memory>
#include <ostream>
#include <set>
#include <string>
#include <unordered_map>
#include <unordered_set>
#include <utility>
#include <vector>
#include "sparta/simulation/TreeNode.hpp"
#include "sparta/report/Report.hpp"
#include "sparta/utils/Utils.hpp"
#include "sparta/report/format/BaseFormatter.hpp"
#include "sparta/app/FeatureConfiguration.hpp"
#include "simdb_fwd.hpp"
#include "sparta/simulation/Clock.hpp"
#include "sparta/utils/SpartaException.hpp"
#include "sparta/utils/ValidValue.hpp"

Go to the source code of this file.

Classes

class  sparta::app::ReportDescriptor
 Describes one or more report to instantiate. More...
 
class  sparta::app::ReportDescriptorCollection
 This collection of ReportDescriptors is designed to never deallocate memory once it has been allocated. References returned by the 'getDescriptorByName()' method are guaranteed to be valid for the life of this collection object. More...
 
class  sparta::app::ReportConfiguration
 Configuration applicator class that is used for configuring a simulator's reports. Works in conjunction with sparta::app::ReportDescriptorCollection. More...
 

Namespaces

namespace  sparta
 Macros for handling exponential backoff.
 
namespace  sparta::app
 Sparta Application framework.
 
namespace  sparta::statistics
 Namespace containing methods for computing and generating statistical information using instrumentation extracted from sparta structures such as Counters.
 

Typedefs

typedef std::unordered_map< std::string, boost::any > sparta::app::NamedExtensions
 
typedef std::unordered_map< std::string, std::string > sparta::app::TriggerKeyValues
 
typedef std::unordered_map< std::string, std::string > sparta::app::MetaDataKeyValues
 
typedef std::vector< ReportDescriptorsparta::app::ReportDescVec
 
typedef std::vector< std::pair< std::string, std::string > > sparta::app::ReportYamlReplacements
 

Functions

ReportYamlReplacements sparta::app::createReplacementsFromYaml (const std::string &replacements_yaml)
 Parse a YAML file containing key-value pairs into a single ReportYamlReplacements data structure.
 
ReportDescVec sparta::app::createDescriptorsFromFile (const std::string &def_file, TreeNode *context)
 Given a multi-report definition YAML file, parse it out into individual descriptors, one for each report defined in the file.
 
ReportDescVec sparta::app::createDescriptorsFromFileWithPlaceholderReplacements (const std::string &def_file, TreeNode *context, const ReportYamlReplacements &placeholder_key_value_pairs)
 This method is similar to "createDescriptorsFromFile()", except that it can be used for report yaml files that have one or more placeholders in them, like this:
 
ReportDescVec sparta::app::createDescriptorsFromDefinitionString (const std::string &def_string, TreeNode *context)
 Given a multi-report definition string, parse it out into individual descriptors.
 

Detailed Description

Describes reports to instantiate and tracks their instantiations.

Definition in file ReportDescriptor.hpp.