All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.eclipse.dawnsci.nexus.NXevent_data 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 org.eclipse.dawnsci.analysis.api.tree.DataNode;
import org.eclipse.january.dataset.IDataset;

/**
 * NXevent_data is a special group for storing data from neutron
 * detectors in event mode. In this mode, the detector electronics
 * emits a stream of detectorID, timestamp pairs. With detectorID
 * describing the detector element in which the neutron was detected
 * and timestamp the timestamp at which the neutron event was
 * detected. In NeXus detectorID maps to event_id, event_time_offset
 * to the timestamp.
 * As this kind of data is common at pulsed neutron
 * sources, the timestamp is almost always relative to the start of a
 * neutron pulse. Thus the pulse timestamp is recorded too together
 * with an index in the event_id, event_time_offset pair at which data for
 * that pulse starts. At reactor source the same pulsed data effect
 * may be achieved through the use of choppers or in stroboscopic
 * measurement setups.
 * In order to make random access to timestamped data
 * faster there is an optional array pair of
 * cue_timestamp_zero and cue_index. The cue_timestamp_zero will
 * contain courser timestamps then in the time array, say
 * every five minutes. The cue_index will then contain the
 * index into the event_id,event_time_offset pair of arrays for that
 * courser cue_timestamp_zero.
 * 
 */
public interface NXevent_data extends NXobject {

