Package gda.device

Interface Device

All Superinterfaces:
Configurable, Findable, gda.observable.IObservable
All Known Subinterfaces:
Adc, AlignmentStage, AmplifierAutoGain, Analyser, AperturePositioner, Assembly, AsynchronousDetector, Beamline, BimorphMirrorController, BPM, BufferedDetector, Camera, Camera, CoboldDetector, ConstantVelocityMoveController, ConstantVelocityMoveController2, ConstantVelocityRasterMoveController, ContinuouslyScannable, ContinuouslyScannableViaController, ContinuousMoveController, ControlPoint, CounterTimer, CurrentAmplifier, DataLogger, Detector, Detector, DetectorMonitorDataProviderInterface, DetectorService, DetectorServiceManager, Diffractometer, DigitalIO, EdeDetector, EditableEnumPositioner, EndStation, EndStationService, EndStationServiceManager, EnumPositioner, EpicsAreaDetector, EpicsMcsSis3820, EtlDetector, ExternalRobot, FilterArray, Formulatrix, FrelonDetector, GdaService, Gonio, Gpib, HardwareTriggerableDetector, HardwareTriggeredDetector, HardwareTriggeredNexusXmap, HardwareTriggerProvider, IAirBearingScannableMotor, IAravisCamera, IAreaDetectorPilatus, IDitherScanningElectronAnalyser, IDitherScanningElectronAnalyserWithDeflector, IEDXDElement, IElectronAnalyser, IEpicsChannel, IEpicsMCA, IEpicsMCASimple, IHaveExtraNames, IInsertionDevicePhaseControl, IJActorSampleChanger, IMbsAnalyser, IMythenDetector, INcdSubDetector, InternalRobot, IPCODetector, IPilatusDetector, IPixiumDetector, IScannableGroup, IScannableGroupNamed, IScannableMotor, IScannableMotorObservable, ISpin, ITweakableScannableMotor, IVGScientaAnalyserRMI, IXesEnergyScannable, IXesSpectrometerScannable, Mar345, Memory, Monitor, Motor, MXCameraInterface, Mythen, NamedEnumPositioner, NcdDetector, NexusDetector, NXPluginDetector, ODCCD, OdinEigerDetector, PCO4000, Pilatus, PlateController, PlateLoader, PlotServerDevice, Robot, SampleChanger, SampleEnvironment, SampleHandler, SampleHandlingService, SampleMovementServiceManager, SamplePlateMover, Scannable, ScannableMotion, ScannableMotionUnits, Serial, ShutterController, ShutteredMotorController, SimpleArray, SimulatedBufferedDetector, SimulatedContinuouslyScannable, StanfordAmplifier, StripDetector, Syringe, SyringePumpController, Temperature, Timer, TrajectoryMoveController, VariableCollectionTimeDetector, XCHIPDetector, XmapController, XmapDetector, Xspress3, Xspress3Mini, XspressDetector, XspressFluorescenceDetector
All Known Implementing Classes:
_PlateEventProvider, AbsorptionCoefficient, AbstractKeithley2600Series, AbstractKeithley6400Series, AbstractPlateController, AbstractPlateLoader, AbstractScanHook, AbstractWriteRegionsImmediatelyNXDetector, AceApdDetector, ActorSampleChanger, ADCameraDetector, ADCameraDetector, AdcMonitor, ADCMonitor, ADDetector, AdDetectorExtRoiDraw, ADPco, ADPilatus, AgilentWaveform, AirBearingScannableMotor, AlignmentStageScannable, AnalyserBase, AndorZylaDetector, Apple2IDBase, Apple2IDDummy, Apple2IDEpics, Apple2IDGapPolar, Apple2IDGapPolarPos, Apple2IDScannableBase, AravisCamera, AreaDetectorLiveViewImpl, AreaDetectorPilatusBase, AsciiFileProcessor, AsciiReaderDetector, AsciiReaderScannable, AssemblyAdapter, AssemblyBase, B18EnergyScannable, BaseChipRegScannable, BeamDimensions, BeamlineConditionMonitorBase, BeamlineWavelength, BeamMonitor, BeamMonitor, BeamSize, BeforeAfterScannable, BeforeAfterScannables, BeforeCheckScannable, BimorphMirrorScannable, BioSAXSSampleChanger, BPMBase, BSSCScannable, BufferedEdeDetector, BufferedNXDetector, BufferedPandaDetector, BufferedScaler, BufferedScannablePositions, CaenelsBimorph, CalibratedAmplifier, CallableTfgScalerWithLogValues, CallableTfgXmap, CallableTfgXspress2, CallableXmap, Cam4Detector, CameraBase, CameraXYScannable, CamZoomPositioner, Canberra35, CheckingScannable, ChipRegAnperScannable, CircHklScannable, ClientFileAnnouncer, CoboldTDC, CombinedManipulator, ConicHklScannable, ConicIndexScannable, ConicThScannable, ContinuousScannable, ControllerScannable, ConvertorScannable, CoordinatedScannableGroup, CounterTimerBase, CoupledScannable, CryoController, Crystal1PitchScannable, CurrentAmplifierBase, CurrentSamplePosition, CVScan, CVScan, DAServer, DAServerStatusChecker, DataReductionScannable, DatasetNexusDetector, DataSocketDetector, DeferredAndTrajectoryScannableGroup, DeferredScannable, DeferredScannableGroup, DetectorArm, DetectorBase, DetectorBase, DetectorDistance, DetectorFillingMonitorScannable, DetectorMonitorDataProvider, DetectorProxy, DetectorServiceManagerBase, DetectorServiceManagerWrapper, DeviceBase, Diffractometer, DiffractometerBase, DoorLatchState, DoseCalculator, DummyAdc, DummyAreaDetectorPilatus, DummyBimorphMirrorController, DummyBioSAXSSampleChanger, DummyBPM, DummyBufferedDetector, DummyCamera, DummyCoboldTDC, DummyConstantVelocityRasterScannable, DummyContinuouslyScannable, DummyControlPoint, DummyCounterTimer, DummyCurrentAmplifier, DummyDAServer, DummyDAServerStatusChecker, DummyDetector, DummyDetector, DummyEnumPositioner, DummyEpicsCurrAmpSingle, DummyEpicsLakeshore336, DummyEpicsMcaForXmap, DummyEpicsMonitor, DummyEpicsMonitorDouble, DummyEtlDetector, DummyExternalRobot, DummyFilterArray, DummyFormulatrix, DummyGonio, DummyGonioProtection, DummyGpib, DummyHardwareTriggerableAreaDetector, DummyHardwareTriggerableDetector, DummyHardwareTriggerableDetectorBase, DummyHardwareTriggerableSimpleDetector, DummyHardwareTriggeredDetector, DummyHardwareTriggeredNexusXmap, DummyHardwareTriggerProvider, DummyImageCreator, DummyInternalRobot, DummyJActorSampleChanger, DummyJCameramanSampleChanger, DummyKeithley2600AverageMode, DummyKeithley2600Series, DummyKeithley2600SweepMode, DummyKeithley6487, DummyLakeshore340Controller, DummyLakeshoreScannable, DummyMandelbrotMappingDetector, DummyMonitor, DummyMotor, DummyMultiFieldUnitsScannable, DummyMultiFilterAttenuator, DummyMXTrigger, DummyNamedEnumPositioner, DummyNewportVMCController, DummyNexusDetector, DummyNXDetector, DummyOdinEigerDetectorImpl, DummyOpticalCamera, DummyPersistentEnumScannable, DummyPersistentNamedEnumPositioner, DummyPersistentScannable, DummyPersistentUnitsScannable, DummyPilatus, DummyQbpm, DummyRealPositionReader, DummySampleChanger, DummySampleWheel, DummyScalarChannelDetector, DummyScannable, DummyScannableFieldScannableMotion, DummyScannableMotor, DummySerialDevice, DummySpinner, DummyStanfordScannable, DummySyringePumpController, DummyTemp, DummyTemperature, DummyTfg, DummyTopupScannable, DummyTrajectoryMoveController, DummyUnitsScannable, DummyValve, DummyXmapBufferedDetector, DummyXmapController, DummyXmapControllerAreaDetector, DummyXmapControllerBase, DummyXmapEDXDMappingController, DummyXspress3Detector, DummyXspress3MiniDetector, DummyXStripDAServer, EdeDetectorBase, EdeDummyDetector, EdeFrelon, EditableEnumPositionerBase, EDXD, EDXDController, EDXDControllerQMap, EDXDElement, EDXDMappingController, EDXDMappingElement, EH2ShutterControl, EigerThresholdScannable, EncoderCounter, EndStationBase, EndstationPhotonEnergyProvider, EndStationServiceManagerBase, EndStationServiceManagerWrapper, EnergyMonitor, EnergyScannable, EnergyScannable, EnumPositionerBase, EpicsADC, EpicsAirBearingControl, EpicsAreaDetectorPilatus, EpicsBeamMonitor, EpicsBekhoffAdc, EpicsBpmController, EpicsControlPoint, EpicsControlPointWithStatus, EpicsCurrAmpGain, EpicsCurrAmpQuadController, EpicsCurrAmpSingle, EpicsCVScan, EpicsCVScanController, EpicsDetector, EpicsDevice, EpicsDlsMcsSis3820Controller, EpicsDouble, EpicsDummyXmapController, EpicsEditablePositionerCallback, EpicsEnumPositioner, EpicsETLController, EpicsEurotherm2kController, EpicsEurotherm903, EpicsExternalRobot, EpicsFemtoAmplifier, EpicsFemtoWithBekhoffAdc, EpicsFormulatrix, EpicsGonio, EpicsGonioProtection, EpicsInternalRobot, EpicsLakeshore336, EpicsLakeshore340Controller, EpicsLimitBasedPositioner, EpicsLocum4Controller, EpicsMCA, EpicsMCA2, EpicsMcaController, EpicsMCACounterTimer, EpicsMCASimple, EpicsMonitor, EpicsMotor, EpicsMotorDecorator, EpicsMotorDirect, EpicsMultiChannelScaler, EpicsOdinEigerDetectorImpl, EpicsPilatus, EpicsPneumaticCallback, EpicsPositioner, EpicsPositionerCallback, EpicsQbpm, EpicsReadyMotor, EpicsRecord, EpicsScaler, EpicsScalerSimple, EpicsScanData, EpicsScannable, EpicsSimpleArray, EpicsSimpleBinary, EpicsSimpleMbbinary, EpicsSimplePneumatic, EpicsSimplePositioner, EpicsStanfordAmplifer, EpicsSyringePumpController, EpicsTca, EpicsTypedMonitor, EpicsValve, EpicsValveCallback, EpicsXmapController, EpicsXmapControllerROI, Etfg, EtherCATSignal, ETLDetector, Eurotherm, Eurotherm2K, ExafsScannable, ExperimentShutterController, ExternalSourceWrapper, FastAttenuatorFilters, FastAttenuatorScannable, FeedbackControlledEpicsMotor, FilterArrayBase, FindableEpicsDevice, FrameIndexer, GainModeScannable, GainWithScalingAndOffset, GantryPositioner, GapControlCheckingEnergyController, GasInjectionScannable, GasInjectionScannable, GasInjectionScannablePumpOn, GdaLakeshore340, GdaServiceBase, GdaServiceProxy, GdaServicesBase, Gdhist, GdhistTimes, Gdscaler, GeFanuc110BLADC, GonioBase, GpibBase, HardwareTriggerableADDetector, HardwareTriggerableDetectorBase, HardwareTriggeredNexusXmapImpl, HardwareTriggeredNXDetector, HardwareTriggeredNXDetectorWithReadoutTime, HardwareTriggeredNXDetectorWithReadoutTimeAndVariableCollectionTime, HardwareTriggeredXspress3Detector, HidenRGAScannable, HklScannable, I05Apple, I11Robot, I18SampleFocusScannable, I19BeamlineHealthScannable, I21Detector, I23FluoScanEnergyControllerWrapper, IdealBaseX, IDPhaseController, IntegerMapperBasedEnumPositioner, IntransparentLogFilePathProvider, IonChamberBeamMonitor, IPPserver, JActorSampleChanger, JEPScannable, JohannSpectrometer, JythonEnumPositionerWrapper, JythonScannableWrapper, Keithley2600Series, Keithley2600SeriesAverageMode, Keithley2600SeriesSweepMode, Keithley6487, Keyence, KeyenceLightScannable, Lakeshore340Scannable, Lakeshore340With4Outputs, LakeshoreScannable, LakeshoreScannable, Lauda, LineRepeatingBeamMonitor, LinkamCI, LinkamT95, Ln2Scannable, LoadFramesTimerHook, MapperBasedEnumPositionerBase, Marlow, MaskScannable, MbsAnalyser, ME2Positioner, MecaRobotMover, MecaSampleHolderControl, MerlinDetector, MetadataBlaster, MetashopDataScannable, MiniKappaGoniometerScannableGroup, MirrorCoating, MirrorCommissioningDetector, MirrorInOut, MjpegDetector, MonitorBase, MonitorZebraAndMoveScannable, MonoCoolScannable, MonoMoveWithOffsetScannable, MotomanRobotScannableGroup, MotorBase, MotorIocDecorator, MoveableImageDetector, MultiFilterAttenuator, MultiPVScannable, MXCamera, MXOmegaMaxVelocity, MxOpticalCamera, MxOpticalCameraBase, MxOpticalCameraNoZoom, MxOpticalCameraZoomPositioner, MXShutter, MXTrigger, MythenDetector, MythenDetectorImpl, MythenNexusImpl, NameMappedEpicsPneumaticCallback, NcdDetectorSystem, NcdEigerDetector, NcdPilatusAD, NcdPilatusADP2, NcdPressureCell, NcdScalerDetector, NcdSubDetector, NcdTetrammDetector, NcdTimesDetector, NcdWireDetector, NcdXmapDetector, NewportVMCController, NextSamplePosition, NexusDetectorProcessor, NexusXmap, NXDetector, NXDetectorSnappingDecorator, ObservablePathConstructor, ODCCDController, OdinDetector, OdinDetectorControllerEpics, OdinDetectorDecorator, OdinDetectorEiger, OdinDetectorEigerThresholdScan, OdinDetectorExcalibur, OdinEigerDetectorImpl, OfflineCoboldTDC, OscarSampleChanger, OxfordCryostream700, OxfordDanfysikQBPM, P2RZebraConstantVelMoveController, PandaDetector, ParametrisedHklScannable, PassthroughDetectorWrapper, PassthroughScannableDecorator, PassthroughScannableMotionUnitsDecorator, PCO4000, PCODetector, PersistentAperturePositioner, PersistentEpicsAperturePositioner, PIE725ConstantVelocityRasterScannable, PIE725ConstantVelocityRasterScannable3Axis, PiezoEpicsMotor, PixiumNXDetector, PlateControllerAdapter, PlateLoaderAdapter, PlateSampleChangerBase, PlotServerBase, PolarisationScannable, PositionerDeterminedScannable, PositionStreamingTfgScaler, PowerSupplyScannable, PressureCell, ProcessingScannable, PulseTube, PulseTubeMeta, PVConditionMonitorBase, PVScannable, PVStringScannable, QexafsFFoverIO, QexafsGMSDOverI0, QexafsScannable, QexafsTestingScannable, QueuedScriptDrivenScannableMotionUnits, ReadbackDemandDifference, RemainingScanTimeEstimator, RestrictedScannableManager.RestrictedScannable, RingCurrentMonitor, RobotNX100Controller, RobotSampleState, RoiExtractor, RotatedXyScannable, RotationAxisXScannable, SampleChangerBase, SampleChangerStateMonitor, SampleMoveable, SampleMovementServiceManagerBase, SamplePlateEnumPositioner, SamplePlateMoverBase, SampleStage, SampleWheel, SampleXYZAxis, ScaledScannable, Scaler, ScanDataListenerScannable, ScanEventHandlerScannable, ScannableAttenuatorWedge, ScannableBase, ScannableGaussian, ScannableGaussian, ScannableGroup, ScannableGroupNamed, ScannableGroupSinglePosition, ScannableMotionBase, ScannableMotionUnitsBase, ScannableMotionUnitsObservableWrapper, ScannableMotionWithScannableFieldsBase, ScannableMotionWithScannableFieldsBase.ScannableField, ScannableMotor, ScannableRotatingGonio, ScannableSine, ScanResetDummyUnitScannable, ScriptAdapter, ScriptDrivenScannableMotionUnits, SequentialScannable, SerialBase, SerialComm, SerialController, SesoXbpmDetector, ShutterChecker, ShutterControlledMythenDetectorImpl, ShutteredScannableMotor, ShutterOpenClose, SimpleDummyNexusDetector, SimpleEpicsTemperatureController, SimpleMotor, SimpleObservablePathProvider, SimplePVScannable, SimpleScannable, SimpleScannable, SimpleUDPServerScannable, SingleFileProcessingRequest, SingleScalerWithScalingAndOffset, SmarGonScannableMotor, SmarGonXyzScannableGroup, SpecsPhoibosAnalyser, SpecsPhoibosAnalyserSeparateIterations, SpecsPhoibosSolsticeAnalyser, SpELExpressionScannable, Spin, Spinner, StanfordScannable, StepScanEdeDetector, StringMapperBasedEnumPositioner, StringPVConditionMonitor, StringValueScannable, SummingMythenDetector, SweepUpdater, SweepUpdater, SyringePump, TemperatureBase, TestingEurotherm, TestScannable, Tfg, TFG2CVmoveController, TfgChannelEnum, TFGCounterTimer, TfgEncoderCounter, TfgEpicsMCACounterTimer, TfgFFoverI0, TfgScaler, TfgScalerWithDarkCurrent, TfgScalerWithFrames, TfgScalerWithLogValues, TFGScalerWithRatio, TFGStruck, TFGTriggeredScaler, TfgXmap, TfgXMapFFoverI0, TfgXspress2, TfgXspress2NoCorrection, TfgXspress2Raw, ThreadlessDummyMotor, Threshold0Scannable, Threshold1Scannable, ThresholdAScannable, ThresholdBScannable, TimeDelayScannable, TimedRunnableInvoker, TimeResolvedTFGDetector, TimerWrapper, TimeScannable, TimeTravelScannable, TogglerScannable, TopupChecker, TpRefAScannable, TpRefBScannable, TpRefScannable, TpScannableGroup, TrajectoryScannableMotor, TurboXasScannable, TweakableScannableMotor, TwoDScanPlotter, TwoJawSlitGap, TwoJawSlitPosition, UDPListener, UpdateLimitedScannable, VGScientaAnalyser, VGScientaAnalyserCamOnly, VGScientaAnalyserNXDetector, VGScientaAnalyserTotalOnly, VmxmJacksPiezoScannable, VmxmMXCamera, VortexDetector, VortexQexafsFFIO, Vvhist, WheelAttenuators, XasProgressUpdater, XasScannable, XasScannableDetectorWithHarmonics, XasScannableWithDetectorFramesSetup, XESEnergyScannable, XesIf, XesSpectrometerCrystal, XesSpectrometerScannable, XesSpectrometerScannableBase, XhDetector, Xmap, XmapBufferedDetector, XmapDetectorFromEpicsMca, XmapwithSlaveMode, XpsConstantVelocityMoveController, Xspress2BufferedDetector, Xspress2Detector, Xspress3BufferedDetector, Xspress3Detector, Xspress3FFoverI0BufferedDetector, Xspress3FFoverI0Detector, Xspress3MiniDetector, Xspress3MiniSingleChannelDetector, Xspress3QexafsDetector, Xspress4BufferedDetector, Xspress4Detector, Xspress4OdinDetector, XspressFillMonitor, XspressHdfWriter, XspressSystem, ZebraConstantVelocityMoveController, ZebraConstantVelocityMoveControllerForQexafs, ZebraExternallyTriggeredDetector, ZebraMonitorController, ZebraQexafsScannable, ZebraScannableMonitor, ZebraScannableMotor, ZebraScannableMotorForQexafs, ZebraShutterPositioner

public interface Device extends Findable, gda.observable.IObservable, Configurable
Interface to be implemented by all hardware and communication channels. A Device controls a specific type of hardware for example a Motor controls a motor, a Serial controls a serial port.
  • Method Details

    • setAttribute

      void setAttribute(String attributeName, Object value) throws DeviceException
      Set any attribute the implementing classes may provide
      Parameters:
      attributeName - is the name of the attribute
      value - is the value of the attribute
      Throws:
      DeviceException - if an attribute cannot be set
    • getAttribute

      Object getAttribute(String attributeName) throws DeviceException
      Get the value of the specified attribute
      Parameters:
      attributeName - is the name of the attribute
      Returns:
      the value of the attribute as an Object type
      Throws:
      DeviceException - if an attribute cannot be retrieved
    • close

      void close() throws DeviceException
      Close and unconfigure the device.
      Throws:
      DeviceException
    • setProtectionLevel

      void setProtectionLevel(int newLevel)
      Sets the permission level for this object. If this is not set then a default value will be applied.
      Parameters:
      newLevel -
    • getProtectionLevel

      int getProtectionLevel()
      Returns:
      int - the permission level for this object.