Online Mind Mapping and Brainstorming

Create your own awesome maps

Online Mind Mapping and Brainstorming

Even on the go

with our free apps for iPhone, iPad and Android

Get Started

Already have an account? Log In

x.2: Object Organisation and Classification by Mind Map: x.2: Object Organisation and Classification
5.0 stars - 1 reviews range from 0 to 5

x.2: Object Organisation and Classification

The BEC program, x version 2. This documents the organisation and classification of objects and computer files used within x.2. A description of the objects and basic information of their role is given, though this document does not describe the full architecture of x.2. Once complete, links to further documentation will be provided, specifying the programs architecture, and a full list and description of object methods currently used.  


Backend objects are hidden from the user. They do all the work behind the scenes required by the user or other parts of the program. The backend objects have been organised into three groups. 1) Controllers, which receive events from the frontend and control what action should be taken. 2) Hardware interfaces, which communicate with the various types of hardware connected to the computer, for example a PXI card or a camera. These hardware objects are called directly by the controllers. And finally, 3) Tools, which are all the other bits of the program, the glue that holds it together.


Controllers receive events from the frontend and control what action should be taken. They directly control the hardware interfaces, and control the flow of information to and from the user interfaces.  

Hardware interfaces

These classes represent devices connected to the computer. They provide an interface through which the x program, or any program, can communicate with that external hardware. Currently, there are three types or hardware provided for. 1) Analog Output devices 2) Digital Output devices 3) Camera devices. For these three types of device an abstraction layer is provided which enables hardware with different drivers to be integrated under a common interface. These interfaces and their implementation classes, called in the Channels section. (Apart from the AndorIkonTempController which is under the heading Controllers, since it is an implementation of the abstract controller class CameraTempController.)



User interfaces. Users interfaces are for displaying and manipulating the relevant parameters of a device, or group of devices. They do not interact directly with the backend. They communicate with a backend controller via various kinds of LabView Events.

Experiment Runner

Operates the experiment by running scripts, and changing the current output state of the hardware connected to the computer. It sends and receives labview events (HWControllerEvents) to the backend controller, which performs the actually work of compiling scripts, and manipulating the hardware interfaces. Thus this object, the Experiment Runner, has no idea who it is sending messages to, or who is replying to those messages. Therefore, complete isolation between the backend hardware, and the frontend user interface is achieved. Hence any changes to the backend do not affect the frontend, and visa versa.


User interfaces concerning the cameras used by the BEC experiment.