    

 ## On this page

  

 

 # Interface ModelCenter::IIfComponent

 Last update: 16.07.2025 

![](https://img.shields.io/badge/language-IDL-blue "IDL")![](https://img.shields.io/badge/-public-brightgreen "public")

**Definition**: `ModelCenter/src/ModelCenter.odl` (line 1293)

COM Instance.

**Inherits from**:

- [ModelCenter::IComponent](interfaceModelCenter_1_1IComponent.md#interfaceModelCenter_1_1IComponent)

## Members

- [AssociatedFiles](interfaceModelCenter_1_1IIfComponent.md#interfaceModelCenter_1_1IIfComponent_1afeeaebcaeafab038e2cc613078182c6e)
- [downloadValues](interfaceModelCenter_1_1IIfComponent.md#interfaceModelCenter_1_1IIfComponent_1a610d24ca2e023e09194b29c3115c6d84)
- [exclusive](interfaceModelCenter_1_1IIfComponent.md#interfaceModelCenter_1_1IIfComponent_1ae32fcb5e2bd27ce4317da67ea515d40f)
- [getBranchCondition](interfaceModelCenter_1_1IIfComponent.md#interfaceModelCenter_1_1IIfComponent_1a0a01eb7fd3513f7754534c229ef4da08)
- [getBranchName](interfaceModelCenter_1_1IIfComponent.md#interfaceModelCenter_1_1IIfComponent_1acd033bea89f3ba1ec760d9ad2c47d0ed)
- [getFullName](interfaceModelCenter_1_1IIfComponent.md#interfaceModelCenter_1_1IIfComponent_1a5766e80ec09baf80e3ad7c28e4dd3bd4)
- [getMetadata](interfaceModelCenter_1_1IComponent.md#interfaceModelCenter_1_1IComponent_1a2bd6e585619f4cd76426932b62dcf60a)
- [getName](interfaceModelCenter_1_1IIfComponent.md#interfaceModelCenter_1_1IIfComponent_1a97c817507e162f9422b2f73ab5c8cef1)
- [getNumBranches](interfaceModelCenter_1_1IIfComponent.md#interfaceModelCenter_1_1IIfComponent_1a667215e89aa8d7b6ff584ce7c2a9e566)
- [getPositionX](interfaceModelCenter_1_1IIfComponent.md#interfaceModelCenter_1_1IIfComponent_1a205b99507e64a1ad621ee6aeb6cd6d0c)
- [getPositionY](interfaceModelCenter_1_1IIfComponent.md#interfaceModelCenter_1_1IIfComponent_1a6cddb9b21c6b3b60a23f2a28d60ea17a)
- [getSource](interfaceModelCenter_1_1IIfComponent.md#interfaceModelCenter_1_1IIfComponent_1ae4cad8560e705e807f793a2dade750e2)
- [getType](interfaceModelCenter_1_1IIfComponent.md#interfaceModelCenter_1_1IIfComponent_1a9cbf40ea5229f4240bdb241e8d88329c)
- [getVariable](interfaceModelCenter_1_1IIfComponent.md#interfaceModelCenter_1_1IIfComponent_1af46fd2a7e5dda89d73e347b2fff75d16)
- [Groups](interfaceModelCenter_1_1IIfComponent.md#interfaceModelCenter_1_1IIfComponent_1a491cb2ba622f73c3338ebbbe92e9da3d)
- [IndexInParent](interfaceModelCenter_1_1IIfComponent.md#interfaceModelCenter_1_1IIfComponent_1a5c8b1a2d576bbdc2ea74f70b499889e0)
- [invalidate](interfaceModelCenter_1_1IIfComponent.md#interfaceModelCenter_1_1IIfComponent_1a78101d039853db9e2d989edef97f226b)
- [invokeMethod](interfaceModelCenter_1_1IIfComponent.md#interfaceModelCenter_1_1IIfComponent_1a583b809498c69beadd39c1e21e2cebab)
- [ParentAssembly](interfaceModelCenter_1_1IIfComponent.md#interfaceModelCenter_1_1IIfComponent_1ae19efd7aa8ec8a537e3de7234b41ebde)
- [reconnect](interfaceModelCenter_1_1IIfComponent.md#interfaceModelCenter_1_1IIfComponent_1a67e294fa372905721460635514adcd35)
- [rename](interfaceModelCenter_1_1IIfComponent.md#interfaceModelCenter_1_1IIfComponent_1ae64ae2e0082f2379391e6a49d5e57192)
- [renameBranch](interfaceModelCenter_1_1IIfComponent.md#interfaceModelCenter_1_1IIfComponent_1afddf16459949f862d3329e2d6eb79bb2)
- [run](interfaceModelCenter_1_1IIfComponent.md#interfaceModelCenter_1_1IIfComponent_1a7891e5012feff9e7bbdec3bde6adb8e6)
- [runLastBranchByDefault](interfaceModelCenter_1_1IIfComponent.md#interfaceModelCenter_1_1IIfComponent_1a6b9474faac3cad28e1a5d156438141a0)
- [setBranchCondition](interfaceModelCenter_1_1IIfComponent.md#interfaceModelCenter_1_1IIfComponent_1af539f83e9e44adfccbff2968cfdb3f39)
- [setMetadata](interfaceModelCenter_1_1IComponent.md#interfaceModelCenter_1_1IComponent_1a41eb816b08e0e89739822ba87e5416c6)
- [show](interfaceModelCenter_1_1IIfComponent.md#interfaceModelCenter_1_1IIfComponent_1a344fe33286c0d548dfb35b472cfcc1d6)
- [userData](interfaceModelCenter_1_1IIfComponent.md#interfaceModelCenter_1_1IIfComponent_1a6590d1a787dc12285407656bfc22cbd7)
- [Variables](interfaceModelCenter_1_1IIfComponent.md#interfaceModelCenter_1_1IIfComponent_1a377c50131d329f7fe0e1508bafff61dc)

## Properties

<a id="interfaceModelCenter_1_1IIfComponent_1a377c50131d329f7fe0e1508bafff61dc"></a>

### Property Variables

![](https://img.shields.io/badge/-public-brightgreen "public")

**Definition**: `ModelCenter/src/ModelCenter.odl` (line 1)

```
VARIANT ModelCenter::IIfComponent::Variables

```

**Return type**: VARIANT

<a id="interfaceModelCenter_1_1IIfComponent_1a491cb2ba622f73c3338ebbbe92e9da3d"></a>

### Property Groups

![](https://img.shields.io/badge/-public-brightgreen "public")

**Definition**: `ModelCenter/src/ModelCenter.odl` (line 1)

```
VARIANT ModelCenter::IIfComponent::Groups

```

**Return type**: VARIANT

<a id="interfaceModelCenter_1_1IIfComponent_1a6590d1a787dc12285407656bfc22cbd7"></a>

### Property userData

![](https://img.shields.io/badge/-public-brightgreen "public")

**Definition**: `ModelCenter/src/ModelCenter.odl` (line 1)

```
VARIANT ModelCenter::IIfComponent::userData

```

**Return type**: VARIANT

<a id="interfaceModelCenter_1_1IIfComponent_1afeeaebcaeafab038e2cc613078182c6e"></a>

### Property AssociatedFiles

![](https://img.shields.io/badge/-public-brightgreen "public")

**Definition**: `ModelCenter/src/ModelCenter.odl` (line 1)

```
VARIANT ModelCenter::IIfComponent::AssociatedFiles

```

**Return type**: VARIANT

<a id="interfaceModelCenter_1_1IIfComponent_1a5c8b1a2d576bbdc2ea74f70b499889e0"></a>

### Property IndexInParent

![](https://img.shields.io/badge/-public-brightgreen "public")

**Definition**: `ModelCenter/src/ModelCenter.odl` (line 1)

```
int ModelCenter::IIfComponent::IndexInParent

```

**Return type**: int

<a id="interfaceModelCenter_1_1IIfComponent_1ae19efd7aa8ec8a537e3de7234b41ebde"></a>

### Property ParentAssembly

![](https://img.shields.io/badge/-public-brightgreen "public")

**Definition**: `ModelCenter/src/ModelCenter.odl` (line 1)

```
LPDISPATCH ModelCenter::IIfComponent::ParentAssembly

```

**Return type**: LPDISPATCH

<a id="interfaceModelCenter_1_1IIfComponent_1ae32fcb5e2bd27ce4317da67ea515d40f"></a>

### Property exclusive

![](https://img.shields.io/badge/-public-brightgreen "public")

**Definition**: `ModelCenter/src/ModelCenter.odl` (line 1)

```
boolean ModelCenter::IIfComponent::exclusive

```

The If exclusive mode.

**Returns**:

Yes (TRUE) or no (FALSE).

**Return type**: boolean

<a id="interfaceModelCenter_1_1IIfComponent_1a6b9474faac3cad28e1a5d156438141a0"></a>

### Property runLastBranchByDefault

![](https://img.shields.io/badge/-public-brightgreen "public")

**Definition**: `ModelCenter/src/ModelCenter.odl` (line 1)

```
boolean ModelCenter::IIfComponent::runLastBranchByDefault

```

The "has default" flag.

**Returns**:

YES (TRUE) or no (FALSE).

**Return type**: boolean

## Public functions

<a id="interfaceModelCenter_1_1IIfComponent_1a97c817507e162f9422b2f73ab5c8cef1"></a>

### Function getName

![](https://img.shields.io/badge/-public-brightgreen "public")

```
BSTR ModelCenter::IIfComponent::getName()

```

Gets the name of the Component.

**Returns**:

The name of the Component.

**Return type**: BSTR

**Reimplements**: [getName](interfaceModelCenter_1_1IComponent.md#interfaceModelCenter_1_1IComponent_1a19763f04596904ff5cab2f4f72f6f501)

<a id="interfaceModelCenter_1_1IIfComponent_1a5766e80ec09baf80e3ad7c28e4dd3bd4"></a>

### Function getFullName

![](https://img.shields.io/badge/-public-brightgreen "public")

```
BSTR ModelCenter::IIfComponent::getFullName()

```

Gets the full [ModelCenter](namespaceModelCenter.md#namespaceModelCenter) path of the Component.

**Returns**:

the full ModelCenter path of the Component.

**Return type**: BSTR

**Reimplements**: [getFullName](interfaceModelCenter_1_1IComponent.md#interfaceModelCenter_1_1IComponent_1a9309a89032b2d7d28baf279a3b76b5e8)

<a id="interfaceModelCenter_1_1IIfComponent_1a7891e5012feff9e7bbdec3bde6adb8e6"></a>

### Function run

![](https://img.shields.io/badge/-public-brightgreen "public")

```
void ModelCenter::IIfComponent::run()

```

Runs the Component.

**Return type**: void

**Reimplements**: [run](interfaceModelCenter_1_1IComponent.md#interfaceModelCenter_1_1IComponent_1adf60ad0c84852250f14d27cfa689d8d0)

<a id="interfaceModelCenter_1_1IIfComponent_1ae4cad8560e705e807f793a2dade750e2"></a>

### Function getSource

![](https://img.shields.io/badge/-public-brightgreen "public")

```
BSTR ModelCenter::IIfComponent::getSource()

```

Gets the source of the Component.

**Returns**:

The source of the Component.

**Return type**: BSTR

**Reimplements**: [getSource](interfaceModelCenter_1_1IComponent.md#interfaceModelCenter_1_1IComponent_1a7ee6752f95f3bdfbe83132a3a7794cb2)

<a id="interfaceModelCenter_1_1IIfComponent_1a583b809498c69beadd39c1e21e2cebab"></a>

### Function invokeMethod

![](https://img.shields.io/badge/-public-brightgreen "public")

```
void ModelCenter::IIfComponent::invokeMethod(BSTR method)

```

Invokes one of the Component's methods.

**Parameters**:

- **method**: The name of the method to invoke.

**Parameters**:

- BSTR **method**

**Return type**: void

**Reimplements**: [invokeMethod](interfaceModelCenter_1_1IComponent.md#interfaceModelCenter_1_1IComponent_1afaddb2c21be03b26716594af883a51ee)

<a id="interfaceModelCenter_1_1IIfComponent_1a78101d039853db9e2d989edef97f226b"></a>

### Function invalidate

![](https://img.shields.io/badge/-public-brightgreen "public")

```
void ModelCenter::IIfComponent::invalidate()

```

Invalidates the Component and all of its variables.

**Return type**: void

**Reimplements**: [invalidate](interfaceModelCenter_1_1IComponent.md#interfaceModelCenter_1_1IComponent_1a73c230184c72f5abcb7d3af5f91c9d1e)

<a id="interfaceModelCenter_1_1IIfComponent_1a67e294fa372905721460635514adcd35"></a>

### Function reconnect

![](https://img.shields.io/badge/-public-brightgreen "public")

```
void ModelCenter::IIfComponent::reconnect()

```

Reconnect a Component.

**Return type**: void

**Reimplements**: [reconnect](interfaceModelCenter_1_1IComponent.md#interfaceModelCenter_1_1IComponent_1a44d641cc9d4a797f88e56495c466479c)

<a id="interfaceModelCenter_1_1IIfComponent_1a610d24ca2e023e09194b29c3115c6d84"></a>

### Function downloadValues

![](https://img.shields.io/badge/-public-brightgreen "public")

```
void ModelCenter::IIfComponent::downloadValues()

```

Downloads the component's variable values from [ModelCenter](namespaceModelCenter.md#namespaceModelCenter) Remote Execution, if it's a MCRE component.

**Return type**: void

**Reimplements**: [downloadValues](interfaceModelCenter_1_1IComponent.md#interfaceModelCenter_1_1IComponent_1a761c665246557b5b4201873a722d6fed)

<a id="interfaceModelCenter_1_1IIfComponent_1af46fd2a7e5dda89d73e347b2fff75d16"></a>

### Function getVariable

![](https://img.shields.io/badge/-public-brightgreen "public")

```
LPDISPATCH ModelCenter::IIfComponent::getVariable(BSTR name)

```

Gets the Variable by the specified name.

**Parameters**:

- **name**: The name of the variable to retrieve in dotted notation relative to the Component.

**Returns**:

IDispatch\* to an [IVariable](interfaceModelCenter_1_1IVariable.md#interfaceModelCenter_1_1IVariable) object.

**Parameters**:

- BSTR **name**

**Return type**: LPDISPATCH

**Reimplements**: [getVariable](interfaceModelCenter_1_1IComponent.md#interfaceModelCenter_1_1IComponent_1afb270ae53383589c63f87b4e3385f128)

<a id="interfaceModelCenter_1_1IIfComponent_1a205b99507e64a1ad621ee6aeb6cd6d0c"></a>

### Function getPositionX

![](https://img.shields.io/badge/-public-brightgreen "public")

```
int ModelCenter::IIfComponent::getPositionX()

```

Gets the X position of the component in the Analysis View.

**Returns**:

The X position.

**Return type**: int

**Reimplements**: [getPositionX](interfaceModelCenter_1_1IComponent.md#interfaceModelCenter_1_1IComponent_1a0c3e0c952584ba25801114e01010eab0)

<a id="interfaceModelCenter_1_1IIfComponent_1a6cddb9b21c6b3b60a23f2a28d60ea17a"></a>

### Function getPositionY

![](https://img.shields.io/badge/-public-brightgreen "public")

```
int ModelCenter::IIfComponent::getPositionY()

```

Gets the Y position of the component in the Analysis View.

**Returns**:

The Y position.

**Return type**: int

**Reimplements**: [getPositionY](interfaceModelCenter_1_1IComponent.md#interfaceModelCenter_1_1IComponent_1ad3da2b98a973112ea897cf3b146f0276)

<a id="interfaceModelCenter_1_1IIfComponent_1ae64ae2e0082f2379391e6a49d5e57192"></a>

### Function rename

![](https://img.shields.io/badge/-public-brightgreen "public")

```
void ModelCenter::IIfComponent::rename(BSTR name)

```

Renames the current Component.

**Parameters**:

- **name**: New name of the Component.

**Parameters**:

- BSTR **name**

**Return type**: void

**Reimplements**: [rename](interfaceModelCenter_1_1IComponent.md#interfaceModelCenter_1_1IComponent_1a9cae71e48e01e94d48c0353d3db4d90c)

<a id="interfaceModelCenter_1_1IIfComponent_1a9cbf40ea5229f4240bdb241e8d88329c"></a>

### Function getType

![](https://img.shields.io/badge/-public-brightgreen "public")

```
BSTR ModelCenter::IIfComponent::getType()

```

Gets the type of the component. Valid types include:

- Component
- Assembly
- Sequence
- If
- Parallel
- Empty
- ForEach

**Returns**:

The type of the component.

**Return type**: BSTR

**Reimplements**: [getType](interfaceModelCenter_1_1IComponent.md#interfaceModelCenter_1_1IComponent_1a04395c5a8d6ceff26ae08e6c001bdd45)

<a id="interfaceModelCenter_1_1IIfComponent_1a344fe33286c0d548dfb35b472cfcc1d6"></a>

### Function show

![](https://img.shields.io/badge/-public-brightgreen "public")

```
void ModelCenter::IIfComponent::show()

```

Show the GUI form associated with the component, if any.

**Return type**: void

**Reimplements**: [show](interfaceModelCenter_1_1IComponent.md#interfaceModelCenter_1_1IComponent_1aa35c0fb45f677b3c2daf475e53107773)

<a id="interfaceModelCenter_1_1IIfComponent_1a667215e89aa8d7b6ff584ce7c2a9e566"></a>

### Function getNumBranches

![](https://img.shields.io/badge/-public-brightgreen "public")

```
int ModelCenter::IIfComponent::getNumBranches()

```

Gets the number of branches.

**Returns**:

The number of branches.

**Return type**: int

<a id="interfaceModelCenter_1_1IIfComponent_1a0a01eb7fd3513f7754534c229ef4da08"></a>

### Function getBranchCondition

![](https://img.shields.io/badge/-public-brightgreen "public")

```
BSTR ModelCenter::IIfComponent::getBranchCondition(int index)

```

Gets the branch condition.

**Parameters**:

- **index**: Index of the branch.

**Returns**:

The branch condition.

**Parameters**:

- int **index**

**Return type**: BSTR

<a id="interfaceModelCenter_1_1IIfComponent_1af539f83e9e44adfccbff2968cfdb3f39"></a>

### Function setBranchCondition

![](https://img.shields.io/badge/-public-brightgreen "public")

```
void ModelCenter::IIfComponent::setBranchCondition(int index, BSTR condition)

```

Sets the branch condition.

**Parameters**:

- **index**: Index of the branch.
- **condition**: The new condition.

**Parameters**:

- int **index**
- BSTR **condition**

**Return type**: void

<a id="interfaceModelCenter_1_1IIfComponent_1acd033bea89f3ba1ec760d9ad2c47d0ed"></a>

### Function getBranchName

![](https://img.shields.io/badge/-public-brightgreen "public")

```
BSTR ModelCenter::IIfComponent::getBranchName(int index)

```

Returns the name of the branch.

**Parameters**:

- **index**: Index of the branch.

**Returns**:

The name of the branch.

**Parameters**:

- int **index**

**Return type**: BSTR

<a id="interfaceModelCenter_1_1IIfComponent_1afddf16459949f862d3329e2d6eb79bb2"></a>

### Function renameBranch

![](https://img.shields.io/badge/-public-brightgreen "public")

```
void ModelCenter::IIfComponent::renameBranch(int index, BSTR name)

```

Renames the branch to the given name.

**Parameters**:

- **index**: Index of the branch.
- **name**: New name of the branch.

**Parameters**:

- int **index**
- BSTR **name**

**Return type**: void