	public static final String NX_EVENT_TIME_OFFSET = "event_time_offset";
	public static final String NX_EVENT_ID = "event_id";
	public static final String NX_EVENT_TIME_ZERO = "event_time_zero";
	public static final String NX_EVENT_TIME_ZERO_ATTRIBUTE_OFFSET = "offset";
	public static final String NX_EVENT_INDEX = "event_index";
	public static final String NX_PULSE_HEIGHT = "pulse_height";
	public static final String NX_CUE_TIMESTAMP_ZERO = "cue_timestamp_zero";
	public static final String NX_CUE_TIMESTAMP_ZERO_ATTRIBUTE_START = "start";
	public static final String NX_CUE_INDEX = "cue_index";
	/**
	 * A list of timestamps for each event as it comes in.
	 * 

* Type: NX_NUMBER * Units: NX_TIME_OF_FLIGHT * Dimensions: 1: i; *

* * @return the value. */ public IDataset getEvent_time_offset(); /** * A list of timestamps for each event as it comes in. *

* Type: NX_NUMBER * Units: NX_TIME_OF_FLIGHT * Dimensions: 1: i; *

* * @param event_time_offset the event_time_offset */ public DataNode setEvent_time_offset(IDataset event_time_offset); /** * A list of timestamps for each event as it comes in. *

* Type: NX_NUMBER * Units: NX_TIME_OF_FLIGHT * Dimensions: 1: i; *

* * @return the value. */ public Number getEvent_time_offsetScalar(); /** * A list of timestamps for each event as it comes in. *

* Type: NX_NUMBER * Units: NX_TIME_OF_FLIGHT * Dimensions: 1: i; *

* * @param event_time_offset the event_time_offset */ public DataNode setEvent_time_offsetScalar(Number event_time_offset); /** * There will be extra information in the NXdetector to convert * event_id to detector_number. *

* Type: NX_INT * Units: NX_DIMENSIONLESS * Dimensions: 1: i; *

* * @return the value. */ public IDataset getEvent_id(); /** * There will be extra information in the NXdetector to convert * event_id to detector_number. *

* Type: NX_INT * Units: NX_DIMENSIONLESS * Dimensions: 1: i; *

* * @param event_id the event_id */ public DataNode setEvent_id(IDataset event_id); /** * There will be extra information in the NXdetector to convert * event_id to detector_number. *

* Type: NX_INT * Units: NX_DIMENSIONLESS * Dimensions: 1: i; *

* * @return the value. */ public Long getEvent_idScalar(); /** * There will be extra information in the NXdetector to convert * event_id to detector_number. *

* Type: NX_INT * Units: NX_DIMENSIONLESS * Dimensions: 1: i; *

* * @param event_id the event_id */ public DataNode setEvent_idScalar(Long event_id); /** * The time that each pulse started with respect to the offset *

* Type: NX_NUMBER * Units: NX_TIME * Dimensions: 1: j; *

* * @return the value. */ public IDataset getEvent_time_zero(); /** * The time that each pulse started with respect to the offset *

* Type: NX_NUMBER * Units: NX_TIME * Dimensions: 1: j; *

* * @param event_time_zero the event_time_zero */ public DataNode setEvent_time_zero(IDataset event_time_zero); /** * The time that each pulse started with respect to the offset *

* Type: NX_NUMBER * Units: NX_TIME * Dimensions: 1: j; *

* * @return the value. */ public Number getEvent_time_zeroScalar(); /** * The time that each pulse started with respect to the offset *

* Type: NX_NUMBER * Units: NX_TIME * Dimensions: 1: j; *

* * @param event_time_zero the event_time_zero */ public DataNode setEvent_time_zeroScalar(Number event_time_zero); /** * ISO8601 * * @return the value. */ public Date getEvent_time_zeroAttributeOffset(); /** * ISO8601 * * @param offset the offset */ public void setEvent_time_zeroAttributeOffset(Date offset); /** * The index into the event_time_offset, event_id pair for * the pulse occurring at the matching entry in event_time_zero. *

* Type: NX_INT * Units: NX_DIMENSIONLESS * Dimensions: 1: j; *

* * @return the value. */ public IDataset getEvent_index(); /** * The index into the event_time_offset, event_id pair for * the pulse occurring at the matching entry in event_time_zero. *

* Type: NX_INT * Units: NX_DIMENSIONLESS * Dimensions: 1: j; *

* * @param event_index the event_index */ public DataNode setEvent_index(IDataset event_index); /** * The index into the event_time_offset, event_id pair for * the pulse occurring at the matching entry in event_time_zero. *

* Type: NX_INT * Units: NX_DIMENSIONLESS * Dimensions: 1: j; *

* * @return the value. */ public Long getEvent_indexScalar(); /** * The index into the event_time_offset, event_id pair for * the pulse occurring at the matching entry in event_time_zero. *

* Type: NX_INT * Units: NX_DIMENSIONLESS * Dimensions: 1: j; *

* * @param event_index the event_index */ public DataNode setEvent_indexScalar(Long event_index); /** * If voltages from the ends of the detector are read out this * is where they go. This list is for all events with information * to attach to a particular pulse height. The information to * attach to a particular pulse is located in events_per_pulse. *

* Type: NX_FLOAT * Units: NX_DIMENSIONLESS * Dimensions: 1: i; 2: k; *

* * @return the value. */ public IDataset getPulse_height(); /** * If voltages from the ends of the detector are read out this * is where they go. This list is for all events with information * to attach to a particular pulse height. The information to * attach to a particular pulse is located in events_per_pulse. *

* Type: NX_FLOAT * Units: NX_DIMENSIONLESS * Dimensions: 1: i; 2: k; *

* * @param pulse_height the pulse_height */ public DataNode setPulse_height(IDataset pulse_height); /** * If voltages from the ends of the detector are read out this * is where they go. This list is for all events with information * to attach to a particular pulse height. The information to * attach to a particular pulse is located in events_per_pulse. *

* Type: NX_FLOAT * Units: NX_DIMENSIONLESS * Dimensions: 1: i; 2: k; *

* * @return the value. */ public Double getPulse_heightScalar(); /** * If voltages from the ends of the detector are read out this * is where they go. This list is for all events with information * to attach to a particular pulse height. The information to * attach to a particular pulse is located in events_per_pulse. *

* Type: NX_FLOAT * Units: NX_DIMENSIONLESS * Dimensions: 1: i; 2: k; *

* * @param pulse_height the pulse_height */ public DataNode setPulse_heightScalar(Double pulse_height); /** * Timestamps matching the corresponding cue_index into the * event_id, event_time_offset pair. *

* Type: NX_DATE_TIME * Units: NX_TIME *

* * @return the value. */ public IDataset getCue_timestamp_zero(); /** * Timestamps matching the corresponding cue_index into the * event_id, event_time_offset pair. *

* Type: NX_DATE_TIME * Units: NX_TIME *

* * @param cue_timestamp_zero the cue_timestamp_zero */ public DataNode setCue_timestamp_zero(IDataset cue_timestamp_zero); /** * Timestamps matching the corresponding cue_index into the * event_id, event_time_offset pair. *

* Type: NX_DATE_TIME * Units: NX_TIME *

* * @return the value. */ public Date getCue_timestamp_zeroScalar(); /** * Timestamps matching the corresponding cue_index into the * event_id, event_time_offset pair. *

* Type: NX_DATE_TIME * Units: NX_TIME *

* * @param cue_timestamp_zero the cue_timestamp_zero */ public DataNode setCue_timestamp_zeroScalar(Date cue_timestamp_zero); /** * * @return the value. */ public Date getCue_timestamp_zeroAttributeStart(); /** * * @param start the start */ public void setCue_timestamp_zeroAttributeStart(Date start); /** * Index into the event_id, event_time_offset pair matching the corresponding * cue_timestamp. *

* Type: NX_INT *

* * @return the value. */ public IDataset getCue_index(); /** * Index into the event_id, event_time_offset pair matching the corresponding * cue_timestamp. *

* Type: NX_INT *

* * @param cue_index the cue_index */ public DataNode setCue_index(IDataset cue_index); /** * Index into the event_id, event_time_offset pair matching the corresponding * cue_timestamp. *

* Type: NX_INT *

* * @return the value. */ public Long getCue_indexScalar(); /** * Index into the event_id, event_time_offset pair matching the corresponding * cue_timestamp. *

* Type: NX_INT *

* * @param cue_index the cue_index */ public DataNode setCue_indexScalar(Long cue_index); }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy