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.

128 lines
3.8 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, Fnd0IdGenerationRule
Filename: Fnd0IdGenerationRule.hxx
Module: property
@BMIDE autogenerated
==================================================================================================*/
#ifndef TEAMCENTER__FND0IDGENERATIONRULE__HXX
#define TEAMCENTER__FND0IDGENERATIONRULE__HXX
#include <unidefs.h>
#include <property/Fnd0ConcatenationRule.hxx>
#include <common/tc_deprecation_macros.h>
#include <tccore/POM_object.hxx>
#include <property/libproperty_exports.h>
namespace Teamcenter
{
class Fnd0IdGenerationRule;
}
namespace Teamcenter
{
class Fnd0IdGenerationRuleImpl;
}
namespace Teamcenter
{
class Fnd0IdGenerationRuleDelegate;
}
namespace Teamcenter
{
class Fnd0IdGenerationRuleDispatch;
}
namespace Teamcenter
{
class Fnd0IdGenerationRuleGenImpl;
}
namespace Teamcenter
{
class RootObjectImpl;
}
class PROPERTY_API Teamcenter::Fnd0IdGenerationRule
: public ::Teamcenter::POM_object
{
public:
/**
* Get the Interface Name
* @return - return desc for getInterfaceName
*/
static const std::string& getInterfaceName();
///
/// This method gets the valid Concatenation Rule and calls generateId on it. It returns the generated ID.
/// @version Teamcenter 11.1
/// @param idGeneratorBOTag - Tag of the IdGenerator object that holds the configuration information specified by the user
/// @param generatedId - ID that is generated
/// @return -
///
int fnd0generateId( const tag_t idGeneratorBOTag, char **generatedId );
///
/// This method evaluates all Concatenation Rules available on this Id Generation Rule and returns a valid Concatenation Rule
/// @version Teamcenter 11.1
/// @param concatenationRule - Concatenation Rule object
/// @return - returns status as integer
///
int fnd0getValidConcatenationRule( ::Teamcenter::Fnd0ConcatenationRule **concatenationRule );
protected:
// Method to initialize
virtual void initialize( ::Teamcenter::RootObjectImpl* impl );
/**
* Constructor
*/
Fnd0IdGenerationRule();
/**
* Destructor
*/
virtual ~Fnd0IdGenerationRule();
private:
// Getter method for the Implementation Object
Fnd0IdGenerationRuleImpl* getFnd0IdGenerationRuleImpl() const;
// Setter method for the Implementation Object
::Teamcenter::RootObjectImpl* setFnd0IdGenerationRuleImpl( ::Teamcenter::RootObjectImpl* impl );
// Method to set the delete impl boolean
void setDeleteImpl( bool del );
// Pointer to the Implementation object
Fnd0IdGenerationRuleImpl* m_fnd0idgenerationruleImpl;
// 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 Fnd0IdGenerationRule - desc for Fnd0IdGenerationRule parameter
*/
Fnd0IdGenerationRule( const Fnd0IdGenerationRule& );
Fnd0IdGenerationRule& operator=( const Fnd0IdGenerationRule& );
friend class Fnd0IdGenerationRuleDelegate;
friend class Fnd0IdGenerationRuleDispatch;
friend class Fnd0IdGenerationRuleGenImpl;
};
#include <property/libproperty_undef.h>
#endif // TEAMCENTER__FND0IDGENERATIONRULE__HXX