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.

142 lines
4.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, Lis0ResourceWriter
Filename: Lis0ResourceWriter.hxx
Module: Lis0lisfmwrk
@BMIDE autogenerated
==================================================================================================*/
#ifndef LIS0LISFMWRK__LIS0RESOURCEWRITER__HXX
#define LIS0LISFMWRK__LIS0RESOURCEWRITER__HXX
#include <unidefs.h>
#include <Lis0lisfmwrk/toolkit/AbstractResource.hxx>
#include <string>
#include <common/tc_deprecation_macros.h>
#include <tccore/POM_object.hxx>
#include <Lis0lisfmwrk/liblis0lisfmwrk_exports.h>
namespace lis0lisfmwrk
{
class Lis0ResourceWriter;
}
namespace lis0lisfmwrk
{
class Lis0ResourceWriterImpl;
}
namespace lis0lisfmwrk
{
class Lis0ResourceWriterDelegate;
}
namespace lis0lisfmwrk
{
class Lis0ResourceWriterDispatch;
}
namespace lis0lisfmwrk
{
class Lis0ResourceWriterGenImpl;
}
namespace Teamcenter
{
class RootObjectImpl;
}
class LIS0LISFMWRK_API lis0lisfmwrk::Lis0ResourceWriter
: public ::Teamcenter::POM_object
{
public:
/**
* Get the Interface Name
* @return - return desc for getInterfaceName
*/
static const std::string& getInterfaceName();
///
/// 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 lis0CreateResourceModel( 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 lis0IsWritable( 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 lis0WriteTo( tag_t resourceTag, tag_t inputTag, const std::string *requiredMediaType, std::string *doc ) const;
protected:
// Method to initialize
virtual void initialize( ::Teamcenter::RootObjectImpl* impl );
/**
* Constructor
*/
Lis0ResourceWriter();
/**
* Destructor
*/
virtual ~Lis0ResourceWriter();
private:
// Getter method for the Implementation Object
Lis0ResourceWriterImpl* getLis0ResourceWriterImpl() const;
// Setter method for the Implementation Object
::Teamcenter::RootObjectImpl* setLis0ResourceWriterImpl( ::Teamcenter::RootObjectImpl* impl );
// Method to set the delete impl boolean
void setDeleteImpl( bool del );
// Pointer to the Implementation object
Lis0ResourceWriterImpl* m_lis0resourcewriterImpl;
// 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 Lis0ResourceWriter - desc for Lis0ResourceWriter parameter
*/
Lis0ResourceWriter( const Lis0ResourceWriter& );
Lis0ResourceWriter& operator=( const Lis0ResourceWriter& );
friend class Lis0ResourceWriterDelegate;
friend class Lis0ResourceWriterDispatch;
friend class Lis0ResourceWriterGenImpl;
};
#include <Lis0lisfmwrk/liblis0lisfmwrk_undef.h>
#endif // LIS0LISFMWRK__LIS0RESOURCEWRITER__HXX