BNMR: Custom pages

From DaqWiki
Revision as of 17:25, 17 November 2016 by en>Suz
Jump to navigation Jump to search

Links

Purpose

BNMR Custom pages are written specifically for the bnmr and bnqr experiments to enable to users to control the experiments more easily.

Introduction

MIDAS experiments run the web server [mhttpd] which allows users to control and communicate with their experiments using a standard web browser (e.g. Firefox).

Complicated experiments such as bnmr and bnqr involve a large number of ODB parameters in various directories that have to be setup in order to control the experiment. Navigating these parameters using the standard MIDAS ODB page can become complicated and time-consuming. For this reason, custom pages specific to an experiment are often written to present relevant parameters for the experiment in a more user-friendly way, and to display information specific to that experiment. The custom pages written for the bnmr and bnqr experiments are written in HTML and Javascript.

Custom pages

Some of the custom pages written for the bnmr and bnqr experiments include:

In order for mhttpd to display custom pages, the custom page files must be listed in the /Custom ODB tree. See keys in /Custom tree for details.

Location of code

All custom page code is located in directory ~bn[mq]r/online/custom (see Nomenclature).

All pages includes the MIDAS Javascript library (mhttpd.js). The custom pages use the mjson rpc asynchronous functions to access the ODB. Most custom pages also include the MIDAS stylesheet, in addition to local style sheets created for the bnmr and bnqr experiments.

The following table lists the source filenames for the custom pages :

Table 1 : Custom Page Source code files
Custom Page HTML Javascript Stylesheet
Custom Status Custom_Status.html cs_functions.js common.css, bn[mq]r.css *
Parameters parameters.html parameter_functions.js, params_common.js,
parameters_tunes.js, tunes_descriptions.js
mhttpd.css, common.css, bn[mq]r.css
Compare Tunes compare_tunes.html params_common.js, tune_descriptions.js, tunes_descriptions.js common.css, bn[mq]r.css
Mode 20 setup slider20.html Note: This page requires the standard jquery, nouislider, wnumb libraries. common.css, bn[mq]r.css