Electrical Logical Functions and Methods

This document describes the functions and methods you can use to create Knowledgeware checks or rules for electrical logical objects.

These functions are available since you select the ElectricalLogicalFunction package from Me > Preferences > Parameters and Measure > Knowledge Environment tab.

Important: An RFLPVPMLogicalInstance is a logical instance of a PLMElecLogicalNet/NetGroup/Wire/Cable.

This page discusses:

AddToElecGroup

This function adds the second instance from the structure of the first one.

Signature

AddToElecGroup(OwnerInstance : RFLVPMLogicalInstance, InstanceToAdd : RFLVPMLogicalInstance) : Boolean

Arguments

Name Input / Output Required? Type Comment
OwnerInstance In Yes RFLVPMLogicalInstance None
InstanceToAdd In Yes RFLVPMLogicalInstance None

ReturnType

Boolean

The function returns TRUE if it succeeds and FALSE if a problem occurred.

AssociateRoutable

This function associates a wire/cable with a net/ et group.

Signature

AssociateRoutable(NetOccurrence : LogicalOccurrence, WireOccurrence : LogicalOccurrence) : Boolean

Arguments

Name Input / Output Required? Type Comment
NetOccurrence In Yes LogicalOccurrence None
WireOccurrence In Yes LogicalOccurrence None

ReturnType

Boolean

The function is TRUE if it succeeds, FALSE if a problem occurred.

DisassociateRoutable

This function dissociates a wire/cable with a net/net group.

Signature

DisassociateRoutable(NetOccurrence : LogicalOccurrence, WireOccurrence : LogicalOccurrence) : Boolean

Arguments

Name Input / Output Required? Type Comment
NetOccurrence In Yes LogicalOccurrence None
WireOccurrence In Yes LogicalOccurrence None

ReturnType

Boolean

The function is TRUE if it succeeds, FALSE if a problem occurred.

GetElecEnds

This function retrieves the logical ports and the logical instances the input is connected to, through logical connections.

Signature

GetElecEnds(ElectricalConductor : RFLVPMLogicalInstance, ListOfPorts : List, ListOfComponents : List) : Boolean

Arguments

Name Input / Output Required? Type Comment
ElectricalConductor In Yes RFLVPMLogicalInstance None
ListOfPorts Out Yes List None
ListOfComponents Out Yes List None

ReturnType

Boolean

The function is TRUE if it succeeds, FALSE if a problem occurred.

GetElecGroupOwner

This function retrieves the net group/cable of a net/net group or wire/cable.

Signature

GetElecGroupOwner(GroupedInstance : RFLVPMLogicalInstance) : RFLVPMLogicalInstance

Arguments

Name Input / Output Required? Type Comment
GroupedInstance In Yes RFLVPMLogicalInstance None

ReturnType

RFLVPMLogicalInstance

RFLVPMLogicalInstance of the PLMElecLogical NetGroup/Cable under which the input object is grouped.

GetElecGroupedObjects

This function retrieves the content of a net group/cable.

Signature

GetElecGroupedObjects(OwnerInstance : RFLVPMLogicalInstance) : List

Arguments

Name Input / Output Required? Type Comment
OwnerInstance In Yes RFLVPMLogicalInstance None

ReturnType

List

List (RFLVPMLogicalInstance): all the instances of PLMElecLogicalNet/NetGroup/Wire/Cable grouped into the input object.

GetElectricalConnectedEnds

This function navigates through a list of ports to retrieve the electrical objects and the ports connected to the input component.

Signature

GetElectricalConnectedEnds(Component : LogicalOccurrence, ListOfComponentPortToNavigateThrough : List, ListOfComponentTargetFound : List, ListOfComponentPortTargetFound : List) : Boolean

Arguments

Name Input / Output Required? Type Comment
Component In Yes LogicalOccurrence None
ListOfComponentPortToNavigateThrough In Yes List None
ListOfComponentTargetFound Out Yes List None
ListOfComponentPortTargetFound Out Yes List None

ReturnType

Boolean

The function is TRUE if it succeeds, FALSE if a problem occurred.

GetElectricalConnectedEndsWithFilters

This function retrieves the ends of a given component occurence.

Signature

GetElectricalConnectedEndsWithFilters(Component : LogicalOccurrence, ComponentTypeFilter : String, PortTypeFilter : String, ListOfComponentPortToNavigateThrough : List, ListOfComponentTargetFound : List, ListOfComponentPortTargetFound : List) : Boolean

Arguments

Name Input/Output Required? Type Comment
Component In Yes LogicalOccurrence Input component
ComponentTypeFilter In Yes String

Name of the component type to be retrieved. (connected to the input component).

PortTypeFilter In Yes String -Type of port to be retrieved
ListOfComponentPortToNavigateThrough In Yes List input ports
ListOfComponentTargetFound Out Yes List Lists the components to be retrieved.
ListOfComponentPortTargetFound Out Yes List Lists the corresponding ports.

ReturnType

Boolean

GetHarness

This function retrieves the harness group occurrence.

Signature

