Programming the ibtrainer, Packet handling concept, Programming the ib trainer – Teledyne LeCroy Automation API for IBTrainer Software Ver.2.0 User Manual

Page 11

Advertising
background image

CATC IBTrainer InfiniBand Exerciser API Reference

1-1

Programming the IBTrainer

This chapter briefly explains the basic ideas behind the programming
model of the IB

Trainer

. The concept is explained for the C++ interface.

The TCL interface is built in a similar way.

The main programming interface to the IB

Trainer

is based on the C++

programming language. This C++ interface can also be accessed from a
TCL shell to provide the capabilities of a script language. The TCL
commands are completely based on the C++ calls. Both interfaces can
be used to integrate the IB

Trainer

into various test environments and

third party test software.

Packet Handling Concept

For every IB

Trainer

InfiniBand generator in use, you need to create one

instance of the class IGCGenerator. This class provides all the necessary
functions to interact with the generator. It also provides the entire
status information and controls the InfiniBand link. The InfiniBand
portinfo

struct is managed here too.

For every IB

Trainer

generator that is connected, there can be only one

controlling generator object. However, you are free to create as many
generator objects as there are devices connected to the controlling PC.
By default, a newly created generator class is in off-line mode. It needs
to get connected to a real device before it can provide all of its
functionality.

Basically, every class with property values has the methods Set and Get
to allow it to write and read these properties respectively. Enum values
belonging to the appropriate class identify the properties. For a detailed

Advertising