OpenStudioCore:project
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Pages
Public Types | Static Public Member Functions | Related Functions | List of all members
openstudio::project::AnalysisRecord Class Reference

#include <AnalysisRecord.hpp>

+ Inheritance diagram for openstudio::project::AnalysisRecord:

Public Types

typedef AnalysisRecordColumns ColumnsType
 
typedef detail::AnalysisRecord_Impl ImplType
 
typedef AnalysisRecord ObjectRecordType
 
- Public Types inherited from openstudio::project::ObjectRecord
typedef detail::ObjectRecord_Impl ImplType
 

Public Member Functions

Constructors and Destructors
 AnalysisRecord (const analysis::Analysis &analysis, ProjectDatabase &database)
 
 AnalysisRecord (const QSqlQuery &query, ProjectDatabase &database)
 
virtual ~AnalysisRecord ()
 
Getters
ProblemRecord problemRecord () const
 Returns the ProblemRecord (required resource) associated with this AnalysisRecord. More...
 
boost::optional< AlgorithmRecordalgorithmRecord () const
 Returns the AlgorithmRecord (optional resource) associated with this AnalysisRecord. More...
 
FileReferenceRecord seedFileReferenceRecord () const
 Returns the seed FileReferenceRecord (required child) of this AnalysisRecord. More...
 
boost::optional
< FileReferenceRecord
weatherFileReferenceRecord () const
 Returns the weather FileReferenceRecord (optional child) of this AnalysisRecord. More...
 
std::vector< DataPointRecorddataPointRecords () const
 Returns the DataPointRecords (children) of this AnalysisRecord. More...
 
std::vector< DataPointRecordincompleteDataPointRecords () const
 Returns the DataPointRecords with complete == false. More...
 
std::vector< DataPointRecordcompleteDataPointRecords () const
 Returns the DataPointRecords with complete == true. More...
 
std::vector< DataPointRecordsuccessfulDataPointRecords () const
 Returns the completeDataPointRecords with failed == false. More...
 
std::vector< DataPointRecordfailedDataPointRecords () const
 Returns the completeDataPointRecords with failed == true. More...
 
std::vector< DataPointRecordgetDataPointRecords (const std::vector< QVariant > &variableValues) const
 
std::vector< DataPointRecordgetDataPointRecords (const std::vector< int > &discretePerturbationRecordIds) const
 
std::vector< DataPointRecordgetDataPointRecords (const std::string &tag) const
 
bool resultsAreInvalid () const
 Returns true if this AnalysisRecord holds DataPointRecords with invalid results still attached. More...
 
bool dataPointsAreInvalid () const
 Returns true if this AnalysisRecord holds DataPointRecords that are invalid in light of changes to the problem formulation. More...
 
analysis::Analysis analysis () const
 Deserializes this record and all its children and resources to analysis::Analysis. More...
 
Setters
void setResultsAreInvalid (bool value)
 Provided for callers operating directly on the database, not holding a copy of this analysis in memory. More...
 
void setDataPointsAreInvalid (bool value)
 Provided for callers operating directly on the database, not holding a copy of this analysis in memory. More...
 
- Public Member Functions inherited from openstudio::project::ObjectRecord
std::string description () const
 get the description More...
 
std::string displayName () const
 get the display name More...
 
std::string name () const
 get the name More...
 
bool setDescription (const std::string &description)
 set the description More...
 
bool setDisplayName (const std::string &displayName)
 set the display name More...
 
bool setName (const std::string &name)
 set the name More...
 
DateTime timestampCreate () const
 get the timestamp the object was created at More...
 
DateTime timestampLast () const
 get the timestamp the object was last edited at More...
 
void updatePathData (const openstudio::path &originalBase, const openstudio::path &newBase)
 Update any path data stored under originalBase to newBase. More...
 
UUID uuidLast () const
 get the UUID of the object at last edit More...
 
virtual ~ObjectRecord ()
 
- Public Member Functions inherited from openstudio::project::Record
std::vector< ObjectRecordchildren () const
 Returns all child Records in the database. More...
 
bool connect (const std::string &signal, const QObject *qObject, const std::string &slot, Qt::ConnectionType type=Qt::AutoConnection) const
 Connect signal from this Records implementation object to slot on qObject. More...
 
std::string databaseTableName () const
 Returns the name of the database table. More...
 
std::vector< JoinRecordjoinRecords () const
 Returns all join Records in the database. More...
 
void moveToThread (QThread *targetThread)
 Move the implementation object to target thread. More...
 
ProjectDatabase projectDatabase () const
 Returns the ProjectDatabase, will throw if ProjectDatabase has been destructed. More...
 
