OpenStudioCore:shared_gui_components
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Pages
Public Slots | Signals | Public Member Functions | List of all members
openstudio::MeasureManager Class Reference

#include <MeasureManager.hpp>

+ Inheritance diagram for openstudio::MeasureManager:

Public Slots

void addMeasure ()
 
bool checkForUpdates (BCLMeasure &measure, bool force=false)
 Checks a BCL measure for updates, returns true if updated. More...
 
void downloadBCLMeasures ()
 Downloads updated versions of all BCL measures. More...
 
void duplicateSelectedMeasure ()
 
void updateBCLMeasures (analysisdriver::SimpleProject &t_project)
 Updates the UI for all measures. More...
 
void updateMeasuresLists ()
 Update the UI display for all measures. More...
 
void updateMyMeasures (analysisdriver::SimpleProject &t_project)
 Updates the UI for all measures. More...
 
void updateOpenStudioMeasures (analysisdriver::SimpleProject &t_project)
 For all measures in the "openstudioMeasures" list which have changed relative to the version in the project, update the project to the new version. More...
 

Signals

void newMeasure (BCLMeasure newMeasure)
 

Public Member Functions

std::vector< BCLMeasure > bclMeasures () const
 
std::vector< BCLMeasure > combinedMeasures (bool includeOpenStudioMeasures=true) const
 
std::vector< ruleset::OSArgument > getArguments (analysisdriver::SimpleProject &t_project, const BCLMeasure &t_measure)
 
boost::optional< BCLMeasure > getMeasure (const UUID &id)
 
QSharedPointer
< ruleset::RubyUserScriptInfoGetter > 
infoGetter () const
 
BCLMeasure insertReplaceMeasure (analysisdriver::SimpleProject &t_project, const UUID &t_id)
 
bool isManagedMeasure (const UUID &id) const
 
bool isMeasureSelected ()
 
 MeasureManager (const QSharedPointer< ruleset::RubyUserScriptInfoGetter > &t_infoGetter, BaseApp *t_app)
 
std::vector< BCLMeasure > myMeasures () const
 
std::vector< BCLMeasure > openstudioMeasures () const
 
void setLibraryController (const QSharedPointer< LocalLibraryController > &t_libraryController)
 
std::string suggestMeasureGroupName (const BCLMeasure &t_measure)
 
std::string suggestMeasureName (const BCLMeasure &t_measure, bool t_fixed)
 
std::pair< bool, std::string > updateMeasure (analysisdriver::SimpleProject &t_project, const BCLMeasure &t_measure)
 Updates an individual measure. More...
 
void updateMeasures (analysisdriver::SimpleProject &t_project, const std::vector< BCLMeasure > &t_newMeasures, bool t_showMessage=true)
 
virtual ~MeasureManager ()
 

Constructor & Destructor Documentation

openstudio::MeasureManager::MeasureManager ( const QSharedPointer< ruleset::RubyUserScriptInfoGetter > &  t_infoGetter,
BaseApp t_app 
)
virtual openstudio::MeasureManager::~MeasureManager ( )
inlinevirtual

Member Function Documentation

void openstudio::MeasureManager::addMeasure ( )
slot
std::vector<BCLMeasure> openstudio::MeasureManager::bclMeasures ( ) const
bool openstudio::MeasureManager::checkForUpdates ( BCLMeasure &  measure,
bool  force = false 
)
slot

Checks a BCL measure for updates, returns true if updated.

std::vector<BCLMeasure> openstudio::MeasureManager::combinedMeasures ( bool  includeOpenStudioMeasures = true) const
void openstudio::MeasureManager::downloadBCLMeasures ( )
slot

Downloads updated versions of all BCL measures.

void openstudio::MeasureManager::duplicateSelectedMeasure ( )
slot
std::vector<ruleset::OSArgument> openstudio::MeasureManager::getArguments ( analysisdriver::SimpleProject &  t_project,
const BCLMeasure &  t_measure 
)
boost::optional<BCLMeasure> openstudio::MeasureManager::getMeasure ( const UUID &  id)
QSharedPointer<ruleset::RubyUserScriptInfoGetter> openstudio::MeasureManager::infoGetter ( ) const
BCLMeasure openstudio::MeasureManager::insertReplaceMeasure ( analysisdriver::SimpleProject &  t_project,
const UUID &  t_id 
)
bool openstudio::MeasureManager::isManagedMeasure ( const UUID &  id) const
bool openstudio::MeasureManager::isMeasureSelected ( )
std::vector<BCLMeasure> openstudio::MeasureManager::myMeasures ( ) const
void openstudio::MeasureManager::newMeasure ( BCLMeasure  newMeasure)
signal
std::vector<BCLMeasure> openstudio::MeasureManager::openstudioMeasures ( ) const
void openstudio::MeasureManager::setLibraryController ( const QSharedPointer< LocalLibraryController > &  t_libraryController)
std::string openstudio::MeasureManager::suggestMeasureGroupName ( const BCLMeasure &  t_measure)
std::string openstudio::MeasureManager::suggestMeasureName ( const BCLMeasure &  t_measure,
bool  t_fixed 
)
void openstudio::MeasureManager::updateBCLMeasures ( analysisdriver::SimpleProject &  t_project)
slot

Updates the UI for all measures.

For all measures in the "bclMeasures" list which have changed relative to the version in the project, update the project to the new version.

Also checks installed measures and updates the project's version of them if appropriate.

Does not ask for user approval

std::pair<bool,std::string> openstudio::MeasureManager::updateMeasure ( analysisdriver::SimpleProject &  t_project,
const BCLMeasure &  t_measure 
)

Updates an individual measure.

Does not ask for user approval, approval is assumed.

Returns
true if the update succeeded.
void openstudio::MeasureManager::updateMeasures ( analysisdriver::SimpleProject &  t_project,
const std::vector< BCLMeasure > &  t_newMeasures,
bool  t_showMessage = true 
)
void openstudio::MeasureManager::updateMeasuresLists ( )
slot

Update the UI display for all measures.

Does recompute the measure's XML. Does not update the measures in the project at all

void openstudio::MeasureManager::updateMyMeasures ( analysisdriver::SimpleProject &  t_project)
slot

Updates the UI for all measures.

For all measures in the "myMeasures" list which have changed relative to the version in the project, update the project to the new version

Does not ask for user approval

void openstudio::MeasureManager::updateOpenStudioMeasures ( analysisdriver::SimpleProject &  t_project)
slot

For all measures in the "openstudioMeasures" list which have changed relative to the version in the project, update the project to the new version.

Does not ask for user approval