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.

164 lines
6.6 KiB

/*==============================================================================
Copyright (c) 2003-2005 UGS Corporation
Unpublished - All Rights Reserved
==============================================================================*/
/**
@file
ITEM specific Message definitions.
Messages are general actions e.g. save, delete. When a Message is sent to a
specific Type or instance of a Type, then the Method registered with that
Message/Type combination will be executed. See ITK documentation on Methods
for further details.
Each message has a unique set of parameters, which are defined here. These
parameters are passed in the varargs list of #METHOD_execute /
#METHOD_execute_using, and received in the varargs list of
action functions registered to perform methods.
Generic system messages, e.g. save, delete are defined in tc_msg.h.
*/
/* */
#ifndef ITEM_MSG_H
#define ITEM_MSG_H
#include <tccore/libtccore_exports.h>
/**
@defgroup ITEM_MSG Messages
@ingroup ITEM
@{
*/
/**
Create a new item with initial working revision.
@param const char* item_id
@param const char* item_name
@param const char* type_name
@param const char* rev_id
@param tag_t* new_item
@param tag_t* new_rev
@param tag_t item_master_form
@param tag_t item_rev_master_form
*/
#define ITEM_create_msg "ITEM_create"
/**
Creates a new item based on an existing item revision.
@param tag_t old_item
@param tag_t old_rev
@param const char* new_item_id
@param const char* new_rev_id
@param tag_t* new_item
@param tag_t* new_rev
@param const char* new_name
@param const char* new_description
@param tag_t item_master_form
@param tag_t item_rev_master_form
*/
#define ITEM_create_from_rev_msg "ITEM_create_from_rev"
/**
Derives selected change management item_revs to a new change management item and item_rev.
Process includes optional propagation of objects related to selected item_revs and relation properties
based on deep copy rules, propagation of object properties from selected item_revs based on business
object constant CopyFromOriginal and relation of selected item_revs to the new item_rev.
@param std::vector<Teamcenter::BulkInput*> *deriveInput A vector of data that contains reference information to the object to be dervied
@param Teamcenter::BulkData *bulkData A data structure to store objects and other information relevant for set-based operation
*/
#define ITEM_operation_derive_msg "cm0DeriveChange#std::vector<Teamcenter::BulkInput>,*,*$Teamcenter::BulkData,*"
/**
Creates a new (empty) working revision for an existing item.
@param tag_t item
@param const char* rev_id
@param tag_t* new_rev
@param tag_t item_rev_master_form
*/
#define ITEM_create_rev_msg "ITEM_create_rev"
/**
Produces a new working revision based on the given existing revision.
If item_rev_master_form is passed as NULL then new form is not created. And it will only be created while
performing ITEM_perform_deepcopy. Hence if a post action requires to access Itemrevision Master form then
it should be attached to ITEM_deep_copy instead of ITEM_copy_rev.
@param tag_t source_rev
@param const char* rev_id
@param tag_t* new_rev
@param tag_t item_rev_master_form
*/
#define ITEM_copy_rev_msg "ITEM_copy_rev"
/**
This is for reading the Site Preference Rule set for DeepCopy operation and
based on the copy rules set for each of the Item revision attachments,
the copy operation will be carried out as
<table>
<tr><td>copy_as_object </td><td>A brand new object will be created from the existing attachment object.
The newly created object has distinct behavior than its parent.</td></tr>
<tr><td>copy_as_reference</td><td>A symbolic link will be created between the attachment of
the parent item revision and newly created Item revision.
If the attachment of parent changes the newly created Item rev's
corresponding attachment also changes</td></tr>
<tr><td>no_copy </td><td>The Attachment will be detached from the newly created ITem Revision</td></tr>
</table>
@param tag_t new_rev The Tag of the newly created Item Revision
@param char* operation Whether the operation is Save As/Revise
@param tag_t parent_rev The Tag of the Item Revision over which Save As/Revise operation will be performed
@param int copyCount Number of deep copy rules set
@param ITEM_deepcopy_info_t* copyInfo Deep Copy Rule Information
@param int* count Number of Datasets attached
@param tag_t** copied_objects The tags of the deep copied attachments
*/
#define ITEM_deep_copy_msg "ITEM_deep_copy"
/**
Produces a new baseline for the given existing revision.
@param tag_t base_rev_tag
@param const char* baseline_rev_id
@param const char* description
@param const char* rel_proc_name
@param const char* job_name
@param const char* job_description
@param logical dryrun
@param tag_t* new_rev
@param int* deepCopiedObjectCount
@param tag_t** deepCopiedObjects
*/
#define ITEM_baseline_rev_msg "ITEM_baseline_rev"
/**
Produces a new Revision from an existing ItemRevision based on the preference Allow_copy_as_rev.
If this preference is set to true or 1, this will copy the contents of one Item revision
below an item to a newly created Item Revision below another existing item,
else it will create a Brand new Item.
@param tag_t revTag Tag of the Parent Item Revision
@param const char* new_rev_id The RevId of the Revision to be created.
@param const char* name Name of the new revision
@param const char* description The description of new revision
@param tag_t item_tag Tag of the existing Item
@param tag_t* new_rev Tag of the Newly created Revision.
@param tag_t item_rev_master_form Tag of Newly created Item Revision Master form
*/
#define ITEM_copy_rev_to_existing_msg "ITEM_copy_rev_to_existing"
/** @} */
#include <tccore/libtccore_undef.h>
#endif