std::vector< ObjectRecordresources () const
 Returns all resource Records in the database. More...
 
unsigned useCount () const
 Returns number of shared references to this Records implementation object. More...
 
int id () const
 Returns the id. More...
 
UUID handle () const
 Returns the handle. More...
 
template<typename T >
cast () const
 Cast to Record of type T, can throw std::bad_cast. More...
 
template<typename T >
boost::optional< T > optionalCast () const
 Cast to optional Record of type T. More...
 
virtual ~Record ()
 

Static Public Member Functions

static std::string databaseTableName ()
 
static boost::optional
< AnalysisRecord
factoryFromQuery (const QSqlQuery &query, ProjectDatabase &database)
 
static boost::optional
< AnalysisRecord
getAnalysisRecord (int id, ProjectDatabase &database)
 
static std::vector
< AnalysisRecord
getAnalysisRecords (ProjectDatabase &database)
 
static UpdateByIdQueryData updateByIdQueryData ()
 
static void updatePathData (ProjectDatabase database, const openstudio::path &originalBase, const openstudio::path &newBase)
 
- Static Public Member Functions inherited from openstudio::project::ObjectRecord
static void createIndices (QSqlDatabase &qSqlDatabase, const std::string &databaseTableName)
 

Related Functions

(Note that these are not member functions.)

typedef std::vector
< AnalysisRecord
AnalysisRecordVector
 
typedef boost::optional
< AnalysisRecord
OptionalAnalysisRecord
 

Additional Inherited Members

- Protected Member Functions inherited from openstudio::project::ObjectRecord
 ObjectRecord (std::shared_ptr< detail::ObjectRecord_Impl > impl, ProjectDatabase projectDatabase)
 constructor More...
 
 ObjectRecord (std::shared_ptr< detail::ObjectRecord_Impl > impl)
 constructor, does not register in database, use with caution More...
 
- Protected Member Functions inherited from openstudio::project::Record
void bindValues (QSqlQuery &query) const
 Bind values to a query for saving. More...
 
bool compareValues (const QSqlQuery &query) const
 Checks that values (except id) are same as query. More...
 
bool databaseCompare (const ProjectDatabase &projectDatabase) const
 Compares just this Record to the one in the database and check if they are exactly equal except for id, does not check children. More...
 
boost::optional< int > findIdByHandle () const
 Try to find this Record's id in the database by using its handle. More...
 
bool haveLastValues () const
 Checks if last values are set for this Record to revert back to. More...
 
void insertRow (ProjectDatabase &projectDatabase)
 Inserts a row in the database for this Record and sets id. More...
 
void insertRow (const std::shared_ptr< QSqlDatabase > &db)
 Inserts a row in the database for this Record and sets id. More...
 
void makeDeleteByHandleQuery (QSqlQuery &query) const
 Makes a query to delete Record with this handle from this Record's database table. More...
 
void makeDeleteByIdQuery (QSqlQuery &query) const
 Makes a query to delete Record with this id from this Record's database table. More...
 
void makeSelectAllQuery (QSqlQuery &query) const
 Makes a query to select all Records in this Record's database table. More...
 
void makeSelectByHandleQuery (QSqlQuery &query) const
 Makes a query to select Record with this handle in this Record's database table. More...
 
void makeSelectByIdQuery (QSqlQuery &query) const
 Makes a query to select Record with this id in this Record's database table. More...
 
void onChange ()
 Method called whenever the Record changes, emits onChange signal. More...
 
void removeRow (ProjectDatabase &projectDatabase)
 Removes just this Record from the database, does not remove children. More...
 
void removeRow (const std::shared_ptr< QSqlDatabase > &db)
 Removes just this Record from the database, does not remove children. More...
 
bool revertRow (ProjectDatabase &projectDatabase)
 Reverts just this Record then saves it in the database, does not revert children. More...
 
void revertToLastValues ()
 Revert values back to last state. More...
 
void saveLastValues ()
 Saves current values as last state. More...
 
void saveRow (ProjectDatabase &projectDatabase)
 Saves just this Record in the database, does not save children. More...
 
void saveRow (const std::shared_ptr< QSqlDatabase > &db)
 Saves just this Record in the database, does not save children. More...
 
void setLastValues (const QSqlQuery &query, ProjectDatabase &projectDatabase)
 Set the last state of this object from the query (including id). More...
 
void setLastValues (ProjectDatabase &projectDatabase)
 Sets the last state of just this Record from the database (including id), does not affect children. More...
 
 Record (std::shared_ptr< detail::Record_Impl > impl, ProjectDatabase projectDatabase)
 Constructs a new Record. More...
 
 Record (std::shared_ptr< detail::Record_Impl > impl)
 Constructs a new Record but does not create or save to a row in the database, use with caution. More...
 

