TopCon API  1.1.0
.Net API to control TopCon devices
CH.Regatron.HPPS.TFE.TFECurve Class Reference

This class is the container that represents a curve. It can hold SeqNumber, SeqName and so on. Thus it is prepared to be stored in the TopCon SequenceHeaderFile.
Or it is just a container to keep the U, I and P curveComponents. More...

Inheritance diagram for CH.Regatron.HPPS.TFE.TFECurve:
Inheritance graph

Public Types

enum  EndAction_Type { EndAction_Type.OUTPUT_VOLTAGE_OFF = 0, EndAction_Type.USE_LAST_PRESET_VALUES = 1, EndAction_Type.USE_PRESET_ofACTIVE_INTERFACE = 2 }
 This enumeration defines the action after a TFECurve has finished its work. More...
 
enum  StartTrigger_Type { StartTrigger_Type.ON_VOLTAGE_ON = 0, StartTrigger_Type.MANUAL_TRIGGER = 1, StartTrigger_Type.HIGH_ON_X105_PIN19 = 2 }
 This enumeration defines when this TFECurve should start its operation. More...
 

Public Member Functions

 TFECurve (ReDev.TopCon topCon, UInt32 curveNumber, String curveName, DateTime creationDate, CurveComponent uComponent, CurveComponent iComponent, CurveComponent pComponent, Boolean generalEnable)
 Standard constructor holding three curveComponents (incl. null) More...
 
 TFECurve (ReDev.TopCon topCon, UInt32 curveNumber, String curveName, DateTime creationDate)
 Standard constructor holding three dummyComponents.
Caution: At least one curveComponent MUST be set to create a valid curve. More...
 
 TFECurve (ReDev.TopCon topCon, CurveContainer curveContainer)
 Standard constructor taking the base data from the given CurveContainer 2nd parameter), it updates the TFECurveComponents in the TFECurve. More...
 
StartTrigger_Type GetStartTriggerType ()
 This method returns the StartTrigger of this TFECurve. More...
 
void SetStartTriggerType (StartTrigger_Type startTrigger)
 This method allows to set the start trigger. (cf. StartTrigger_Type for further explanations). More...
 
EndAction_Type GetEndActionType ()
 This method returns the EndAction of this TFECurve. More...
 
void SetEndActionType (EndAction_Type endAction)
 This method allows to set the EndAction. (cf. EndAction_Type for further explanations). More...
 
UInt32 GetDelayIn50MicroSeconds ()
 This method returns the delay between two executions of the defined TFECurve. More...
 
Double GetDelayInSeconds ()
 This method returns the delay between two executions of the defined TFECurve. More...
 
void SetDelayInSeconds (Double delayInSeconds)
 This sets the delay between two succeding executions of the TFECurve. More...
 
void SetDelayInUnits (UInt32 delayInUnits)
 This method sets the delay between the repetitions of the TFECurve (rf. TopControl: FunctionSequence "Delay between repeats"). More...
 
UInt32 GetNumberOfRepetitions ()
 This method returns the number of repetitions of this TFECurve. More...
 
void SetNumberOfRepetitions (UInt32 repetitions)
 This method allows to set the number of repetitions to be excecuted on this TFECurve. More...
 
UInt32 GetSequenceNumber ()
 This is the getter that returns the (optional) SequenceNumber of this curve. More...
 
void SetSequenceNumber (UInt32 sequenceNumber)
 This method sets the number of this curve [1...999] More...
 
String GetSequenceName ()
 This method returns the sequence name of this curve. More...
 
void SetSequenceName (String sequenceName)
 This is the standard setter for the Sequence Name. More...
 
DateTime GetSequenceDateTime ()
 This is the standard getter method for the creation DataTime data. More...
 
void SetSequenceDateTime (DateTime sequenceDateTime)
 This is the standard setter for the creation date/time of this sequence. More...
 
void SetSequenceDateTime (Int32 year, Int32 month, Int32 day, Int32 hour, Int32 minute, Int32 second)
 This is the standard setter for the creation date/time of this sequence.
(throws (Argument)Exception if parameters cannot be evaluated to a valid date) More...
 