GetHarness(ElecLogicalOccurrence : LogicalOccurrence) : EleLogicalHarnessOcc

Arguments

Name Input / Output Required? Type Comment
ElecLogicalOccurrence In Yes LogicalOccurrence The electrical logical object occurrence: wire, cable, connector…

ReturnType

ElecLogicalHarness

The harness occurrence groups the input object.

GetHarnessContent

This function retrieves the harness content.

Signature

GetHarnessContent(OwnerInstance : RFLVPMLogicalInstance, ListOfContent : List) : Boolean

Arguments

Name Input / Output Required? Type Comment
OwnerInstance In Yes RFLVPMLogicalInstance None
ListOfContent Out Yes List None

ReturnType

Boolean

List (RFLVPMLogicalInstance): all the instances PLMElecLogical wires, cables and connectors.

GetPhysicalRoutedLength

This function retrieves physical routed lengths for logical conductor occurrence.

Signature

LogicalOccurrence->GetPhysicalRoutedLength (PhysicalRoutedLength: out Length) : Boolean

Arguments

Name Input / Output Required? Type Comment
LogicalOccurrence In Yes ElecLogicalOccurrence The electrical logical conductor occurrence: conductor, wire, cable, cable group
LENGTH Out Yes Length Length of the physical conductor linked to the logical conductor occurrence

ReturnType

Boolean

The function returns TRUE if it succeeds and FALSE if a problem occurred.

Example

let length(LENGTH)
let value(String)
this->GetPhysicalRoutedLength(length )
value=ToString(length)
Message(value)

GetNominalPower

This method retrieves the nominal power for logical equipment reference.

Signature

LogicalOccurence ->GetNominalPower(NominalPower:out Real) : Boolean

Arguments

NameInput / OutputRequired?TypeComment
LogicalReferenceInYesEnsLogicalEquipmentNone
Nominal PowerOutYesRealNone

ReturnType

Boolean

Example

Let value(Real)
Let svalue(String)
thisObject->GetNominalPower(value)
svalue=ToString(value)

Message(svalue)

SetNominalPower

This method allows you to set the nominal power for logical equipment reference.

Signature

LogicalOccurence ->SetNominalPower(NominalPower:Real) : Boolean

Arguments

Name Input / Output Required? Type Comment
LogicalReferce In Yes EnsLogicalEquipment None
Nominal Power In Yes Real None

ReturnType

Boolean

Example

Let value(Real)
Let svalue(String)
thisObject->SetNominalPower(2.2)

IsPinReserved

This function retrieves the status of pin of a component and a list of reservation attributes.

Signature

IsPinReserved(Pin : RFLVPMLogicalPort, ElectricalComponent : RFLVPMLogicalInstance, Status : Boolean, ListOfResservationValues : List) : Boolean

Arguments

Name Input / Output Required? Type Comment
Pin In Yes RFLVPMLogicalPort None
ElectricalComponent In Yes RFLVPMLogicalInstance None
Status Out Yes Boolean None
ListOfResservationValues Out Yes List None

ReturnType

Boolean

The function is TRUE if it succeeds, FALSE if a problem occurred.

ListAssociatedRoutables

This function retrieves the list of associated routable for a given net/net group.

Signature

ListAssociatedRoutables(OwnerOccurrence : LogicalOccurrence) : List

Arguments

Name Input / Output Required? Type Comment
OwnerOccurrence In Yes LogicalOccurrence None

ReturnType

List

List: lists the associated routables for the net/net group.

RemoveFromElecGroup

This function removes the second instance from the structure of the first one.

Signature

RemoveFromElecGroup(OwnerInstance : RFLVPMLogicalInstance, InstanceToRemove : RFLVPMLogicalInstance) : Boolean

Arguments

Name Input / Output Required? Type Comment
OwnerInstance In Yes RFLVPMLogicalInstance None
InstanceToRemove In Yes RFLVPMLogicalInstance None

ReturnType

Boolean

The function is TRUE if it succeeds, FALSE if a problem occurred.

GetTerminalBlock

This function retrieves the terminal block object from a terminal block grouping structure (the topmost grouping object).

Signature

GetTerminalBlock(Component : LogicalOccurrence, TerminalBlock : LogicalOccurrence) : Boolean

Arguments

Name Input / Output Required? Type Comment
Component In Yes LogicalOccurrence None
TerminalBlock Out Yes LogicalOccurrence None

ReturnType

Boolean

The function is TRUE if it succeeds. FALSE if a problem occurred. If no terminal block is found, the output logical occurrence will be NULL.

GetTerminalGroup

This function retrieves the terminal group object of a terminal block grouping structure (the second topmost grouping object).

Signature

GetTerminalGroupComponent : LogicalOccurrence, TerminalGroup : LogicalOccurrence) : Boolean

Arguments

NameInput / OutputRequired?TypeComment
ComponentInYes LogicalOccurrenceNone
TerminalGroupOutYes LogicalOccurrenceNone

ReturnType

Boolean

The function is TRUE if it succeeds. FALSE if a problem occurred. If no terminal group is found, the output logical occurrence will be NULL.