Detailed Description

AnalysisRecord is a ObjectRecord.

Member Typedef Documentation

typedef detail::AnalysisRecord_Impl openstudio::project::AnalysisRecord::ImplType

Constructor & Destructor Documentation

openstudio::project::AnalysisRecord::AnalysisRecord ( const analysis::Analysis &  analysis,
ProjectDatabase database 
)
openstudio::project::AnalysisRecord::AnalysisRecord ( const QSqlQuery &  query,
ProjectDatabase database 
)
virtual openstudio::project::AnalysisRecord::~AnalysisRecord ( )
inlinevirtual

Member Function Documentation

boost::optional<AlgorithmRecord> openstudio::project::AnalysisRecord::algorithmRecord ( ) const

Returns the AlgorithmRecord (optional resource) associated with this AnalysisRecord.

analysis::Analysis openstudio::project::AnalysisRecord::analysis ( ) const

Deserializes this record and all its children and resources to analysis::Analysis.

std::vector<DataPointRecord> openstudio::project::AnalysisRecord::completeDataPointRecords ( ) const

Returns the DataPointRecords with complete == true.

static std::string openstudio::project::AnalysisRecord::databaseTableName ( )
static
std::vector<DataPointRecord> openstudio::project::AnalysisRecord::dataPointRecords ( ) const

Returns the DataPointRecords (children) of this AnalysisRecord.

bool openstudio::project::AnalysisRecord::dataPointsAreInvalid ( ) const

Returns true if this AnalysisRecord holds DataPointRecords that are invalid in light of changes to the problem formulation.

static boost::optional<AnalysisRecord> openstudio::project::AnalysisRecord::factoryFromQuery ( const QSqlQuery &  query,
ProjectDatabase database 
)
static
std::vector<DataPointRecord> openstudio::project::AnalysisRecord::failedDataPointRecords ( ) const

Returns the completeDataPointRecords with failed == true.

static boost::optional<AnalysisRecord> openstudio::project::AnalysisRecord::getAnalysisRecord ( int  id,
ProjectDatabase database 
)
static
static std::vector<AnalysisRecord> openstudio::project::AnalysisRecord::getAnalysisRecords ( ProjectDatabase database)
static
std::vector<DataPointRecord> openstudio::project::AnalysisRecord::getDataPointRecords ( const std::vector< QVariant > &  variableValues) const
std::vector<DataPointRecord> openstudio::project::AnalysisRecord::getDataPointRecords ( const std::vector< int > &  discretePerturbationRecordIds) const
std::vector<DataPointRecord> openstudio::project::AnalysisRecord::getDataPointRecords ( const std::string &  tag) const
std::vector<DataPointRecord> openstudio::project::AnalysisRecord::incompleteDataPointRecords ( ) const

Returns the DataPointRecords with complete == false.

ProblemRecord openstudio::project::AnalysisRecord::problemRecord ( ) const

Returns the ProblemRecord (required resource) associated with this AnalysisRecord.

bool openstudio::project::AnalysisRecord::resultsAreInvalid ( ) const

Returns true if this AnalysisRecord holds DataPointRecords with invalid results still attached.

FileReferenceRecord openstudio::project::AnalysisRecord::seedFileReferenceRecord ( ) const

Returns the seed FileReferenceRecord (required child) of this AnalysisRecord.

void openstudio::project::AnalysisRecord::setDataPointsAreInvalid ( bool  value)

Provided for callers operating directly on the database, not holding a copy of this analysis in memory.

Use with caution.

void openstudio::project::AnalysisRecord::setResultsAreInvalid ( bool  value)

Provided for callers operating directly on the database, not holding a copy of this analysis in memory.

Use with caution.

std::vector<DataPointRecord> openstudio::project::AnalysisRecord::successfulDataPointRecords ( ) const

Returns the completeDataPointRecords with failed == false.

static UpdateByIdQueryData openstudio::project::AnalysisRecord::updateByIdQueryData ( )
static
static void openstudio::project::AnalysisRecord::updatePathData ( ProjectDatabase  database,
const openstudio::path &  originalBase,
const openstudio::path &  newBase 
)
static
boost::optional<FileReferenceRecord> openstudio::project::AnalysisRecord::weatherFileReferenceRecord ( ) const

Returns the weather FileReferenceRecord (optional child) of this AnalysisRecord.

Friends And Related Function Documentation

typedef std::vector<AnalysisRecord> AnalysisRecordVector
related
typedef boost::optional<AnalysisRecord> OptionalAnalysisRecord
related