OpenStudioCore:ruleset
 All Classes Namespaces Functions Typedefs Enumerations Enumerator Pages
Protected Member Functions | List of all members
openstudio::ruleset::ReportingUserScript Class Reference

#include <ReportingUserScript.hpp>

+ Inheritance diagram for openstudio::ruleset::ReportingUserScript:

Public Member Functions

Constructors and Destructors
virtual ~ReportingUserScript ()
 
Getters
virtual std::vector< OSArgumentarguments () const
 Returns the arguments for this script. More...
 
Actions
virtual bool run (OSRunner &runner, const std::map< std::string, OSArgument > &user_arguments) const
 Run the script with the given runner and user_arguments. More...
 
virtual std::vector< IdfObject > energyPlusOutputRequests (OSRunner &runner, const std::map< std::string, OSArgument > &user_arguments) const
 This method is called on all reporting measures immediately before the E+ simulation. More...
 
- Public Member Functions inherited from openstudio::ruleset::UserScript
virtual ~UserScript ()
 
virtual std::string name () const
 user facing name of this script, defaults to empty More...
 
virtual std::string description () const
 user facing description of this script, defaults to empty More...
 
virtual std::string modeler_description () const
 user facing technical description of this script, defaults to empty More...
 
virtual OS_DEPRECATED bool registerWithSketchUp () const
 Register this script with SketchUp. More...
 
virtual OS_DEPRECATED bool registerWithApplication () const
 Register this script with an Application. More...
 

Protected Member Functions

 ReportingUserScript ()
 
- Protected Member Functions inherited from openstudio::ruleset::UserScript
 UserScript ()
 

Additional Inherited Members

Detailed Description

ReportingUserScript is an abstract base class for UserScripts that generate reports.

Constructor & Destructor Documentation

virtual openstudio::ruleset::ReportingUserScript::~ReportingUserScript ( )
virtual
openstudio::ruleset::ReportingUserScript::ReportingUserScript ( )
inlineprotected

Member Function Documentation

virtual std::vector<OSArgument> openstudio::ruleset::ReportingUserScript::arguments ( ) const
virtual

Returns the arguments for this script.

In interactive applications, an OSRunner presents these arguments to the user to produce an OSArgumentMap of user_arguments that it then passes to this script's run method. The same basic steps should happen in applications with non- interactive scripts, but in that case an entity other than an OSRunner may be in charge of collecting user arguments. The base class implementation returns an empty vector.

virtual std::vector<IdfObject> openstudio::ruleset::ReportingUserScript::energyPlusOutputRequests ( OSRunner runner,
const std::map< std::string, OSArgument > &  user_arguments 
) const
virtual

This method is called on all reporting measures immediately before the E+ simulation.

The code that injects these objects into the IDF checks that only objects of allowed types are added to prevent changes that impact energy use. The injector code also prevents duplicate report requests. The default implementation of this method returns an empty vector. The runner allows the user to load the last osm/idf and to log messages. The argument map is available with the arguments for the reporting measure.

virtual bool openstudio::ruleset::ReportingUserScript::run ( OSRunner runner,
const std::map< std::string, OSArgument > &  user_arguments 
) const
virtual

Run the script with the given runner and user_arguments.

The base class implementation calls runner.prepareForUserScriptRun(*this) and should be called at the beginning of derived class implementations of this method. (In C++, that call looks like ReportingUserScript::run(runner, user_arguments). In Ruby that call looks like super(runner, user_arguments).