Boolean IsComponentVoltageUsed ()
 This method decides if the voltage controller has a non-standard task, hence if a curveComponent is assigned to the voltage controller. More...
 
CurveComponent GetCurveComponentVoltage ()
 This is the standard getter method for the voltage curveComponent. More...
 
void SetAapCurveComponent (AAPCurveComponent newCurveComponent)
 This is the standard setter for a curveComponent - the type is determined by the AAP curve (implicitely contained in the AAP definition). More...
 
void SetCurveComponentVoltage (TimeBasedCurveComponent newVoltageCurveComponent)
 This is the standard setter for the voltage curveComponent More...
 
Boolean IsComponentCurrentUsed ()
 This method decides if the current controller has a non-standard task, hence if a curveComponent is assigned to the current controller. More...
 
CurveComponent GetCurveComponentCurrent ()
 This is the standard getter method for the currentcurveComponent. More...
 
void SetCurveComponentCurrent (TimeBasedCurveComponent timeBasedCurveComponent)
 This is the standard setter for the current curveComponent More...
 
SASCurveComponent GetSasCurveComponent ()
 This method returns the SASCurveComponent if this object is a SASCurve (= CUSTOM or CALCULATED SASCurve). More...
 
Boolean IsComponentPowerUsed ()
 This method decides if the power controller has a non-standard task, hence if a curveComponent is assigned to the power controller. More...
 
CurveComponent GetCurveComponentPower ()
 This is the standard getter method for the power curveComponent. More...
 
void SetCurveComponent_Power (TimeBasedCurveComponent newPowerCurveComponent)
 This is the standard setter for the power curveComponent More...
 
void SetGeneralEnable (Boolean newEnable)
 This method sets the General Enable flag of the function. More...
 
Boolean GetGeneralEnable ()
 Standard Getter for the GeneralEnable flag. More...
 
void UpdateFromCurveContainer (CurveContainer myCc)
 This method takes a CurveContainer (Transport object to read curves from the Topcon) and uses the contained data to fill the various properties of this TFECurve. More...
 
GeneralCurveType DetermineCurveTypeOfThisTfeCurve ()
 This function determines the type in the curve More...
 
new String ToString ()
 This writes done a short summary representation of this TFECurve object. More...
 
void CreateCurveObjectsFromCurveContainer (TFE.CurveContainer cc)
 This method initiates the conversion of the data from a curveContainer (transport object for curve data from the TopCon to the PC) into the matching object tree. More...
 
- Public Member Functions inherited from CH.Regatron.HPPS.IExceptionMessenger
string GetLastError ()
 Tell the last exception message More...
 

Static Public Attributes

const UInt32 MinimumSequenceNumber = 1
 This number is the lower border of the range of numbers that can be assigned to this container.
More...
 
const UInt32 MaximunSequenceNumber = 999
 This number is the upper border of the range of numbers that can be assigned to this container. More...
 

Detailed Description

This class is the container that represents a curve. It can hold SeqNumber, SeqName and so on. Thus it is prepared to be stored in the TopCon SequenceHeaderFile.
Or it is just a container to keep the U, I and P curveComponents.

Member Enumeration Documentation

◆ EndAction_Type

This enumeration defines the action after a TFECurve has finished its work.

Enumerator
OUTPUT_VOLTAGE_OFF 

at the end of the TFE curve execution, switch off the power stage (Voltage OFF)

USE_LAST_PRESET_VALUES 

the last values of the curve components are used as preset values

USE_PRESET_ofACTIVE_INTERFACE 

the preset values of the active interface are used

◆ StartTrigger_Type

This enumeration defines when this TFECurve should start its operation.

Enumerator
ON_VOLTAGE_ON 

start if voltage is switched on

MANUAL_TRIGGER 

wait for manual action (e.g. in TopControl)

HIGH_ON_X105_PIN19 

wait for a positive edge transition on Pin 19 on X105

Constructor & Destructor Documentation

◆ TFECurve() [1/3]

