wiki:WARPLab/Reference/Architecture/Classes

Version 12 (modified by chunter, 11 years ago) (diff)

--

  • TOC "WARPLab7/TOC" is empty!

MATLAB Classes

A typical WARPLab experiment script contains a collection of Node objects and a single Trigger object.

Attached to each Node is a number of different submodules: Baseband, Interface Group, Transport, Trigger Manager, and User Extension. Each of these modules are objects from different MATLAB classes. This document serves to explain each MATLAB class and what it is responsible for.

Node

A Node is an object of the wl_node class. The primary role of the node object is to broker commands to other modules within the node and collect responses to those commands to deliver back to the user. Furthermore, the methods within the wl_node class are able to deal with vector inputs of of multiple wl_node objects, allowing automatic iteration through the provided nodes to replicate a single command provided by the user script. Beyond being the access point for users to interact with all of the modules in a WARPLab node, the wl_node class processes a few node-level commands of its own (such as identify?-- a command to help users identify a particular node by blinking LEDs on the hardware).

Trigger

A Trigger is an object from the wl_trigger.m abstract class. Currently, the only class that subclasses from this abstract class is wl_trigger_eth_udp_broadcast.m. This is a simple class that contains an ID (provided by wl_trigger_IDs.m) and a method for sending the trigger through a broadcast Transport object.

Transport

Interface

Baseband

Trigger Manager

User Extension

Attachments (8)

Download all attachments as: .zip