//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, Fnd0ConcatenationRuleDelegate Filename: Fnd0ConcatenationRuleDelegate.hxx Module: property @BMIDE autogenerated ==================================================================================================*/ #ifndef TEAMCENTER__FND0CONCATENATIONRULEDELEGATE_HXX #define TEAMCENTER__FND0CONCATENATIONRULEDELEGATE_HXX #include #include #include namespace Teamcenter { class Fnd0ConcatenationRuleDelegate; } namespace Teamcenter { class Fnd0ConcatenationRuleImpl; } namespace Teamcenter { class Fnd0ConcatenationRule; } namespace Teamcenter { class Fnd0ConcatenationRuleGenImpl; } namespace Teamcenter_alias = ::Teamcenter; class PROPERTY_API Teamcenter_alias::Fnd0ConcatenationRuleDelegate { public: // Method to initialize this Class static int initializeClass(); // Method to get the Fnd0ConcatenationRuleDelegate instance static Fnd0ConcatenationRuleDelegate& getInstance(); // Method to create the Fnd0ConcatenationRuleImpl pointer static Fnd0ConcatenationRuleImpl* createImpl( Fnd0ConcatenationRule& ifObj ); // Method to delete the Fnd0ConcatenationRuleImpl pointer static void deleteImpl( Fnd0ConcatenationRuleImpl* impl ); /// /// This method generates the ID. /// @version Teamcenter 11.1 /// @param idGeneratorBOTag - Tag of the object that holds the configuration information specified by the user. /// @param generatedId - Id that is generated. /// @return - /// int fnd0generateIdBase(const Fnd0ConcatenationRule &ifObj, const tag_t idGeneratorBOTag, char **generatedId ); /// /// This method would validate the incoming Id against the configured Naming Rule. A Naming Rule is optionally associated with this Concatenation Rule. If there is no Naming Rule associated, this method will return status indicating there is no Naming Rule. /// @version Teamcenter 11.1 /// @param inputId - Input Id /// @param isValidId - Is Valid Id /// @return - Returns status as integer /// int fnd0validateIdBase(const Fnd0ConcatenationRule &ifObj, const char *inputId, bool *isValidId ); protected: // Pointer to the instance static Fnd0ConcatenationRuleDelegate* m_pInstance; Fnd0ConcatenationRuleDelegate(); virtual ~Fnd0ConcatenationRuleDelegate(); static void setInstance( Fnd0ConcatenationRuleDelegate* instance ); private: friend class ::Teamcenter::Fnd0ConcatenationRuleGenImpl; }; #include #endif // TEAMCENTER__FND0CONCATENATIONRULEDELEGATE_HXX