CH.Regatron.HPPS.TFE.TFECurve.TFECurve ( ReDev.TopCon  topCon,
UInt32  curveNumber,
String  curveName,
DateTime  creationDate,
CurveComponent  uComponent,
CurveComponent  iComponent,
CurveComponent  pComponent,
Boolean  generalEnable 
)

Standard constructor holding three curveComponents (incl. null)

Parameters
topConTopCon object where the curve is to be found
curveNumberThe curveNumber of this curve [1...999]
curveNameThe name of this curve [1..31 characters]
creationDateThe creation DateTime of this curve.
uComponentThe CurveComponent that determines the voltage controller behaviour. Component gets attribute that it works as voltage component.
iComponentThe CurveComponent that determines the current controller behaviour. Component gets attribute that it works as current component.
pComponentThe CurveComponent that determines the power controller behaviour. Component gets attribute that it works as power component.
generalEnableThis is the main switch if this curve is enabled (cf. TopControl). If no CurveComponent is given (== 3x null given), then this flag is set to false to indicate that this is no active TFECurve.

◆ TFECurve() [2/3]

CH.Regatron.HPPS.TFE.TFECurve.TFECurve ( ReDev.TopCon  topCon,
UInt32  curveNumber,
String  curveName,
DateTime  creationDate 
)

Standard constructor holding three dummyComponents.
Caution: At least one curveComponent MUST be set to create a valid curve.

◆ TFECurve() [3/3]

CH.Regatron.HPPS.TFE.TFECurve.TFECurve ( ReDev.TopCon  topCon,
CurveContainer  curveContainer 
)

Standard constructor taking the base data from the given CurveContainer 2nd parameter), it updates the TFECurveComponents in the TFECurve.

Parameters
topConTopCon object where the curve is to be found
curveContainerCurveContainer that transports the curve data from the TopCon device

Member Function Documentation

◆ CreateCurveObjectsFromCurveContainer()

void CH.Regatron.HPPS.TFE.TFECurve.CreateCurveObjectsFromCurveContainer ( TFE.CurveContainer  cc)

This method initiates the conversion of the data from a curveContainer (transport object for curve data from the TopCon to the PC) into the matching object tree.

Parameters
ccThe curveContainer with the curve data.

◆ DetermineCurveTypeOfThisTfeCurve()

GeneralCurveType CH.Regatron.HPPS.TFE.TFECurve.DetermineCurveTypeOfThisTfeCurve ( )

This function determines the type in the curve

Returns
The type of the curve in the CurveContainer:
1 = Sine

◆ GetCurveComponentCurrent()

CurveComponent CH.Regatron.HPPS.TFE.TFECurve.GetCurveComponentCurrent ( )

This is the standard getter method for the currentcurveComponent.

Returns
The curveComponent that was added for the current controller.

◆ GetCurveComponentPower()

CurveComponent CH.Regatron.HPPS.TFE.TFECurve.GetCurveComponentPower ( )

This is the standard getter method for the power curveComponent.

Returns
The curveComponent that was added for the power controller .

◆ GetCurveComponentVoltage()

CurveComponent CH.Regatron.HPPS.TFE.TFECurve.GetCurveComponentVoltage ( )

This is the standard getter method for the voltage curveComponent.

Returns
The curveComponent that was added for the voltage controller.

◆ GetDelayIn50MicroSeconds()

UInt32 CH.Regatron.HPPS.TFE.TFECurve.GetDelayIn50MicroSeconds ( )

This method returns the delay between two executions of the defined TFECurve.

Returns
Delay between two executions [50 us]

◆ GetDelayInSeconds()

Double CH.Regatron.HPPS.TFE.TFECurve.GetDelayInSeconds ( )

This method returns the delay between two executions of the defined TFECurve.

Returns
Delay between two executions [s, base is 50us].

◆ GetEndActionType()

EndAction_Type CH.Regatron.HPPS.TFE.TFECurve.GetEndActionType ( )

This method returns the EndAction of this TFECurve.

Returns
The chosen EndAction of this TFECurve (rf. to EndAction_Type for further explanations).

◆ GetGeneralEnable()

Boolean CH.Regatron.HPPS.TFE.TFECurve.GetGeneralEnable ( )

Standard Getter for the GeneralEnable flag.

