# Class CIM_PassThroughModule
extends CIM_LogicalModule

A device that is a replacement for physical cables and allows internal network physical ports in a chassis or rack to be made accessible from the external network. This may a fixed internal port to external port relationship, or a configurable mapping of internal ports to output ports via a cross-point switching function. The mapping between an internal and external port is modeled using the InternalPorts and ExternalPorts array properties. Corresponding array indices of the InternalPorts and ExternalPorts properties shall contain the port number of the internal port and external port, respectively in a mapping pair. Usage of this class is appropriate when modeling a simple n x n pass through module where the protocols supported by the module are not the target of management. Implementations wishing to enable management of the network function should instrument the appropriate device and network models. The tie into the device and network models is accomplished by correlating the port numbers in this class' internal and external port arrays with CIM_NetworkPort's PortNumber property. The following is an example of how this class could be used: For a given instance, the value of NumberOfPorts is 3. This indicates that there are 3 internal ports and 3 external ports. Internal port 2 is mapped to external port 3. Internal ports 1 and 3 are not mapped to an external port. External ports 1 and 2 are not mapped to internal ports. For this instance the length of the InternalPorts and ExternalPorts arrays shall both be one. The first array position in InternalPortshall contain the value 2. The first array position in ExternalPorts shall contain the value 3.

### Table of Contents
Hierarchy
Direct Known Subclasses
Class Qualifiers
Class Properties
Class Methods

## Class Hierarchy

CIM_ManagedElement
|
+--CIM_ManagedSystemElement
|
+--CIM_LogicalElement
|
+--CIM_EnabledLogicalElement
|
+--CIM_AllocatedLogicalElement
|
+--CIM_LogicalDevice
|
+--CIM_LogicalModule
|
+--CIM_PassThroughModule

## Direct Known Subclasses

## Class Qualifiers

Name | Data Type | Value
--- | --- | ---
Description | string | A device that is a replacement for physical cables and allows internal network physical ports in a chassis or rack to be made accessible from the external network. This may a fixed internal port to external port relationship, or a configurable mapping of internal ports to output ports via a cross-point switching function. The mapping between an internal and external port is modeled using the InternalPorts and ExternalPorts array properties. Corresponding array indices of the InternalPorts and ExternalPorts properties shall contain the port number of the internal port and external port, respectively in a mapping pair. Usage of this class is appropriate when modeling a simple n x n pass through module where the protocols supported by the module are not the target of management. Implementations wishing to enable management of the network function should instrument the appropriate device and network models. The tie into the device and network models is accomplished by correlating the port numbers in this class' internal and external port arrays with CIM_NetworkPort's PortNumber property. The following is an example of how this class could be used: For a given instance, the value of NumberOfPorts is 3. This indicates that there are 3 internal ports and 3 external ports. Internal port 2 is mapped to external port 3. Internal ports 1 and 3 are not mapped to an external port. External ports 1 and 2 are not mapped to internal ports. For this instance the length of the InternalPorts and ExternalPorts arrays shall both be one. The first array position in InternalPortshall contain the value 2. The first array position in ExternalPorts shall contain the value 3.
UMLPackagePath | string | CIM::Device::Controller
Version | string | 2.22.0

## Class Properties

### Local Class Properties

Name | Data Type | Default Value | Qualifiers
--- | --- | --- | ---
Name | Data Type | Value
IsProgrammable | boolean | false
Description | string | Boolean indicating if the port assignments on this switch are software programmable or not.
NumberOfPorts | uint16 |
Description | string | A PassThroughModule is a simple module with 1-1 correspondence between internal and external ports. This number represents the number of external ports. By virtue of there being a 1-1 correspondence of ports, it also represents the number of internal ports. The ports are numbered 1 through N.
ExternalPorts | uint16[] |
ArrayType | string | Indexed
Description | string | An indexed array containing the external ports. Corresponding internal ports are in the InternalPorts array. Only external ports which are mapped to an internal port shall appear in the array.
ModelCorrespondence | string | CIM_PassThroughModule.InternalPorts, CIM_NetworkPort.PortNumber
InternalPorts | uint16[] |
ArrayType | string | Indexed
Description | string | An indexed array containing the internal port numbers. Corresponding external ports are in the ExternalPorts array. Only internal ports which are mapped to an external port shall appear in the array.
ModelCorrespondence | string | CIM_PassThroughModule.ExternalPorts, CIM_NetworkPort.PortNumber
LinkTechnologies | uint16[] |
ArrayType | string | Indexed
Description | string | An enumeration of the link technologies that can be passed- through by this device. When set to 1 ("Other"), the property OtherLinkTechnologies contains string descriptions of the alternative link types.
ModelCorrespondence | string | CIM_PassThroughModule.OtherLinkTechnologies
ValueMap | string | 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12..32767, 32768..65535
Values | string | Unknown, Other, Ethernet, IB, FC, FDDI, ATM, Token Ring, Frame Relay, Infrared, BlueTooth, Wireless LAN, DMTF Reserved, Vendor Specified
OtherLinkTechnologies | string[] |
ArrayType | string | Indexed
Description | string | An array of string values describing the supported technologies when an entry in the LinkTechnologies array is set to 1, "Other".
ModelCorrespondence | string | CIM_PassThroughModule.LinkTechnologies

### Inherited Properties

Name | Data Type
--- | ---
AllocationState | string
Availability | uint16
Caption | string
CommunicationStatus | uint16
CreationClassName | string
Description | string
DetailedStatus | uint16
DeviceID | string
ElementName | string
EnabledDefault | uint16
EnabledState | uint16
ErrorCleared | boolean
ErrorDescription | string
Generation | uint64
HealthState | uint16
InstallDate | datetime
InstanceID | string
LastErrorCode | uint32
LocationIndicator | uint16
LogicalModuleType | uint16
MaxQuiesceTime | uint64
ModuleNumber | uint16
Name | string
OperatingStatus | uint16
OtherEnabledState | string
OtherLogicalModuleTypeDescription | string
PowerManagementSupported | boolean
PowerOnHours | uint64
PrimaryStatus | uint16
RequestedState | uint16
Status | string
StatusInfo | uint16
SystemCreationClassName | string
SystemName | string
TimeOfLastStateChange | datetime
TotalPowerOnHours | uint64
TransitioningToState | uint16
AdditionalAvailability | uint16[]
AvailableRequestedStates | uint16[]
IdentifyingDescriptions | string[]
OperationalStatus | uint16[]
OtherIdentifyingInfo | string[]
PowerManagementCapabilities | uint16[]
StatusDescriptions | string[]

## Class Methods

### Inherited Class Methods

Name | Return Type
--- | ---
EnableDevice | uint32
OnlineDevice | uint32
QuiesceDevice | uint32
RequestStateChange | uint32
Reset | uint32
RestoreProperties | uint32
SaveProperties | uint32
SetPowerState | uint32