All Frameworks Class Hierarchy This Framework Previous Next Indexes
VPMInterfaces Interface ENOVIAFilterer
System.IUnknown
|
+---System.IDispatch
|
+---System.CATBaseUnknown
|
+---ENOVIAFilterer
Usage: an implementation of this interface is supplied and you must use it as is. You should not reimplement it.
interface ENOVIAFilterer
Interface to define the properties of a Generalized filter.
Role: ENOVIAFilterer is a behavior interface. It defines
the properties of a Generalized Filter, which can be used to filter
the filterable objects.
Important: the objects which adhere to ENOVIAFilterer are assumed to be organized in a tree, not a graph.
The generalized filter is an AND combination of specialized sub-filters:
- an ATTRIBUTE filter : specifies a predicate on the attribute values
- a DISCIPLINE filter : specifies a predicate on a discipline attribute
- a ZONE filter : specifies how the Bounding volume of the filterable objects are related to the volume
of an other object contained in the filter (FULLY_IN, PARTLY_IN, ....)
- a CONFIG filter : specifies rank, date, milestone and specification criteria.
- a VOLUMIC filter : specifies how the Bounding volume of the filterable objects are related to the 3D volume
contained in the filter (FULLY_IN, PARTLY_IN, ....)
EACH sub-filter can itself be an AND combination of elementary filters (of the same type).
For example:
The generalized filter can be made of a CONFIG sub-filter and a ZONE sub-filter.
The CONFIG sub-filter can be made of two elementary CONFIG filters combined by an AND operation.
The ZONE sub-filter can be made of three elementary ZONE filters combined by an AND operation.
When making changes to the contents of the generalized filter, a 'type' must be specified.
The mode controls which specialized sub-filter is to be changed.
Method Index
- o
ResetCurrentFilter()
- Resets totally the generalized filter
- o
RestoreCurrentFilter()
- Restores the Current Filter.
- o
SaveCurrentFilter()
- Saves the Current Filter.
- o
add_Filter(long,CATIVpmPredicate*)
- Adds a sub-filter of a given type to the Generalized filter.
- o
dump_CurrentFilter()
- Dumps the current filter.
- o
put_GlobalFilterModeByType(long,boolean)
- Turns the sub-filter of the given type ON or OFF.
Methods
o ResetCurrentFilter
public virtual HRESULT ResetCurrentFilter( | )=0 |
-
Resets totally the generalized filter
o RestoreCurrentFilter
public virtual HRESULT RestoreCurrentFilter( | )=0 |
-
Restores the Current Filter.
o SaveCurrentFilter
public virtual HRESULT SaveCurrentFilter( | )=0 |
-
Saves the Current Filter.
Role: Filters can be saved in a stack, in order to temporarily change the value of the filter
without losing the value specified previously.
FilterType can take the value (#define) : FLT_ATTRIBUTE, FLT_DISCIPLINE, FLT_CONFIG,
FLT_ZONE, FLT_VOLUME or other one or a | combination
FLT_XXX are defined in CATVpmTPInclude.h
o add_Filter
-
Adds a sub-filter of a given type to the Generalized filter.
Role: The sub-filter types that are not specified by the 'FilterType' argument are left UNCHANGED.
Example:
add_Filter( FLT_ATTRIBUTE, )
-> adds a new component to the CONFIG part of the generalized filter.
- Parameters:
-
- FilterType
- Filter Type.
- AttFilter
- Attrubute Filter.
o dump_CurrentFilter
public virtual HRESULT dump_CurrentFilter( | )=0 |
-
Dumps the current filter. Debug purposes.
o put_GlobalFilterModeByType
public virtual HRESULT put_GlobalFilterModeByType( | long | FilterType, |
| boolean | FilterActivated)=0 |
-
Turns the sub-filter of the given type ON or OFF.
Role: the sub-filter types that are not specified by the 'FilterType' argument are left UNCHANGED.
Example:
put_GlobalFilterModeByType( FLT_ATTRIBUTE, TRUE )
-> turns the CONFIG part of the generalized filter ON, leaving the other sub-filter types unchanged.
put_GlobalFilterModeByType( FLT_ZONE, FALSE )
-> turns the CONFIG part of the generalized filter OFF, leaving the other sub-filter types unchanged.
- Parameters:
-
- FilterType
- Filter Type.
- FilterActivated
- FilterActivated a boolean value.
This object is included in the file: ENOVIAFilterer.h
If needed, your Imakefile.mk should include the module: GUIDVPMInterfaces