Returns
Boolean value of this flag.

◆ GetNumberOfRepetitions()

UInt32 CH.Regatron.HPPS.TFE.TFECurve.GetNumberOfRepetitions ( )

This method returns the number of repetitions of this TFECurve.

Returns
Number of repetitions set for this TFECurve.

◆ GetSasCurveComponent()

SASCurveComponent CH.Regatron.HPPS.TFE.TFECurve.GetSasCurveComponent ( )

This method returns the SASCurveComponent if this object is a SASCurve (= CUSTOM or CALCULATED SASCurve).

Returns
The SASCurveComponent that is used as current component, null if this object is not a SASCurve.

◆ GetSequenceDateTime()

DateTime CH.Regatron.HPPS.TFE.TFECurve.GetSequenceDateTime ( )

This is the standard getter method for the creation DataTime data.

Returns
The creation date of this curve.

◆ GetSequenceName()

String CH.Regatron.HPPS.TFE.TFECurve.GetSequenceName ( )

This method returns the sequence name of this curve.

Returns
Returns the name of this sequence.

◆ GetSequenceNumber()

UInt32 CH.Regatron.HPPS.TFE.TFECurve.GetSequenceNumber ( )

This is the getter that returns the (optional) SequenceNumber of this curve.

Returns
Sequence Number (number between 1 and MaxSeqNumber)

◆ GetStartTriggerType()

StartTrigger_Type CH.Regatron.HPPS.TFE.TFECurve.GetStartTriggerType ( )

This method returns the StartTrigger of this TFECurve.

Returns
The chosen StartTrigger-Type (cf. StartTrigger_Type for further explanations).

◆ IsComponentCurrentUsed()

Boolean CH.Regatron.HPPS.TFE.TFECurve.IsComponentCurrentUsed ( )

This method decides if the current controller has a non-standard task, hence if a curveComponent is assigned to the current controller.

Returns
true if a current curveComponent is set, false otherwise.

◆ IsComponentPowerUsed()

Boolean CH.Regatron.HPPS.TFE.TFECurve.IsComponentPowerUsed ( )

This method decides if the power controller has a non-standard task, hence if a curveComponent is assigned to the power controller.

Returns
true if a power curveComponent is set, false otherwise.

◆ IsComponentVoltageUsed()

Boolean CH.Regatron.HPPS.TFE.TFECurve.IsComponentVoltageUsed ( )

This method decides if the voltage controller has a non-standard task, hence if a curveComponent is assigned to the voltage controller.

Returns
true if a voltage curveComponent is set, false otherwise.

◆ SetAapCurveComponent()

void CH.Regatron.HPPS.TFE.TFECurve.SetAapCurveComponent ( AAPCurveComponent  newCurveComponent)

This is the standard setter for a curveComponent - the type is determined by the AAP curve (implicitely contained in the AAP definition).

Parameters
newCurveComponentAn AAP curveComponent to be used for the controller. The type is implicitly defined inside of the AAP component.

◆ SetCurveComponent_Power()

void CH.Regatron.HPPS.TFE.TFECurve.SetCurveComponent_Power ( TimeBasedCurveComponent  newPowerCurveComponent)

This is the standard setter for the power curveComponent

Parameters
newPowerCurveComponentA curveComponent to be used for the power controller.

◆ SetCurveComponentCurrent()

void CH.Regatron.HPPS.TFE.TFECurve.SetCurveComponentCurrent ( TimeBasedCurveComponent  timeBasedCurveComponent)

This is the standard setter for the current curveComponent

Parameters
timeBasedCurveComponentA curveComponent to be used for the current controller.

◆ SetCurveComponentVoltage()

void CH.Regatron.HPPS.TFE.TFECurve.SetCurveComponentVoltage ( TimeBasedCurveComponent  newVoltageCurveComponent)

This is the standard setter for the voltage curveComponent

Parameters
newVoltageCurveComponentA curveComponent to be used for the voltage controller.

◆ SetDelayInSeconds()

void CH.Regatron.HPPS.TFE.TFECurve.SetDelayInSeconds ( Double  delayInSeconds)

This sets the delay between two succeding executions of the TFECurve.

