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.

150 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, ImanItemLine
Filename: ImanItemLine.hxx
Module: bom
@BMIDE autogenerated
==================================================================================================*/
#ifndef TEAMCENTER__IMANITEMLINE__HXX
#define TEAMCENTER__IMANITEMLINE__HXX
#include <unidefs.h>
#include <common/tc_deprecation_macros.h>
#include <bom/BOMLine.hxx>
#include <bom/libbom_exports.h>
namespace Teamcenter
{
class ImanItemLine;
}
namespace Teamcenter
{
class ImanItemLineImpl;
}
namespace Teamcenter
{
class ImanItemLineDelegate;
}
namespace Teamcenter
{
class ImanItemLineDispatch;
}
namespace Teamcenter
{
class ImanItemLineGenImpl;
}
namespace Teamcenter
{
class RootObjectImpl;
}
class BOM_API Teamcenter::ImanItemLine
: public ::Teamcenter::BOMLine
{
public:
/**
* Get the Interface Name
* @return - return desc for getInterfaceName
*/
static const std::string& getInterfaceName();
///
/// Add a substitute
/// @version Teamcenter 13.1
/// @param itemOrRevision - Tag of the Item or item revision to add as substitute
/// @param bomView - Tag of the BOM View to add as substitute
/// @param newLine - Tag of the new substitute ImanItemLine
/// @return -
///
int fnd0AddSubstitute( tag_t itemOrRevision, tag_t bomView, tag_t *newLine );
///
/// The Operation returns configured revision tag based on the custom configuration user has implemented.
/// @version Teamcenter 9
/// @param occthread_tag - Occurrenece Thread Tag
/// @param item_tag - Item Tag
/// @param bvr_tag - BVR Tag
/// @param itmrev_tag - Item Revision Tag
/// @deprecated #Teamcenter::ImanItemLine::fnd0getCustomConfiguredIrf deprecated in Teamcenter 9.1
/// @return - Returns Tag of configured Item Revision.
///
TC_DEPRECATED_WITH_DEPRECATION_INFO("Teamcenter 9.1","Teamcenter::ImanItemLine::fnd0getCustomConfiguredIrf","need to modify parameters")
int fnd0getCustomConfiguredIrf( const tag_t &occthread_tag, const tag_t &item_tag, const tag_t &bvr_tag, tag_t *itmrev_tag );
///
/// The Operation returns configured revision tag based on the custom configuration user has implemented.
/// @version Teamcenter 9.1
/// @param bomLineTag - BOMLine Tag
/// @param itemRevTag - Item Revision Tag
/// @return - Returns Tag of configured Item Revision.
///
int fnd0getCustomConfiguredIrf( const tag_t *bomLineTag, tag_t *itemRevTag );
///
/// Prefer a substitute
/// @version Teamcenter 13.1
/// @param isTemporary - True if the parent BVR cannot be modified
/// @return -
///
int fnd0PreferSubstitute( bool *isTemporary );
protected:
// Method to initialize
virtual void initialize( ::Teamcenter::RootObjectImpl* impl );
/**
* Constructor
*/
ImanItemLine();
/**
* Destructor
*/
virtual ~ImanItemLine();
private:
// Getter method for the Implementation Object
ImanItemLineImpl* getImanItemLineImpl() const;
// Setter method for the Implementation Object
::Teamcenter::RootObjectImpl* setImanItemLineImpl( ::Teamcenter::RootObjectImpl* impl );
// Method to set the delete impl boolean
void setDeleteImpl( bool del );
// Pointer to the Implementation object
ImanItemLineImpl* m_imanitemlineImpl;
// 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 ImanItemLine - desc for ImanItemLine parameter
*/
ImanItemLine( const ImanItemLine& );
ImanItemLine& operator=( const ImanItemLine& );
friend class ImanItemLineDelegate;
friend class ImanItemLineDispatch;
friend class ImanItemLineGenImpl;
};
#include <bom/libbom_undef.h>
#endif // TEAMCENTER__IMANITEMLINE__HXX