//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, Lis0ResourceWriterDelegate Filename: Lis0ResourceWriterDelegate.hxx Module: Lis0lisfmwrk @BMIDE autogenerated ==================================================================================================*/ #ifndef LIS0LISFMWRK__LIS0RESOURCEWRITERDELEGATE_HXX #define LIS0LISFMWRK__LIS0RESOURCEWRITERDELEGATE_HXX #include #include #include namespace lis0lisfmwrk { class Lis0ResourceWriterDelegate; } namespace lis0lisfmwrk { class Lis0ResourceWriterImpl; } namespace lis0lisfmwrk { class Lis0ResourceWriter; } namespace lis0lisfmwrk { class Lis0ResourceWriterGenImpl; } namespace lis0lisfmwrk_alias = ::lis0lisfmwrk; class LIS0LISFMWRK_API lis0lisfmwrk_alias::Lis0ResourceWriterDelegate { public: // Method to initialize this Class static int initializeClass(); // Method to get the Lis0ResourceWriterDelegate instance static Lis0ResourceWriterDelegate& getInstance(); // Method to create the Lis0ResourceWriterImpl pointer static Lis0ResourceWriterImpl* createImpl( Lis0ResourceWriter& ifObj ); // Method to delete the Lis0ResourceWriterImpl pointer static void deleteImpl( Lis0ResourceWriterImpl* impl ); /// /// Create a resource model based on the input resource instance /// @version Teamcenter 10.1.4 /// @param resourceTag - Resource instance /// @param inputTag - extra tag or parameter to pass /// @param resourceModel - populate the resource model /// @return - Error code. If successful, return 0. /// int lis0CreateResourceModelBase(const Lis0ResourceWriter &ifObj, tag_t resourceTag, tag_t inputTag, lis0lisfmwrk::AbstractResource **resourceModel ) const; /// /// Validate if it is supported to write based on the input resource instance /// @version Teamcenter 10.1.4 /// @param resourceTag - Resource instance /// @param canWrite - Flag to indicate if it is supported to write based on the input resource instance /// @return - Error code. If successful, return 0. /// int lis0IsWritableBase(const Lis0ResourceWriter &ifObj, tag_t resourceTag, bool *canWrite ) const; /// /// Write to the document according to the input resource instance and required media type /// @version Teamcenter 10.1.4 /// @param resourceTag - resource instance /// @param inputTag - extra resource or parameter to pass /// @param requiredMediaType - mediawritername /// @param doc - document /// @return - If successful, return 0 /// int lis0WriteToBase(const Lis0ResourceWriter &ifObj, tag_t resourceTag, tag_t inputTag, const std::string *requiredMediaType, std::string *doc ) const; protected: // Pointer to the instance static Lis0ResourceWriterDelegate* m_pInstance; Lis0ResourceWriterDelegate(); virtual ~Lis0ResourceWriterDelegate(); static void setInstance( Lis0ResourceWriterDelegate* instance ); private: friend class ::lis0lisfmwrk::Lis0ResourceWriterGenImpl; }; #include #endif // LIS0LISFMWRK__LIS0RESOURCEWRITERDELEGATE_HXX