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.
129 lines
2.5 KiB
129 lines
2.5 KiB
/*==============================================================================
|
|
Copyright (c) 2003-2005 UGS Corporation
|
|
Unpublished - All Rights Reserved
|
|
==============================================================================*/
|
|
|
|
/**
|
|
@file
|
|
|
|
CMP tokens
|
|
*/
|
|
|
|
/* */
|
|
|
|
#ifndef CMP_TOKENS_H
|
|
#define CMP_TOKENS_H
|
|
|
|
#include <fclasses/tc_basic.h>
|
|
#include <unidefs.h>
|
|
#include <fclasses/libfclasses_exports.h>
|
|
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
/**
|
|
@defgroup CMP_TOKENS Tokens
|
|
@ingroup CMP
|
|
@{
|
|
*/
|
|
|
|
|
|
typedef enum
|
|
{
|
|
CMP_LHS,
|
|
CMP_RHS
|
|
} CMP_side_e;
|
|
|
|
typedef enum
|
|
{
|
|
CMP_primary_element,
|
|
CMP_aggregate_element,
|
|
CMP_display_element
|
|
} CMP_priority_e;
|
|
|
|
typedef enum
|
|
{
|
|
CMP_property_element,
|
|
CMP_external_element
|
|
} CMP_element_type_e;
|
|
|
|
typedef enum
|
|
{
|
|
CMP_cache_auto = -2, /**< Selects 'best' cache type based on property value type */
|
|
CMP_cache_sync, /**< Cache type matches property value type(primary value type only(e.g.int,double,float,char))*/
|
|
CMP_cache_none,
|
|
CMP_cache_char,
|
|
CMP_cache_date,
|
|
CMP_cache_double,
|
|
CMP_cache_float,
|
|
CMP_cache_integer,
|
|
CMP_cache_logical,
|
|
CMP_cache_short,
|
|
CMP_cache_string,
|
|
CMP_cache_tag,
|
|
CMP_cache_char_array,
|
|
CMP_cache_date_array,
|
|
CMP_cache_tag_array,
|
|
CMP_cache_string_array,
|
|
CMP_cache_pointer
|
|
} CMP_cache_type_e;
|
|
|
|
/** @if DOX_IGNORE
|
|
Keep this in step with IS_CMP_ORDER_E() below
|
|
@endif */
|
|
typedef enum
|
|
{
|
|
CMP_order_by_value,
|
|
CMP_order_by_length_and_value
|
|
} CMP_order_e;
|
|
|
|
#define IS_CMP_ORDER_E(a) ( ( CMP_order_by_value <= (a) ) && ( (a) <= CMP_order_by_length_and_value ) )
|
|
|
|
typedef int (CMP_compare_obj_method_t)(
|
|
tag_t eim_object,
|
|
tag_t compare_set,
|
|
tag_t compare_element,
|
|
int* result
|
|
);
|
|
|
|
typedef int (CMP_compare_agg_method_t)(
|
|
tag_t compare_set,
|
|
tag_t compare_element,
|
|
int* result
|
|
);
|
|
|
|
typedef int (CMP_update_cache_method_t)(
|
|
tag_t compare_set,
|
|
CMP_side_e side,
|
|
tag_t eim_object,
|
|
tag_t compare_element
|
|
);
|
|
|
|
typedef int (CMP_uif_name_method_t)(
|
|
tag_t compare_element,
|
|
char** display_name
|
|
);
|
|
|
|
typedef int (CMP_uif_value_method_t)(
|
|
tag_t compare_set,
|
|
CMP_side_e side,
|
|
tag_t compare_element,
|
|
char** display_value
|
|
);
|
|
|
|
typedef int (CMP_free_cache_method_t)(
|
|
void* externalCache,
|
|
tag_t compare_element
|
|
);
|
|
|
|
/** @} */
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#include <fclasses/libfclasses_undef.h>
|
|
#endif
|