All Frameworks  Class Hierarchy  This Framework  Previous  Next  Indexes

VPMInterfaces Interface CATICfgInterval

System.IUnknown
  |
  +---System.IDispatch
    |
    +---System.CATBaseUnknown
      |
      +---CATICfgInterval
 

Usage: an implementation of this interface is supplied and you must use it as is. You should not reimplement it.


interface CATICfgInterval

Class to manage operations on Intervals.
Role: An Interval is composed of a start value, and an end Value. This values can be ranges or dates. They are used in a context of configuration, to give effectivity to a Item Instance. ex: (50, 100) , or (11-02-2001,15-02-2001).

See also:
CATICfgNormalValue


Method Index


o ComputeIntersection(CATICfgInterval_var&,CATICfgInterval_var&)
Compute intersection between two intervals.
o ComputeIntersection2(CATICfgInterval_var&,CATICfgInterval_var&,CATListValCATICfgInterval_var&,CATListValCATICfgInterval_var&,CATICfgInterval_var&)
Check if an interval intersects another one.
o Dump()
Dump for debug purpose.
o GetAsString()
Get a string representing the Interval.
o GetAsXmlString()
Get an XML string representing the Interval.
o GetInfiniteInterval(CATICfgInterval_var&)
Return an infinite Interval of same type as 'this'.
o GetType()
Get Interval type.
o GetValues(CATCfgVal&,CATCfgVal&)
Get start and end values of an interval, without knowledge of type of values.
o GetValues(CATTime&,CATTime&)
Get start and end values of a Date interval.
o GetValues(int&,int&)
Get start and end values of a Range interval.
o Intersect(CATICfgInterval_var&,int&)
Check if an interval intersects another one.
o Intersect2(CATICfgInterval_var&,int&)
Check if an interval intersects another one.
o Inverse(CATListValCATICfgInterval_var&)
Inverse an Interval.
o IsEqual(CATICfgInterval_var&)
Compare two intervals.
o Substract(CATICfgInterval_var&,CATICfgInterval_var&,CATListValCATICfgInterval_var&)
Substract an Interval from Another one.

Enumerated Type Index


o Type

Methods


o ComputeIntersection
public virtual HRESULT ComputeIntersection( const CATICfgInterval_var& iInterval,
CATICfgInterval_var& oIntersection) const = 0
Compute intersection between two intervals.
Returns:
S_FALSE is there is no Intersection, S_OK intersection exists.
Parameters:
iInterval
Interverval to compute intersection with *this
oIntersection
Interval common to both Intervals.
o ComputeIntersection2
public virtual HRESULT ComputeIntersection2( const CATICfgInterval_var& iInterval,
CATICfgInterval_var& oIntersection,
CATListValCATICfgInterval_var& oListIntCompl1,
CATListValCATICfgInterval_var& oListIntCompl2,
CATICfgInterval_var& oIntTotal) const = 0
Check if an interval intersects another one.
Parameters:
&iInterval
Interval to compute intersection with 'this'.
&oIntersection
Intersection resulting from the computation.
o Dump
public virtual void Dump()const = 0
Dump for debug purpose.
o GetAsString
public virtual CATUnicodeString GetAsString()const = 0
Get a string representing the Interval.
o GetAsXmlString
public virtual CATUnicodeString GetAsXmlString()const = 0
Get an XML string representing the Interval.
o GetInfiniteInterval
public virtual HRESULT GetInfiniteInterval(CATICfgInterval_var& oInfiniteInterval) const = 0
Return an infinite Interval of same type as 'this'.
o GetType
public virtual const CATICfgInterval::Type GetType()= 0
Get Interval type.
Returns:
Interval Type.
Legal Values : Undef, Date, Range Undef when Interval start and end values are still not defined.
o GetValues
public virtual HRESULT GetValues(CATCfgVal& oStart,
CATCfgVal& oEnd) const = 0
Get start and end values of an interval, without knowledge of type of values.
Parameters:
oStart
Interval Start Value.
oEnd
Interval End Value.
o GetValues
public virtual HRESULT GetValues(CATTime& oBegDate,
CATTime& oEndDate) const = 0
Get start and end values of a Date interval.
Parameters:
oBegDate
Interval Start Date.
oEndDate
Interval end Date.
o GetValues
public virtual HRESULT GetValues(int& oStartRange,
int& oLastRange) const = 0
Get start and end values of a Range interval.
Parameters:
oStartRange
Interval start range.
oLastRange
Interval end range.
o Intersect
public virtual HRESULT Intersect( const CATICfgInterval_var& iInterval,
int& oIntersect) const = 0
Check if an interval intersects another one.
Parameters:
&iInterval
Interval to compare with present one.
&oIntersect
Return code
Legal Values 0 : Intersection exists. 1 : No Intersection.
o Intersect2
public virtual HRESULT Intersect2( const CATICfgInterval_var& iInterval,
int& oIntersect) const = 0
Check if an interval intersects another one.
Parameters:
&iInterval
Interval to compare with present one.
&oIntersect
Return code
Legal Values 0 : No Intersection. 1 : Lower Bound of iInterval is in present one. 2 : Upper Bound of iInterval is in present one. 3 : Totally included.
o Inverse
public virtual HRESULT Inverse(CATListValCATICfgInterval_var& oList) const = 0
Inverse an Interval.
Parameters:
oList
List of Intervals resulting from Inversion operation.
o IsEqual
public virtual int IsEqual( const CATICfgInterval_var& iValue) const = 0
Compare two intervals.
Returns:
An integer.
Legal Values : 0 : Interval are equal. 1 : Interval are different. Comparaison is made at pointer level.
o Substract
public virtual HRESULT Substract( const CATICfgInterval_var& iToSubstract,
CATICfgInterval_var& oIntervalUsed,
CATListValCATICfgInterval_var& oList) const = 0
Substract an Interval from Another one.
Parameters:
itoSubstract
Interverval to substract from *this.
oIntervalUsed
Interval common to both Intervals.
oList
List of Intervals not resulting of substract operation. Examples : A =this , B = itoSubstract if A fully includes B, oIntervalUSed contains B, olist contains two intervals , parts of A, not covered by B if A covers a part of B oIntervalUsed contains this part, olist contains the interval made by A minus this part. If A and B are disjoined, oIntervalused is empty, olist contains A

Enumerated Types


o Type
enum Type {
  Undef,
  Date,
  Range,
  Any,
  None
}

This object is included in the file: CATICfgInterval.h
If needed, your Imakefile.mk should include the module: GUIDVPMInterfaces

Copyright © 2003, Dassault Systèmes. All rights reserved.