Parameters
delayInSecondsDelay [0...214 748s, internally rounded to base unit 50us]

◆ SetDelayInUnits()

void CH.Regatron.HPPS.TFE.TFECurve.SetDelayInUnits ( UInt32  delayInUnits)

This method sets the delay between the repetitions of the TFECurve (rf. TopControl: FunctionSequence "Delay between repeats").

Parameters
delayInUnitsDelay in base units 50us, range: [0...4294967295]

◆ SetEndActionType()

void CH.Regatron.HPPS.TFE.TFECurve.SetEndActionType ( EndAction_Type  endAction)

This method allows to set the EndAction. (cf. EndAction_Type for further explanations).

Parameters
endActionThe EndAction to be used [EndAction_Type]

◆ SetGeneralEnable()

void CH.Regatron.HPPS.TFE.TFECurve.SetGeneralEnable ( Boolean  newEnable)

This method sets the General Enable flag of the function.

Parameters
newEnabletrue to activate general enable, false to disable.

◆ SetNumberOfRepetitions()

void CH.Regatron.HPPS.TFE.TFECurve.SetNumberOfRepetitions ( UInt32  repetitions)

This method allows to set the number of repetitions to be excecuted on this TFECurve.

Parameters
repetitionsNumber of repetitions [0...2^32-1]

◆ SetSequenceDateTime() [1/2]

void CH.Regatron.HPPS.TFE.TFECurve.SetSequenceDateTime ( DateTime  sequenceDateTime)

This is the standard setter for the creation date/time of this sequence.

Parameters
sequenceDateTimeThe dateTime information of the creation of this function.

◆ SetSequenceDateTime() [2/2]

void CH.Regatron.HPPS.TFE.TFECurve.SetSequenceDateTime ( Int32  year,
Int32  month,
Int32  day,
Int32  hour,
Int32  minute,
Int32  second 
)

This is the standard setter for the creation date/time of this sequence.
(throws (Argument)Exception if parameters cannot be evaluated to a valid date)

Parameters
yearYear of the creation date [2000 ... 2099]
monthMonth of the creation date [1....12]
dayDay of the creation date [1 ... 31]
hourHour of the creation date [0 ... 23]
minuteMinute of the creation date [0...59]
secondSecond of the creation date [0...59]

◆ SetSequenceName()

void CH.Regatron.HPPS.TFE.TFECurve.SetSequenceName ( String  sequenceName)

This is the standard setter for the Sequence Name.

Parameters
sequenceNameSequenceName (max. length: 32 characters)

◆ SetSequenceNumber()

void CH.Regatron.HPPS.TFE.TFECurve.SetSequenceNumber ( UInt32  sequenceNumber)

This method sets the number of this curve [1...999]

Parameters
sequenceNumbernew Number to be assigned to this curve.

◆ SetStartTriggerType()

void CH.Regatron.HPPS.TFE.TFECurve.SetStartTriggerType ( StartTrigger_Type  startTrigger)

This method allows to set the start trigger. (cf. StartTrigger_Type for further explanations).

Parameters
startTriggerStart trigger to be used [StartTrigger_Type]

◆ ToString()

new String CH.Regatron.HPPS.TFE.TFECurve.ToString ( )

This writes done a short summary representation of this TFECurve object.

Returns
A string representation of this object.

◆ UpdateFromCurveContainer()

void CH.Regatron.HPPS.TFE.TFECurve.UpdateFromCurveContainer ( CurveContainer  myCc)

This method takes a CurveContainer (Transport object to read curves from the Topcon) and uses the contained data to fill the various properties of this TFECurve.

Parameters
myCcCurveContainer object with data to be used.

Member Data Documentation

◆ MaximunSequenceNumber

const UInt32 CH.Regatron.HPPS.TFE.TFECurve.MaximunSequenceNumber = 999
static

This number is the upper border of the range of numbers that can be assigned to this container.

◆ MinimumSequenceNumber

const UInt32 CH.Regatron.HPPS.TFE.TFECurve.MinimumSequenceNumber = 1
static

This number is the lower border of the range of numbers that can be assigned to this container.