All Frameworks Class Hierarchy This Framework Previous Next Indexes
CATSchPlatformInterfaces Interface CATISchCompatible
System.IUnknown
|
+---CATISchCompatible
Usage: an implementation of this interface is supplied and you must use it as is. You should not reimplement it.
interface CATISchCompatible
Interface to query for compatible object to connect to.
Role: Defines connection rules for Schematic basic set of objects.
Method Index
- o
GetBestCntrForRoute(double[2],CATISchGRR*,CATIUnknownList*,double*,CATISchAppConnector**)
- Find the best-fit connector to be used to connect a route to.
- o
GetBestFitInsertInfo(double[2],IUnknown*,IUnknown**,CATBoolean)
- Find the best-fit connector(s) to be used for inserting a component
into a route.
- o
GetBestFitPlaceInfo(double[2],IUnknown*,IUnknown**,CATBoolean)
- Find the best-fit connector(s) to be used for placing a component
and connecting it to another.
- o
IsTargetOKForInsert(IUnknown*,IUnknown**,CATBoolean*)
- Query whether an object is compatible to be inserted into a route.
- o
IsTargetOKForPlace(CATISchGRRComp*,IUnknown*,IUnknown**,CATBoolean*)
- Query whether an object is compatible to be connected to another component.
- o
IsTargetOKForRoute(char*,CATISchGRR*,CATIUnknownList**,CATBoolean*)
- Query whether an object is compatible to be connected to a route.
Methods
o GetBestCntrForRoute
-
Find the best-fit connector to be used to connect a route to.
- Parameters:
-
- iDb2PlacementPt
- X-Y coordinates of the target (component or route) graphic selection point.
- iGRR
- Pointer to the graphical image of a component or
to the primitive of a route
- iLOKCntrs
- A list of compatible and available connectors on the component.
Members are CATISchAppConnector interface pointers.
This is an Output of IsTargetOKForRoute
- See also:
- IsTargetOKForRoute
- oDb2CntrPt
- X-Y coordinates of the best-fit connector point.
- oBestCntr
- Best-fit connector
- Returns:
- An HRESULT value.
Legal values:
- S_OK
- operation is successful
- E_FAIL
- operation failed
o GetBestFitInsertInfo
-
Find the best-fit connector(s) to be used for inserting a component
into a route.
- Parameters:
-
- iDb2PlacementPt
- X-Y coordinates of the target component
graphical selection point.
- iInsertCompatInfo
- Pointer to an internal class which contains structured information
This is an output of IsTargetOKForInsert
- See also:
- IsTargetOKForInsert
- ioInsertInfo
- Pointer to an internal class which contains structured information
for how to inesrt a component into a route.
Caller must initialize this pointer to NULL when calling this
code the first time.
This is used as an input
to CATISchComponent::InsertIntoRouteWithInfo
- See also:
- CATISchComponent.InsertIntoRouteWithInfo
- iBYesCycleAllSolns
- default is FALSE, and ioInsertInfo is an output for the best fit
solution. When there are more than one internal flows that can
be used for insertion, this routine will choose the best solution in
the following order:
- linear internal flow parallel to x-axis
- linear internal flow parallel to y-axis
- corner internal flow
- others
If iBYesCycleAllSolns =TRUE, then the implementation
will calculate all possible solutions
and allow the caller to recall this code with the
same ioInsertInfo.
if and only if current input iDB2PlacementPt is the
the same as the previous one . Otherwise, the insertion position
of the component on the route is different and the previously
calculated solutions are all invalid for the current call.
If the iDB2PlacementPt is the same as the previous one
and iBYesCycleAllSolns is TRUE, this code will set the
internal data ioInsertInfo accordingly, so that when used in
InsertIntoRouteWithInfo, the next solution will be used.
For example, say there are 3 possible solutions and we call them
solution1, solution2 and solution3. Call this code the first
time and InsertIntoComponentWithInfo will use solution1. Call this
code the second time (provided that CntrTgt remains the same)
and solution2 will be used. The third time, solution3. The
fourth time, solution1 and so one.
- Returns:
- An HRESULT value.
Legal values:
- S_OK
- operation is successful
- E_FAIL
- operation failed
o GetBestFitPlaceInfo
-
Find the best-fit connector(s) to be used for placing a component
and connecting it to another.
- Parameters:
-
- iDb2PlacementPt
- X-Y coordinates of the target component
graphical selection point.
- iPlaceCompatInfo
- Pointer to an internal class which contains structured information
This is an output of IsTargetOKForPlace
- See also:
- IsTargetOKForPlace
- ioPlaceInfo
- Pointer to an internal class which contains structured information
for how to place a component.
Caller must initialize this pointer to NULL when calling this
code the first time.
This is used as an input
to CATISchComponent::PlaceOnComponentWithInfo
- See also:
- CATISchComponent.PlaceOnComponentWithInfo
- iBYesCycleAllSolns
- default is FALSE, and ioPlaceInfo is an output for the best fit
solution. This solution will connect the compatible Target
connector closest to the iDb2PlacementPt (call this CntrTgt)
and the source connector that is closest to the origin
(in position relative to ditto axis).
If iBYesCycleAllSolns =TRUE, then the implementation
will calculate all possible solutions
and allow the caller to recall this code with the
same ioPlaceInfo,
if and only if the compatible Target connector
closest to the iDb2PlacementPt is the same as the previous
one .
By doing this, this code will set the
internal data ioPlaceInfo accordingly, so that when used in
PlaceOnComponentWithInfo, the next solution will be used.
For example, say there are 3 possible solutions and we call them
solution1, solution2 and solution3. Call this code the first
time and PlaceOnComponentWithInfo will use solution1. Call this
code the second time (provided that CntrTgt remains the same)
and solution2 will be used. The third time, solution3. The
fourth time, solution1 and so one.
- Returns:
- An HRESULT value.
Legal values:
- S_OK
- operation is successful
- E_FAIL
- operation failed
o IsTargetOKForInsert
-
Query whether an object is compatible to be inserted into a route.
This method is used when placing a component.
- Parameters:
-
- iCompInfo
- Pointer to an internal class which contains structured information
of "this" component for placement. This is an output of
CATISchComponent::QueryPlaceAbility
- See also:
- CATISchComponent.QueryPlaceAbility
- oInsertCompatInfo
- Pointer to an internal class which contains structured information
for "this" component and target route (the one in question)
This is used as an input to GetBestFitInsertInfo
- See also:
- GetBestFitInsertInfo
- oBYes
- If TRUE, the component is OK to be connected to a route.
- Returns:
- An HRESULT value.
Legal values:
- S_OK
- operation is successful
- E_FAIL
- operation failed
o IsTargetOKForPlace
-
Query whether an object is compatible to be connected to another component.
This method is used when placing a component.
- Parameters:
-
- iGRRTarget
- Pointer to the graphical image of the component in question (the
target component to be connected to)
- iCompInfo
- Pointer to an internal class which contains structured information
of "this" component for placement. This is an output of
CATISchComponent::QueryPlaceAbility
- See also:
- CATISchComponent.QueryPlaceAbility
- oPlaceCompatInfo
- Pointer to an internal class which contains structured information
for "this" component and target component (the one in question)
This is used as an input to GetBestFitPlaceInfo
- See also:
- GetBestFitPlaceInfo
- oBYes
- If TRUE, the component is OK to be connected to a route.
- Returns:
- An HRESULT value.
Legal values:
- S_OK
- operation is successful
- E_FAIL
- operation failed
o IsTargetOKForRoute
-
Query whether an object is compatible to be connected to a route.
This method is used when routing a route.
- Parameters:
-
- iRouteCntrClassType
- Class type of a schematic route connector.
- iGRRTarget
- Pointer to the graphical image of a target component or
to the primitive of a target route
- oLOKCntrs
- A list of compatible and available connectors on the component or route
(members are CATISchAppConnector interface pointers)
This is used as an input to GetBestCntrForRoute
- See also:
- GetBestCntrForRoute
- oBYes
- If TRUE, the component is OK to be connected to a route.
- Returns:
- An HRESULT value.
Legal values:
- S_OK
- operation is successful
- E_FAIL
- operation failed
This object is included in the file: CATISchCompatible.h