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.

277 lines
9.4 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, Fnd0AlgebraicFormula
Filename: Fnd0AlgebraicFormula.hxx
Module: Fnd0formulamgmt
@BMIDE autogenerated
==================================================================================================*/
#ifndef TEAMCENTER__FND0ALGEBRAICFORMULA__HXX
#define TEAMCENTER__FND0ALGEBRAICFORMULA__HXX
#include <vector>
#include <string>
#include <common/tc_deprecation_macros.h>
#include <tccore/POM_application_object.hxx>
#include <Fnd0formulamgmt/libfnd0formulamgmt_exports.h>
namespace Teamcenter
{
class Fnd0AlgebraicFormula;
}
namespace Teamcenter
{
class Fnd0AlgebraicFormulaImpl;
}
namespace Teamcenter
{
class Fnd0AlgebraicFormulaDelegate;
}
namespace Teamcenter
{
class Fnd0AlgebraicFormulaDispatch;
}
namespace Teamcenter
{
class Fnd0AlgebraicFormulaGenImpl;
}
namespace Teamcenter
{
class RootObjectImpl;
}
class FND0FORMULAMGMT_API Teamcenter::Fnd0AlgebraicFormula
: public ::Teamcenter::POM_application_object
{
public:
/**
* Get the Interface Name
* @return - return desc for getInterfaceName
*/
static const std::string& getInterfaceName();
///
/// Getter for a string Property
/// @version Teamcenter 9.1
/// @param value - Parameter value
/// @param isNull - Returns true if the Parameter value is null
/// @return - Status. 0 if successful
///
int getFnd0ASTExpression( std::string &value, bool &isNull ) const;
///
/// Getter for a string Property
/// @version Teamcenter 9.1
/// @param value - Parameter value
/// @param isNull - Returns true if the Parameter value is null
/// @return - Status. 0 if successful
///
int getFnd0ASTInvExpression( std::string &value, bool &isNull ) const;
///
/// Getter for an String Array Property
/// @version Teamcenter 9.1
/// @param values - Parameter value
/// @param isNull - Returns true for an array element if the parameter value at that location is null
/// @return - Status. 0 if successful
///
int getFnd0ConstNames( std::vector< std::string > &values, std::vector< int > &isNull ) const;
///
/// Getter for a string Property
/// @version Teamcenter 9.1
/// @param value - Parameter value
/// @param isNull - Returns true if the Parameter value is null
/// @return - Status. 0 if successful
///
int getFnd0Expression( std::string &value, bool &isNull ) const;
///
/// Getter for a string Property
/// @version Teamcenter 9.1
/// @param value - Parameter value
/// @param isNull - Returns true if the Parameter value is null
/// @return - Status. 0 if successful
///
int getFnd0InvExpression( std::string &value, bool &isNull ) const;
///
/// Getter for a string Property
/// @version Teamcenter 9.1
/// @param value - Parameter value
/// @param isNull - Returns true if the Parameter value is null
/// @return - Status. 0 if successful
///
int getFnd0Name( std::string &value, bool &isNull ) const;
///
/// Getter for an String Array Property
/// @version Teamcenter 9.1
/// @param values - Parameter value
/// @param isNull - Returns true for an array element if the parameter value at that location is null
/// @return - Status. 0 if successful
///
int getFnd0VariableNames( std::vector< std::string > &values, std::vector< int > &isNull ) const;
///
/// Setter for a string Property
/// @version Teamcenter 9.1
/// @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 setFnd0ASTExpression( const std::string &value, bool isNull=false );
///
/// Setter for a string Property
/// @version Teamcenter 9.1
/// @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 setFnd0ASTInvExpression( const std::string &value, bool isNull=false );
///
/// Setter for an string Array Property
/// @version Teamcenter 9.1
/// @param values - Values to be set for the parameter
/// @param isNull - If array element is true, set the parameter value at that location as null
/// @return - Status. 0 if successful
///
int setFnd0ConstNames( const std::vector< std::string > &values, const std::vector< int > *isNull=0 );
///
/// Setter for a string Property
/// @version Teamcenter 9.1
/// @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 setFnd0Expression( const std::string &value, bool isNull=false );
///
/// Setter for a string Property
/// @version Teamcenter 9.1
/// @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 setFnd0InvExpression( const std::string &value, bool isNull=false );
///
/// Setter for a string Property
/// @version Teamcenter 9.1
/// @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 setFnd0Name( const std::string &value, bool isNull=false );
///
/// Setter for an string Array Property
/// @version Teamcenter 9.1
/// @param values - Values to be set for the parameter
/// @param isNull - If array element is true, set the parameter value at that location as null
/// @return - Status. 0 if successful
///
int setFnd0VariableNames( const std::vector< std::string > &values, const std::vector< int > *isNull=0 );
///
/// Compute the algebraic formula
/// @version Teamcenter 9.1
/// @param constValues - List of constant values
/// @param variableValues - List of variable values
/// @param computedResult - Computed result
/// @return - Status. Return 0 if successful
///
int fnd0Compute( const std::vector< std::string > &constValues, const std::vector< std::string > &variableValues, std::string &computedResult );
///
/// Compute the algebraic formula
/// @version Teamcenter 9.1
/// @param constValues - Vector of constant values
/// @param variableGrpValues - Vector of variable group values
/// @param grpCount - Group count
/// @param computedGrpResults - Vector of computed group results
/// @return - Status. Return 0 if successful.
///
int fnd0Compute( const std::vector< std::string > *constValues, const std::vector< std::string > *variableGrpValues, int grpCount, std::vector< std::string > *computedGrpResults );
///
/// Compute the inverse-expression
/// @version Teamcenter 9.1
/// @param constValues - List of constant values
/// @param variableValues - List of variable values
/// @param computedResult - Computed result
/// @return - Status. Return 0 if successful
///
int fnd0InverseCompute( const std::vector< std::string > &constValues, const std::vector< std::string > &variableValues, std::string &computedResult );
///
/// Replace the contants with values
/// @version Teamcenter 9.1
/// @param constValues - Vector of constant values
/// @param replacedExpression - Replaced expression
/// @return - 0 if successful
///
int fnd0ReplaceConstants( const std::vector< std::string > *constValues, std::string *replacedExpression );
protected:
// Method to initialize
virtual void initialize( ::Teamcenter::RootObjectImpl* impl );
/**
* Constructor
*/
Fnd0AlgebraicFormula();
/**
* Destructor
*/
virtual ~Fnd0AlgebraicFormula();
private:
// Getter method for the Implementation Object
Fnd0AlgebraicFormulaImpl* getFnd0AlgebraicFormulaImpl() const;
// Setter method for the Implementation Object
::Teamcenter::RootObjectImpl* setFnd0AlgebraicFormulaImpl( ::Teamcenter::RootObjectImpl* impl );
// Method to set the delete impl boolean
void setDeleteImpl( bool del );
// Pointer to the Implementation object
Fnd0AlgebraicFormulaImpl* m_fnd0algebraicformulaImpl;
// 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 Fnd0AlgebraicFormula - desc for Fnd0AlgebraicFormula parameter
*/
Fnd0AlgebraicFormula( const Fnd0AlgebraicFormula& );
Fnd0AlgebraicFormula& operator=( const Fnd0AlgebraicFormula& );
friend class Fnd0AlgebraicFormulaDelegate;
friend class Fnd0AlgebraicFormulaDispatch;
friend class Fnd0AlgebraicFormulaGenImpl;
};
#include <Fnd0formulamgmt/libfnd0formulamgmt_undef.h>
#endif // TEAMCENTER__FND0ALGEBRAICFORMULA__HXX