ITK Function Reference

(V10000.1.0.60_20160308.00)
Macros
bom_msg.h File Reference
#include <bom/libbom_exports.h>
#include <bom/libbom_undef.h>

Go to the source code of this file.

Macros

#define BOM_duplicate_structure_post_msg   "BOM__duplicate_structure_post"
 
#define BOM_post_expand_msg   "BOM__post_expand"
 
#define BOM_variant_config_msg   "BOM_variant_config"
 
#define BOMLine_add_msg   "BOMLine_add"
 
#define BOMLine_cut_msg   "BOMLine_cut"
 
#define BOMLine_move_msg   "fnd0bomline_move"
 
#define BOMWindow_save_msg   "BOMWindow_save"
 

Detailed Description

BOM 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.

Definition in file bom_msg.h.

Macro Definition Documentation

#define BOM_duplicate_structure_post_msg   "BOM__duplicate_structure_post"

This is a no-op function. It is called when duplicating structure completes to duplicate attached diagrams as well.
Customizers can add their functions as post action to this function.

Parameters
[in]tag_ttoplineTag Top level of the structure to duplicate
[in]tag_tnew_item_rev New top level item rev of the duplicated structure
Returns
ITK_ok on success
Registering message for action method to be called when message get invoked:
METHOD_id_t method;
if( method.id != 0 )
{
ifail = METHOD_add_action( method, METHOD_post_action_type, eventDuplicateStructurePost, NULL);
}
Here eventDuplicateStructurePost will invoked and then paranmeters of this message can be retrived as below:
static int eventDuplicateStructurePost( METHOD_message_t* m, va_list args)
{
va_list largs;
va_copy( largs, args);
tag_t toplineTag = va_arg( largs, tag_t);
tag_t new_item_rev = va_arg( largs, tag_t);
va_end( largs);
continue with implementation...
}

Definition at line 116 of file bom_msg.h.

#define BOM_post_expand_msg   "BOM__post_expand"

This is a no-op function. It is called after one level of bomlines expansion is complete from the BOMWindow.
Customizers can add their functions as post action to this function.

Parameters
[in]std::vector<tag_t>*inputLines input child lines
[out]std::vector<tag_t>*unconfiguredLines unconfigured child lines after the post expansion
Returns
ITK_ok on success
Registering message for action method to be called when message get invoked:
METHOD_id_t method;
ifail = METHOD_find_method( "BOMWindow", BOM_post_expand_msg, &method);
if( method.id != 0 )
{
ifail = METHOD_add_action( method, METHOD_post_action_type, fnd0PostExpand, NULL);
}
Here fnd0PostExpand will invoked and then parameters of this message can be retrived as below:
//----------------------------------------------------------------------------
static int fnd0PostExpand ( METHOD_message_t* message, va_list args )
{
va_list largs;
va_copy( largs, args );
std::vector<tag_t> *inputLines= va_arg( largs, std::vector<tag_t> * );
std::vector<tag_t> *unconfiguredLines = va_arg( largs, std::vector<tag_t> *);
va_end( largs );
continue with implementation...
}

Definition at line 154 of file bom_msg.h.

#define BOM_variant_config_msg   "BOM_variant_config"

Evaluate a BOM Window's variant configuration.

Parameters
logicalfirst_call

Definition at line 36 of file bom_msg.h.

#define BOMLine_add_msg   "BOMLine_add"

Add BOMLine message arguments.

Parameters
tag_tparent_tag
tag_titem_tag
tag_titemRev_tag
tag_tbv_tag
char*occType
tag_t*newBomline_tag
tag_tgde_tag

Definition at line 60 of file bom_msg.h.

#define BOMLine_cut_msg   "BOMLine_cut"

Cut BOMLine message arguments.

Parameters
tag_tline_tag

Definition at line 67 of file bom_msg.h.

#define BOMLine_move_msg   "fnd0bomline_move"

Move BOMLine message arguments.

Parameters
tag_tparent_tag
intcount
tag_t*bomSourceLines
tag_t**bomTargetLines

Definition at line 77 of file bom_msg.h.

#define BOMWindow_save_msg   "BOMWindow_save"

Define BOMWindow_save, BOMLine_add and BOMLine_cut message Save BOM Window

Parameters
tag_twindow_tag

Definition at line 47 of file bom_msg.h.