Class RsInstructionParameterCollection
Inheritance
RsInstructionParameterCollection
Assembly: ABB.Robotics.RobotStudio.Stations.dll
Syntax
public class RsInstructionParameterCollection : ICollection, IEnumerable<RsInstructionParameter>, IEnumerable
Examples
RsInstructionParameterCollection.
Project.UndoContext.BeginUndoStep("RsMoveInstructionDescriptionProperties");
try
{
// Instance active station.
Station station = Station.ActiveStation;
// Create a MoveInstructionDescription.
RsMoveInstructionDescription myMoveInstrDesc = new RsMoveInstructionDescription("SearchL", MotionType.Linear);
myMoveInstrDesc.InformationText = "Search Linear";
// Create InstructionPrameterGroups and InstructionParameters
// and add them to the group.
RsInstructionParameterGroup myIPG = new RsInstructionParameterGroup();
RsInstructionParameter myArg = new RsInstructionParameter("Stop");
myArg.AccessMode = ParameterAccessMode.In;
myArg.DataType = "switch";
myArg.Optional = true;
myIPG.InstructionParameters.Add(myArg);
myArg = new RsInstructionParameter("PStop");
myArg.AccessMode = ParameterAccessMode.In;
myArg.DataType = "switch";
myArg.Optional = true;
myIPG.InstructionParameters.Add(myArg);
myArg = new RsInstructionParameter("SStop");
myArg.AccessMode = ParameterAccessMode.In;
myArg.DataType = "switch";
myArg.Optional = true;
myIPG.InstructionParameters.Add(myArg);
myArg = new RsInstructionParameter("Sup");
myArg.AccessMode = ParameterAccessMode.In;
myArg.DataType = "switch";
myArg.Optional = true;
myIPG.InstructionParameters.Add(myArg);
myMoveInstrDesc.InstructionParameterGroups.Add(myIPG);
// Create a new InstructionPrameterGroup.
myIPG = new RsInstructionParameterGroup();
myArg = new RsInstructionParameter("Signal");
myArg.AccessMode = ParameterAccessMode.Variable;
myArg.DataType = "signaldi";
myArg.Optional = false;
myIPG.InstructionParameters.Add(myArg);
myMoveInstrDesc.InstructionParameterGroups.Add(myIPG);
// Create a new InstructionPrameterGroup.
myIPG = new RsInstructionParameterGroup();
myArg = new RsInstructionParameter("Flanks");
myArg.AccessMode = ParameterAccessMode.In;
myArg.DataType = "switch";
myArg.Optional = true;
myIPG.InstructionParameters.Add(myArg);
myMoveInstrDesc.InstructionParameterGroups.Add(myIPG);
// Create a new InstructionPrameterGroup.
myIPG = new RsInstructionParameterGroup();
myArg = new RsInstructionParameter("SearchPoint");
myArg.AccessMode = ParameterAccessMode.InOut;
myArg.DataType = "robtarget";
myArg.Optional = false;
myIPG.InstructionParameters.Add(myArg);
myMoveInstrDesc.InstructionParameterGroups.Add(myIPG);
// Create a new InstructionPrameterGroup.
myIPG = new RsInstructionParameterGroup();
myArg = new RsInstructionParameter("ToPoint");
myArg.AccessMode = ParameterAccessMode.In;
myArg.DataType = "robtarget";
myArg.Optional = false;
myArg.PointType = RsPointType.ToPoint;
myIPG.InstructionParameters.Add(myArg);
myMoveInstrDesc.InstructionParameterGroups.Add(myIPG);
// Create a new InstructionPrameterGroup.
myIPG = new RsInstructionParameterGroup();
myArg = new RsInstructionParameter("ID");
myArg.AccessMode = ParameterAccessMode.In;
myArg.DataType = "identno";
myArg.Optional = true;
myIPG.InstructionParameters.Add(myArg);
myMoveInstrDesc.InstructionParameterGroups.Add(myIPG);
// Create a new InstructionPrameterGroup.
myIPG = new RsInstructionParameterGroup();
myArg = new RsInstructionParameter("Speed");
myArg.AccessMode = ParameterAccessMode.In;
myArg.DataType = "speeddata";
myArg.Optional = false;
myIPG.InstructionParameters.Add(myArg);
myMoveInstrDesc.InstructionParameterGroups.Add(myIPG);
// Create a new InstructionPrameterGroup.
myIPG = new RsInstructionParameterGroup();
myArg = new RsInstructionParameter("V");
myArg.AccessMode = ParameterAccessMode.In;
myArg.DataType = "num";
myArg.Optional = true;
myIPG.InstructionParameters.Add(myArg);
myArg = new RsInstructionParameter("T");
myArg.AccessMode = ParameterAccessMode.In;
myArg.DataType = "num";
myArg.Optional = true;
myIPG.InstructionParameters.Add(myArg);
myMoveInstrDesc.InstructionParameterGroups.Add(myIPG);
// Create a new InstructionPrameterGroup.
myIPG = new RsInstructionParameterGroup();
myArg = new RsInstructionParameter("Tool");
myArg.AccessMode = ParameterAccessMode.Persistent;
myArg.DataType = "tooldata";
myArg.Optional = false;
myIPG.InstructionParameters.Add(myArg);
myMoveInstrDesc.InstructionParameterGroups.Add(myIPG);
// Create a new InstructionPrameterGroup.
myIPG = new RsInstructionParameterGroup();
myArg = new RsInstructionParameter("WObj");
myArg.AccessMode = ParameterAccessMode.Persistent;
myArg.DataType = "wobjdata";
myArg.Optional = true;
myIPG.InstructionParameters.Add(myArg);
myMoveInstrDesc.InstructionParameterGroups.Add(myIPG);
// Create a new InstructionPrameterGroup.
myIPG = new RsInstructionParameterGroup();
myArg = new RsInstructionParameter("Corr");
myArg.AccessMode = ParameterAccessMode.In;
myArg.DataType = "switch";
myArg.Optional = true;
myIPG.InstructionParameters.Add(myArg);
myMoveInstrDesc.InstructionParameterGroups.Add(myIPG);
// Add the InstructionDescription to the ActiveTask.
station.ActiveTask.InstructionDescriptions.Add(myMoveInstrDesc);
// Open the "Instruction Templates Manager" on the
// "Create" menu to verify that the description has been added.
}
catch
{
Project.UndoContext.CancelUndoStep(CancelUndoStepType.Rollback);
throw;
}
finally
{
Project.UndoContext.EndUndoStep();
}
Properties
Count
Declaration
public virtual int Count { get; }
Property Value
IsSynchronized
Declaration
public virtual bool IsSynchronized { get; }
Property Value
Item[Int32]
Declaration
public RsInstructionParameter this[int index] { get; }
Parameters
Type |
Name |
Description |
Int32 |
index |
|
Property Value
Parent
Declaration
public ProjectObject Parent { get; }
Property Value
SyncRoot
Declaration
public virtual object SyncRoot { get; }
Property Value
Methods
Add(RsInstructionParameter)
Declaration
public void Add(RsInstructionParameter instructionParameter)
Parameters
Examples
Add.
Project.UndoContext.BeginUndoStep("RsMoveInstructionDescriptionProperties");
try
{
// Instance active station.
Station station = Station.ActiveStation;
// Create a MoveInstructionDescription.
RsMoveInstructionDescription myMoveInstrDesc = new RsMoveInstructionDescription("SearchL", MotionType.Linear);
myMoveInstrDesc.InformationText = "Search Linear";
// Create InstructionPrameterGroups and InstructionParameters
// and add them to the group.
RsInstructionParameterGroup myIPG = new RsInstructionParameterGroup();
RsInstructionParameter myArg = new RsInstructionParameter("Stop");
myArg.AccessMode = ParameterAccessMode.In;
myArg.DataType = "switch";
myArg.Optional = true;
myIPG.InstructionParameters.Add(myArg);
myArg = new RsInstructionParameter("PStop");
myArg.AccessMode = ParameterAccessMode.In;
myArg.DataType = "switch";
myArg.Optional = true;
myIPG.InstructionParameters.Add(myArg);
myArg = new RsInstructionParameter("SStop");
myArg.AccessMode = ParameterAccessMode.In;
myArg.DataType = "switch";
myArg.Optional = true;
myIPG.InstructionParameters.Add(myArg);
myArg = new RsInstructionParameter("Sup");
myArg.AccessMode = ParameterAccessMode.In;
myArg.DataType = "switch";
myArg.Optional = true;
myIPG.InstructionParameters.Add(myArg);
myMoveInstrDesc.InstructionParameterGroups.Add(myIPG);
// Create a new InstructionPrameterGroup.
myIPG = new RsInstructionParameterGroup();
myArg = new RsInstructionParameter("Signal");
myArg.AccessMode = ParameterAccessMode.Variable;
myArg.DataType = "signaldi";
myArg.Optional = false;
myIPG.InstructionParameters.Add(myArg);
myMoveInstrDesc.InstructionParameterGroups.Add(myIPG);
// Create a new InstructionPrameterGroup.
myIPG = new RsInstructionParameterGroup();
myArg = new RsInstructionParameter("Flanks");
myArg.AccessMode = ParameterAccessMode.In;
myArg.DataType = "switch";
myArg.Optional = true;
myIPG.InstructionParameters.Add(myArg);
myMoveInstrDesc.InstructionParameterGroups.Add(myIPG);
// Create a new InstructionPrameterGroup.
myIPG = new RsInstructionParameterGroup();
myArg = new RsInstructionParameter("SearchPoint");
myArg.AccessMode = ParameterAccessMode.InOut;
myArg.DataType = "robtarget";
myArg.Optional = false;
myIPG.InstructionParameters.Add(myArg);
myMoveInstrDesc.InstructionParameterGroups.Add(myIPG);
// Create a new InstructionPrameterGroup.
myIPG = new RsInstructionParameterGroup();
myArg = new RsInstructionParameter("ToPoint");
myArg.AccessMode = ParameterAccessMode.In;
myArg.DataType = "robtarget";
myArg.Optional = false;
myArg.PointType = RsPointType.ToPoint;
myIPG.InstructionParameters.Add(myArg);
myMoveInstrDesc.InstructionParameterGroups.Add(myIPG);
// Create a new InstructionPrameterGroup.
myIPG = new RsInstructionParameterGroup();
myArg = new RsInstructionParameter("ID");
myArg.AccessMode = ParameterAccessMode.In;
myArg.DataType = "identno";
myArg.Optional = true;
myIPG.InstructionParameters.Add(myArg);
myMoveInstrDesc.InstructionParameterGroups.Add(myIPG);
// Create a new InstructionPrameterGroup.
myIPG = new RsInstructionParameterGroup();
myArg = new RsInstructionParameter("Speed");
myArg.AccessMode = ParameterAccessMode.In;
myArg.DataType = "speeddata";
myArg.Optional = false;
myIPG.InstructionParameters.Add(myArg);
myMoveInstrDesc.InstructionParameterGroups.Add(myIPG);
// Create a new InstructionPrameterGroup.
myIPG = new RsInstructionParameterGroup();
myArg = new RsInstructionParameter("V");
myArg.AccessMode = ParameterAccessMode.In;
myArg.DataType = "num";
myArg.Optional = true;
myIPG.InstructionParameters.Add(myArg);
myArg = new RsInstructionParameter("T");
myArg.AccessMode = ParameterAccessMode.In;
myArg.DataType = "num";
myArg.Optional = true;
myIPG.InstructionParameters.Add(myArg);
myMoveInstrDesc.InstructionParameterGroups.Add(myIPG);
// Create a new InstructionPrameterGroup.
myIPG = new RsInstructionParameterGroup();
myArg = new RsInstructionParameter("Tool");
myArg.AccessMode = ParameterAccessMode.Persistent;
myArg.DataType = "tooldata";
myArg.Optional = false;
myIPG.InstructionParameters.Add(myArg);
myMoveInstrDesc.InstructionParameterGroups.Add(myIPG);
// Create a new InstructionPrameterGroup.
myIPG = new RsInstructionParameterGroup();
myArg = new RsInstructionParameter("WObj");
myArg.AccessMode = ParameterAccessMode.Persistent;
myArg.DataType = "wobjdata";
myArg.Optional = true;
myIPG.InstructionParameters.Add(myArg);
myMoveInstrDesc.InstructionParameterGroups.Add(myIPG);
// Create a new InstructionPrameterGroup.
myIPG = new RsInstructionParameterGroup();
myArg = new RsInstructionParameter("Corr");
myArg.AccessMode = ParameterAccessMode.In;
myArg.DataType = "switch";
myArg.Optional = true;
myIPG.InstructionParameters.Add(myArg);
myMoveInstrDesc.InstructionParameterGroups.Add(myIPG);
// Add the InstructionDescription to the ActiveTask.
station.ActiveTask.InstructionDescriptions.Add(myMoveInstrDesc);
// Open the "Instruction Templates Manager" on the
// "Create" menu to verify that the description has been added.
}
catch
{
Project.UndoContext.CancelUndoStep(CancelUndoStepType.Rollback);
throw;
}
finally
{
Project.UndoContext.EndUndoStep();
}
Contains(RsInstructionParameter)
Declaration
public bool Contains(RsInstructionParameter obj)
Parameters
Returns
CopyTo(RsInstructionParameter[], Int32)
Declaration
public void CopyTo(RsInstructionParameter[] array, int index)
Parameters
CopyTo(Array, Int32)
Declaration
public virtual void CopyTo(Array array, int index)
Parameters
GetEnumerator()
Declaration
public virtual IEnumerator GetEnumerator()
Returns
Remove(RsInstructionParameter)
Declaration
public void Remove(RsInstructionParameter instructionParameter)
Parameters
Examples
Remove.
Project.UndoContext.BeginUndoStep("RsMoveInstructionDescriptionProperties");
try
{
// Instance active station.
Station station = Station.ActiveStation;
// Create a MoveInstructionDescription.
RsMoveInstructionDescription myMoveInstrDesc = new RsMoveInstructionDescription("SearchL", MotionType.Linear);
myMoveInstrDesc.InformationText = "Search Linear";
// Create InstructionPrameterGroups and InstructionParameters
// and add them to the group.
RsInstructionParameterGroup myIPG = new RsInstructionParameterGroup();
RsInstructionParameter myArg = new RsInstructionParameter("Stop");
myArg.AccessMode = ParameterAccessMode.In;
myArg.DataType = "switch";
myArg.Optional = true;
myIPG.InstructionParameters.Add(myArg);
myArg = new RsInstructionParameter("PStop");
myArg.AccessMode = ParameterAccessMode.In;
myArg.DataType = "switch";
myArg.Optional = true;
myIPG.InstructionParameters.Add(myArg);
myArg = new RsInstructionParameter("SStop");
myArg.AccessMode = ParameterAccessMode.In;
myArg.DataType = "switch";
myArg.Optional = true;
myIPG.InstructionParameters.Add(myArg);
myArg = new RsInstructionParameter("Sup");
myArg.AccessMode = ParameterAccessMode.In;
myArg.DataType = "switch";
myArg.Optional = true;
myIPG.InstructionParameters.Add(myArg);
myMoveInstrDesc.InstructionParameterGroups.Add(myIPG);
// Create a new InstructionPrameterGroup.
myIPG = new RsInstructionParameterGroup();
myArg = new RsInstructionParameter("Signal");
myArg.AccessMode = ParameterAccessMode.Variable;
myArg.DataType = "signaldi";
myArg.Optional = false;
myIPG.InstructionParameters.Add(myArg);
myMoveInstrDesc.InstructionParameterGroups.Add(myIPG);
// Create a new InstructionPrameterGroup.
myIPG = new RsInstructionParameterGroup();
myArg = new RsInstructionParameter("Flanks");
myArg.AccessMode = ParameterAccessMode.In;
myArg.DataType = "switch";
myArg.Optional = true;
myIPG.InstructionParameters.Add(myArg);
myMoveInstrDesc.InstructionParameterGroups.Add(myIPG);
// Create a new InstructionPrameterGroup.
myIPG = new RsInstructionParameterGroup();
myArg = new RsInstructionParameter("SearchPoint");
myArg.AccessMode = ParameterAccessMode.InOut;
myArg.DataType = "robtarget";
myArg.Optional = false;
myIPG.InstructionParameters.Add(myArg);
myMoveInstrDesc.InstructionParameterGroups.Add(myIPG);
// Create a new InstructionPrameterGroup.
myIPG = new RsInstructionParameterGroup();
myArg = new RsInstructionParameter("ToPoint");
myArg.AccessMode = ParameterAccessMode.In;
myArg.DataType = "robtarget";
myArg.Optional = false;
myArg.PointType = RsPointType.ToPoint;
myIPG.InstructionParameters.Add(myArg);
myMoveInstrDesc.InstructionParameterGroups.Add(myIPG);
// Create a new InstructionPrameterGroup.
myIPG = new RsInstructionParameterGroup();
myArg = new RsInstructionParameter("ID");
myArg.AccessMode = ParameterAccessMode.In;
myArg.DataType = "identno";
myArg.Optional = true;
myIPG.InstructionParameters.Add(myArg);
myMoveInstrDesc.InstructionParameterGroups.Add(myIPG);
// Create a new InstructionPrameterGroup.
myIPG = new RsInstructionParameterGroup();
myArg = new RsInstructionParameter("Speed");
myArg.AccessMode = ParameterAccessMode.In;
myArg.DataType = "speeddata";
myArg.Optional = false;
myIPG.InstructionParameters.Add(myArg);
myMoveInstrDesc.InstructionParameterGroups.Add(myIPG);
// Create a new InstructionPrameterGroup.
myIPG = new RsInstructionParameterGroup();
myArg = new RsInstructionParameter("V");
myArg.AccessMode = ParameterAccessMode.In;
myArg.DataType = "num";
myArg.Optional = true;
myIPG.InstructionParameters.Add(myArg);
myArg = new RsInstructionParameter("T");
myArg.AccessMode = ParameterAccessMode.In;
myArg.DataType = "num";
myArg.Optional = true;
myIPG.InstructionParameters.Add(myArg);
myMoveInstrDesc.InstructionParameterGroups.Add(myIPG);
// Create a new InstructionPrameterGroup.
myIPG = new RsInstructionParameterGroup();
myArg = new RsInstructionParameter("Tool");
myArg.AccessMode = ParameterAccessMode.Persistent;
myArg.DataType = "tooldata";
myArg.Optional = false;
myIPG.InstructionParameters.Add(myArg);
myMoveInstrDesc.InstructionParameterGroups.Add(myIPG);
// Create a new InstructionPrameterGroup.
myIPG = new RsInstructionParameterGroup();
myArg = new RsInstructionParameter("WObj");
myArg.AccessMode = ParameterAccessMode.Persistent;
myArg.DataType = "wobjdata";
myArg.Optional = true;
myIPG.InstructionParameters.Add(myArg);
myMoveInstrDesc.InstructionParameterGroups.Add(myIPG);
// Create a new InstructionPrameterGroup.
myIPG = new RsInstructionParameterGroup();
myArg = new RsInstructionParameter("Corr");
myArg.AccessMode = ParameterAccessMode.In;
myArg.DataType = "switch";
myArg.Optional = true;
myIPG.InstructionParameters.Add(myArg);
myMoveInstrDesc.InstructionParameterGroups.Add(myIPG);
// Add the InstructionDescription to the ActiveTask.
station.ActiveTask.InstructionDescriptions.Add(myMoveInstrDesc);
// Open the "Instruction Templates Manager" on the
// "Create" menu to verify that the description has been added.
}
catch
{
Project.UndoContext.CancelUndoStep(CancelUndoStepType.Rollback);
throw;
}
finally
{
Project.UndoContext.EndUndoStep();
}
ToArray()
Declaration
public RsInstructionParameter[] ToArray()
Returns