org.eclipse.dawnsci.nexus.NXmonitor Maven / Gradle / Ivy
/*-
*******************************************************************************
* Copyright (c) 2015 Diamond Light Source Ltd.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* This file was auto-generated from the NXDL XML definition.
*******************************************************************************/
package org.eclipse.dawnsci.nexus;
import java.util.Date;
import java.util.Map;
import org.eclipse.dawnsci.analysis.api.tree.DataNode;
import org.eclipse.january.dataset.IDataset;
/**
* A monitor of incident beam data.
* It is similar to the :ref:`NXdata` groups containing
* monitor data and its associated dimension scale, e.g. time_of_flight or
* wavelength in pulsed neutron instruments. However, it may also include
* integrals, or scalar monitor counts, which are often used in both in both
* pulsed and steady-state instrumentation.
*
*/
public interface NXmonitor extends NXobject {
public static final String NX_MODE = "mode";
public static final String NX_START_TIME = "start_time";
public static final String NX_END_TIME = "end_time";
public static final String NX_PRESET = "preset";
public static final String NX_DISTANCE = "distance";
public static final String NX_RANGE = "range";
public static final String NX_NOMINAL = "nominal";
public static final String NX_INTEGRAL = "integral";
public static final String NX_TYPE = "type";
public static final String NX_TIME_OF_FLIGHT = "time_of_flight";
public static final String NX_EFFICIENCY = "efficiency";
public static final String NX_DATA = "data";
public static final String NX_SAMPLED_FRACTION = "sampled_fraction";
public static final String NX_COUNT_TIME = "count_time";
/**
* Count to a preset value based on either clock time (timer)
* or received monitor counts (monitor).
*
*
Enumeration:
* - monitor
* - timer
*
*
* @return the value.
*/
public IDataset getMode();
/**
* Count to a preset value based on either clock time (timer)
* or received monitor counts (monitor).
*
*
Enumeration:
* - monitor
* - timer
*
*
* @param mode the mode
*/
public DataNode setMode(IDataset mode);
/**
* Count to a preset value based on either clock time (timer)
* or received monitor counts (monitor).
*
*
Enumeration:
* - monitor
* - timer
*
*
* @return the value.
*/
public String getModeScalar();
/**
* Count to a preset value based on either clock time (timer)
* or received monitor counts (monitor).
*
*
Enumeration:
* - monitor
* - timer
*
*
* @param mode the mode
*/
public DataNode setModeScalar(String mode);
/**
* Starting time of measurement
*
* Type: NX_DATE_TIME
*
*
* @return the value.
*/
public IDataset getStart_time();
/**
* Starting time of measurement
*
* Type: NX_DATE_TIME
*
*
* @param start_time the start_time
*/
public DataNode setStart_time(IDataset start_time);
/**
* Starting time of measurement
*
* Type: NX_DATE_TIME
*
*
* @return the value.
*/
public Date getStart_timeScalar();
/**
* Starting time of measurement
*
* Type: NX_DATE_TIME
*
*
* @param start_time the start_time
*/
public DataNode setStart_timeScalar(Date start_time);
/**
* Ending time of measurement
*
* Type: NX_DATE_TIME
*
*
* @return the value.
*/
public IDataset getEnd_time();
/**
* Ending time of measurement
*
* Type: NX_DATE_TIME
*
*
* @param end_time the end_time
*/
public DataNode setEnd_time(IDataset end_time);
/**
* Ending time of measurement
*
* Type: NX_DATE_TIME
*
*
* @return the value.
*/
public Date getEnd_timeScalar();
/**
* Ending time of measurement
*
* Type: NX_DATE_TIME
*
*
* @param end_time the end_time
*/
public DataNode setEnd_timeScalar(Date end_time);
/**
* preset value for time or monitor
*
* Type: NX_NUMBER
* Units: NX_ANY
*
*
* @return the value.
*/
public IDataset getPreset();
/**
* preset value for time or monitor
*
* Type: NX_NUMBER
* Units: NX_ANY
*
*
* @param preset the preset
*/
public DataNode setPreset(IDataset preset);
/**
* preset value for time or monitor
*
* Type: NX_NUMBER
* Units: NX_ANY
*
*
* @return the value.
*/
public Number getPresetScalar();
/**
* preset value for time or monitor
*
* Type: NX_NUMBER
* Units: NX_ANY
*
*
* @param preset the preset
*/
public DataNode setPresetScalar(Number preset);
/**
* Distance of monitor from sample
*
* Type: NX_FLOAT
* Units: NX_LENGTH
*
*
* @return the value.
*/
public IDataset getDistance();
/**
* Distance of monitor from sample
*
* Type: NX_FLOAT
* Units: NX_LENGTH
*
*
* @param distance the distance
*/
public DataNode setDistance(IDataset distance);
/**
* Distance of monitor from sample
*
* Type: NX_FLOAT
* Units: NX_LENGTH
*
*
* @return the value.
*/
public Double getDistanceScalar();
/**
* Distance of monitor from sample
*
* Type: NX_FLOAT
* Units: NX_LENGTH
*
*
* @param distance the distance
*/
public DataNode setDistanceScalar(Double distance);
/**
* Range (X-axis, Time-of-flight, etc.) over which the integral was calculated
*
* Type: NX_FLOAT
* Units: NX_ANY
* Dimensions: 1: 2;
*
*
* @return the value.
*/
public IDataset getRange();
/**
* Range (X-axis, Time-of-flight, etc.) over which the integral was calculated
*
* Type: NX_FLOAT
* Units: NX_ANY
* Dimensions: 1: 2;
*
*
* @param range the range
*/
public DataNode setRange(IDataset range);
/**
* Range (X-axis, Time-of-flight, etc.) over which the integral was calculated
*
* Type: NX_FLOAT
* Units: NX_ANY
* Dimensions: 1: 2;
*
*
* @return the value.
*/
public Double getRangeScalar();
/**
* Range (X-axis, Time-of-flight, etc.) over which the integral was calculated
*
* Type: NX_FLOAT
* Units: NX_ANY
* Dimensions: 1: 2;
*
*
* @param range the range
*/
public DataNode setRangeScalar(Double range);
/**
* Nominal reading to be used for normalisation purposes.
*
* Type: NX_NUMBER
* Units: NX_ANY
*
*
* @return the value.
*/
public IDataset getNominal();
/**
* Nominal reading to be used for normalisation purposes.
*
* Type: NX_NUMBER
* Units: NX_ANY
*
*
* @param nominal the nominal
*/
public DataNode setNominal(IDataset nominal);
/**
* Nominal reading to be used for normalisation purposes.
*
* Type: NX_NUMBER
* Units: NX_ANY
*
*
* @return the value.
*/
public Number getNominalScalar();
/**
* Nominal reading to be used for normalisation purposes.
*
* Type: NX_NUMBER
* Units: NX_ANY
*
*
* @param nominal the nominal
*/
public DataNode setNominalScalar(Number nominal);
/**
* Total integral monitor counts
*
* Type: NX_NUMBER
* Units: NX_ANY
*
*
* @return the value.
*/
public IDataset getIntegral();
/**
* Total integral monitor counts
*
* Type: NX_NUMBER
* Units: NX_ANY
*
*
* @param integral the integral
*/
public DataNode setIntegral(IDataset integral);
/**
* Total integral monitor counts
*
* Type: NX_NUMBER
* Units: NX_ANY
*
*
* @return the value.
*/
public Number getIntegralScalar();
/**
* Total integral monitor counts
*
* Type: NX_NUMBER
* Units: NX_ANY
*
*
* @param integral the integral
*/
public DataNode setIntegralScalar(Number integral);
/**
* Time variation of monitor counts
*
* @return the value.
*/
public NXlog getIntegral_log();
/**
* Time variation of monitor counts
*
* @param integral_log the integral_log
*/
public void setIntegral_log(NXlog integral_log);
/**
*
*
Enumeration:
* - Fission Chamber
* - Scintillator
*
*
* @return the value.
*/
public IDataset getType();
/**
*
*
Enumeration:
* - Fission Chamber
* - Scintillator
*
*
* @param type the type
*/
public DataNode setType(IDataset type);
/**
*
*
Enumeration:
* - Fission Chamber
* - Scintillator
*
*
* @return the value.
*/
public String getTypeScalar();
/**
*
*
Enumeration:
* - Fission Chamber
* - Scintillator
*
*
* @param type the type
*/
public DataNode setTypeScalar(String type);
/**
* Time-of-flight
*
* Type: NX_FLOAT
* Units: NX_TIME_OF_FLIGHT
* Dimensions: 1: ;
*
*
* @return the value.
*/
public IDataset getTime_of_flight();
/**
* Time-of-flight
*
* Type: NX_FLOAT
* Units: NX_TIME_OF_FLIGHT
* Dimensions: 1: ;
*
*
* @param time_of_flight the time_of_flight
*/
public DataNode setTime_of_flight(IDataset time_of_flight);
/**
* Time-of-flight
*
* Type: NX_FLOAT
* Units: NX_TIME_OF_FLIGHT
* Dimensions: 1: ;
*
*
* @return the value.
*/
public Double getTime_of_flightScalar();
/**
* Time-of-flight
*
* Type: NX_FLOAT
* Units: NX_TIME_OF_FLIGHT
* Dimensions: 1: ;
*
*
* @param time_of_flight the time_of_flight
*/
public DataNode setTime_of_flightScalar(Double time_of_flight);
/**
* Monitor efficiency
*
* Type: NX_NUMBER
* Units: NX_DIMENSIONLESS
* Dimensions: 1: ;
*
*
* @return the value.
*/
public IDataset getEfficiency();
/**
* Monitor efficiency
*
* Type: NX_NUMBER
* Units: NX_DIMENSIONLESS
* Dimensions: 1: ;
*
*
* @param efficiency the efficiency
*/
public DataNode setEfficiency(IDataset efficiency);
/**
* Monitor efficiency
*
* Type: NX_NUMBER
* Units: NX_DIMENSIONLESS
* Dimensions: 1: ;
*
*
* @return the value.
*/
public Number getEfficiencyScalar();
/**
* Monitor efficiency
*
* Type: NX_NUMBER
* Units: NX_DIMENSIONLESS
* Dimensions: 1: ;
*
*
* @param efficiency the efficiency
*/
public DataNode setEfficiencyScalar(Number efficiency);
/**
* Monitor data
*
* Type: NX_NUMBER
* Units: NX_ANY
* Dimensions: 0: n;
*
*
* @return the value.
*/
public IDataset getData();
/**
* Monitor data
*
* Type: NX_NUMBER
* Units: NX_ANY
* Dimensions: 0: n;
*
*
* @param data the data
*/
public DataNode setData(IDataset data);
/**
* Monitor data
*
* Type: NX_NUMBER
* Units: NX_ANY
* Dimensions: 0: n;
*
*
* @return the value.
*/
public Number getDataScalar();
/**
* Monitor data
*
* Type: NX_NUMBER
* Units: NX_ANY
* Dimensions: 0: n;
*
*
* @param data the data
*/
public DataNode setDataScalar(Number data);
/**
* Proportion of incident beam sampled by the monitor (0
* Type: NX_FLOAT
* Units: NX_DIMENSIONLESS
*
*
* @return the value.
*/
public IDataset getSampled_fraction();
/**
* Proportion of incident beam sampled by the monitor (0
* Type: NX_FLOAT
* Units: NX_DIMENSIONLESS
*
*
* @param sampled_fraction the sampled_fraction
*/
public DataNode setSampled_fraction(IDataset sampled_fraction);
/**
* Proportion of incident beam sampled by the monitor (0
* Type: NX_FLOAT
* Units: NX_DIMENSIONLESS
*
*
* @return the value.
*/
public Double getSampled_fractionScalar();
/**
* Proportion of incident beam sampled by the monitor (0
* Type: NX_FLOAT
* Units: NX_DIMENSIONLESS
*
*
* @param sampled_fraction the sampled_fraction
*/
public DataNode setSampled_fractionScalar(Double sampled_fraction);
/**
* Geometry of the monitor
*
* @return the value.
*/
public NXgeometry getGeometry();
/**
* Geometry of the monitor
*
* @param geometry the geometry
*/
public void setGeometry(NXgeometry geometry);
/**
* Get a NXgeometry node by name:
*
* -
* Geometry of the monitor
*
*
* @param name the name of the node.
* @return a map from node names to the NXgeometry for that node.
*/
public NXgeometry getGeometry(String name);
/**
* Set a NXgeometry node by name:
*
* -
* Geometry of the monitor
*
*
* @param name the name of the node
* @param geometry the value to set
*/
public void setGeometry(String name, NXgeometry geometry);
/**
* Get all NXgeometry nodes:
*
* -
* Geometry of the monitor
*
*
* @return a map from node names to the NXgeometry for that node.
*/
public Map getAllGeometry();
/**
* Set multiple child nodes of a particular type.
*
* -
* Geometry of the monitor
*
*
* @param geometry the child nodes to add
*/
public void setAllGeometry(Map geometry);
/**
* Elapsed actual counting time, can be an array of size ``np``
* when scanning. This is not the difference of the calendar time
* but the time the instrument was really counting, without
* pauses or times lost due beam unavailability
*
* Type: NX_FLOAT
* Units: NX_TIME
*
*
* @return the value.
*/
public IDataset getCount_time();
/**
* Elapsed actual counting time, can be an array of size ``np``
* when scanning. This is not the difference of the calendar time
* but the time the instrument was really counting, without
* pauses or times lost due beam unavailability
*
* Type: NX_FLOAT
* Units: NX_TIME
*
*
* @param count_time the count_time
*/
public DataNode setCount_time(IDataset count_time);
/**
* Elapsed actual counting time, can be an array of size ``np``
* when scanning. This is not the difference of the calendar time
* but the time the instrument was really counting, without
* pauses or times lost due beam unavailability
*
* Type: NX_FLOAT
* Units: NX_TIME
*
*
* @return the value.
*/
public Double getCount_timeScalar();
/**
* Elapsed actual counting time, can be an array of size ``np``
* when scanning. This is not the difference of the calendar time
* but the time the instrument was really counting, without
* pauses or times lost due beam unavailability
*
* Type: NX_FLOAT
* Units: NX_TIME
*
*
* @param count_time the count_time
*/
public DataNode setCount_timeScalar(Double count_time);
}