You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

186 lines
7.6 KiB

//Copyright 2020 Siemens Digital Industries Software
//==================================================
//Copyright $2020.
//Siemens Product Lifecycle Management Software Inc.
//All Rights Reserved.
//==================================================
//Copyright 2020 Siemens Digital Industries Software
/*==================================================================================================
File description:
This file contains the declaration for the Business Object, ValidationAgentRevision
Filename: ValidationAgentRevision.hxx
Module: validation
@BMIDE autogenerated
==================================================================================================*/
#ifndef TEAMCENTER__VALIDATIONAGENTREVISION__HXX
#define TEAMCENTER__VALIDATIONAGENTREVISION__HXX
#include <vector>
#include <common/tc_deprecation_macros.h>
#include <tccore/ItemRevision.hxx>
#include <validation/libvalidation_exports.h>
namespace Teamcenter
{
class ValidationAgentRevision;
}
namespace Teamcenter
{
class ValidationAgentRevisionImpl;
}
namespace Teamcenter
{
class ValidationAgentRevisionDelegate;
}
namespace Teamcenter
{
class ValidationAgentRevisionDispatch;
}
namespace Teamcenter
{
class ValidationAgentRevisionGenImpl;
}
namespace Teamcenter
{
class RootObjectImpl;
}
class VALIDATION_API Teamcenter::ValidationAgentRevision
: public ::Teamcenter::ItemRevision
{
public:
/**
* Get the Interface Name
* @return - return desc for getInterfaceName
*/
static const std::string& getInterfaceName();
///
/// Getter for a Boolean Property
/// @version Teamcenter 8.2
/// @param value - Parameter Value
/// @param isNull - Returns true if the Parameter value is null
/// @return - Status. 0 if successful
///
int getKeep_overridden_result( bool &value, bool &isNull ) const;
///
/// Getter for a Boolean Property
/// @version Teamcenter 8.2
/// @param value - Parameter Value
/// @param isNull - Returns true if the Parameter value is null
/// @return - Status. 0 if successful
///
int getOverride_reason_mandatory( bool &value, bool &isNull ) const;
///
/// Setter for a Boolean Property
/// @version Teamcenter 8.2
/// @param value - Value to be set for the parameter
/// @param isNull - If true, set the parameter value to null
/// @return - Status. 0 if successful
///
int setKeep_overridden_result( bool value, bool isNull=false );
///
/// Setter for a Boolean Property
/// @version Teamcenter 8.2
/// @param value - Value to be set for the parameter
/// @param isNull - If true, set the parameter value to null
/// @return - Status. 0 if successful
///
int setOverride_reason_mandatory( bool value, bool isNull=false );
///
/// This operation will evaluate the compound result of given validation target objects and return the corresponding compound results via an output parameter.
/// @version Teamcenter 8.2
/// @param validationTargetObjects - A vector of validation target object tags whose compound result will be evaluated for this validation agent revision.
/// @param compoundResult - The vector of corresponding compound results for the given vector of validation target objects.
/// @return - The status code. ITK_ok indicates that the operation is successfully executed.
///
int evaluateCompoundResult( const std::vector< tag_t > &validationTargetObjects, std::vector< bool > &compoundResult );
///
/// This ioperation will retun a vector of ValidationResult object tags via an ouput paramter.
/// @version Teamcenter 8.2
/// @param valDataRevisions - A vector of ValDataRevision objects that will be used to limit the scope of the ValidationResult objects.
/// @param selectedObjects - A vector of selected objects that the system will use to find the actual target objects. The resulting target objects will be used to find the associated ValidationResult objects.
/// @param targetObjects - A vector objects that will be used to find the associated ValidationResult objects.
/// @param validationResultObjects - A vector of ValidationResult tags that are found from the given inut criteria.
/// @return - The status code. ITK_ok indicates that this operation is successfully executed.
///
int getValidationResults( const std::vector< tag_t > &valDataRevisions, const std::vector< tag_t > &selectedObjects, const std::vector< tag_t > &targetObjects, std::vector< tag_t > &validationResultObjects );
///
/// This operation will return a vector of validation target object tags via an output parameter.
/// @version Teamcenter 8.2
/// @param valDataRevisions - A vector of ValDataRevision objects that will be used to limit the scope of the targets.
/// @param selectedObjects - A vector of selected objects that the system will use to find the actual target objects.
/// @param targetObjects - A vector of target object tags that are found from the given input criteria.
/// @return - The return status code. ITK_ok means thatthe operation is successfully executed.
///
int getValidationTargets( const std::vector< tag_t > &valDataRevisions, const std::vector< tag_t > &selectedObjects, std::vector< tag_t > &targetObjects );
///
/// This operation will perform the validation tasks. Each validation agent revision must implement this method to process the validation tasks.
/// @version Teamcenter 8.2
/// @param valDataRevisionObjects - A vector of ValDataRevision objects that will be used to validate against the validation targets
/// @param selectedObjects - A vector of selected objects that this validation agent will use to find the actual validation targets for this validation run.
/// @param targetObjects - A vector of validation targets for this validation run.
/// @return - The status code returned from the run. TIK_ok indicates that the validation run is executed successfully.
///
int runValidation( const std::vector< tag_t > &valDataRevisionObjects, const std::vector< tag_t > &selectedObjects, const std::vector< tag_t > &targetObjects );
protected:
// Method to initialize
virtual void initialize( ::Teamcenter::RootObjectImpl* impl );
/**
* Constructor
*/
ValidationAgentRevision();
/**
* Destructor
*/
virtual ~ValidationAgentRevision();
private:
// Getter method for the Implementation Object
ValidationAgentRevisionImpl* getValidationAgentRevisionImpl() const;
// Setter method for the Implementation Object
::Teamcenter::RootObjectImpl* setValidationAgentRevisionImpl( ::Teamcenter::RootObjectImpl* impl );
// Method to set the delete impl boolean
void setDeleteImpl( bool del );
// Pointer to the Implementation object
ValidationAgentRevisionImpl* m_validationagentrevisionImpl;
// Flag to indicate if Implementation object needs to be deleted
bool m_deleteImpl;
/**
* Name of the Business Object
*/
static std::string name;
/**
* Private default constructor. We do not want this class instantiated without the business object passed in.
* @param ValidationAgentRevision - desc for ValidationAgentRevision parameter
*/
ValidationAgentRevision( const ValidationAgentRevision& );
ValidationAgentRevision& operator=( const ValidationAgentRevision& );
friend class ValidationAgentRevisionDelegate;
friend class ValidationAgentRevisionDispatch;
friend class ValidationAgentRevisionGenImpl;
};
#include <validation/libvalidation_undef.h>
#endif // TEAMCENTER__VALIDATIONAGENTREVISION__HXX