//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, Bom0PBELineDelegate Filename: Bom0PBELineDelegate.hxx Module: Bom0bommanagement @BMIDE autogenerated ==================================================================================================*/ #ifndef TEAMCENTER__BOM0BOMMANAGEMENT__BOM0PBELINEDELEGATE_HXX #define TEAMCENTER__BOM0BOMMANAGEMENT__BOM0PBELINEDELEGATE_HXX #include #include #include namespace Teamcenter { namespace Bom0bommanagement { class Bom0PBELineDelegate; } } namespace Teamcenter { namespace Bom0bommanagement { class Bom0PBELineImpl; } } namespace Teamcenter { namespace Bom0bommanagement { class Bom0PBELine; } } namespace Teamcenter { namespace Bom0bommanagement { class Bom0PBELineGenImpl; } } namespace Teamcenter_alias = ::Teamcenter; class BOM0BOMMANAGEMENT_API Teamcenter_alias::Bom0bommanagement::Bom0PBELineDelegate { public: // Method to initialize this Class static int initializeClass(); // Method to get the Bom0PBELineDelegate instance static Bom0PBELineDelegate& getInstance(); // Method to create the Bom0PBELineImpl pointer static Bom0PBELineImpl* createImpl( Bom0PBELine& ifObj ); // Method to delete the Bom0PBELineImpl pointer static void deleteImpl( Bom0PBELineImpl* impl ); /// /// The operation aligns part occurences (Bom0PBELine) with design occurrences (ImanItemLine). The operation returns corresponding alignment information. If the inputs are already aligned this operation returns the existing alignment information. /// @version Teamcenter 11.2.3 /// @param input - A vector of data that contains part occurrence, design occurrence as input and alignment information as output. It should be of type Bom0PartOccAlgnmtInputOp. /// @param bulkData - A data structure to store objects and other information relevant for set based operation. /// @return - This operation returns ITK_ok on success and error code on failure. /// int bom0AlignPartOccurrencesBase( std::vector< ::Teamcenter::BulkInput* > *input, ::Teamcenter::BulkData *bulkData ); /// /// This operation un-aligns part occurences (Bom0PBELine) and design occurrences (ImanItemLine). User can also un-align the children of each input part occurence. If input part occurence is not aligned to any design occurrence, this operation does not update the input part occurence. /// @version Teamcenter 11.2.3 /// @param input - A vector of data that contains part occurrence and intent of user to un-align child part occurrences of input Bom0PBELine. It should be of type Bom0PartOccUnAlgnmtInput. /// @param bulkData - A data structure to store objects and other information relevant for set based operation. /// @return - This operation returns ITK_ok on success and error code on failure. /// int bom0UnAlignPartOccurrencesBase( std::vector< ::Teamcenter::BulkInput* > *input, ::Teamcenter::BulkData *bulkData ); /// /// desc for createPost /// @version Tc 8 /// @param creInput - Description for the Create Input /// @return - return desc for createPost /// int createPostBase(const Bom0PBELine &ifObj, ::Teamcenter::CreateInput *creInput ); /// /// Description for the Finalize Create Input /// @version Tc 8 /// @param creInput - desc for creInput parameter /// @return - Return desc for Initialize for Create /// int finalizeCreateInputBase(const Bom0PBELine &ifObj, ::Teamcenter::CreateInput *creInput ); /// /// This is the getter for retrieving the recipe/permanent ID if its been created (and cached on the instance). Every Business Object should implement this operation. /// @version Teamcenter 11.1 /// @param uid - Recipe/permanent ID /// @param isFirstTime - If Session Recovery Uid is yet to be set or does the object need to be serialized again? /// @return - Failure code /// int fnd0AskSRUidBase(const Bom0PBELine &ifObj, std::string *uid, bool *isFirstTime ) const; /// /// Generates permanent ID/recipe. Every Business Object should implement this operation. /// @version Teamcenter 11.1 /// @param recipe - Permanent ID/recipe /// @return - Failure code. /// int fnd0GenerateRecipeBase(const Bom0PBELine &ifObj, std::string *recipe ); /// /// If Business Object supports recoverable ID. Every Business Object should implement this operation. /// @version Teamcenter 11.1 /// @param isPersistedRecipe - isPersistedRecipe param should be set to true if the recipe is limited to the user session and should be serialized to the database /// @param isRecoverableIDSupported - Returning true indicates support for recoverability/permanent IDs /// @return - Failure code. /// int fnd0IsRecoverableBase(const Bom0PBELine &ifObj, bool *isPersistedRecipe, bool *isRecoverableIDSupported ) const; /// /// This is the setter for the recipe/permanent ID when it is created (to be cached on the instance). Every Business Object should implement this operation. /// @version Teamcenter 11.1 /// @param uid - Rrecipe/permanent ID /// @return - Failure code. /// int fnd0SetSRUidBase(const Bom0PBELine &ifObj, const std::string *uid ); protected: // Pointer to the instance static Bom0PBELineDelegate* m_pInstance; Bom0PBELineDelegate(); virtual ~Bom0PBELineDelegate(); static void setInstance( Bom0PBELineDelegate* instance ); private: friend class ::Teamcenter::Bom0bommanagement::Bom0PBELineGenImpl; }; #include #endif // TEAMCENTER__BOM0BOMMANAGEMENT__BOM0PBELINEDELEGATE_HXX