CUORE Software Class List

Here are the classes, structs, unions and interfaces with brief descriptions:
Agilent6627AInterface for the Agilent6627A power supply
BaseInstrumentBase Class for all the instrumentation devices
BesselTransformerBessel 6 pole engine
ChannelManagerManage list of channels, active channels, masked channels and reference values for the meassurement quality check create Reference plot
ChannelManager::ChPropertyStructure of Channel Property active status mask status reference min reference max reference
CoincidenceFillerFactoryReturn selected Coincidence Filler Static -> QCFStaticWindow.cc Variable -> QCFStaticWindow.cc
GPIBBaseInterfaceBase GPIB interface, all the GPIB interfaces must be inherit from it
GPIBUSBniInterfaceGPIB class interface to drive the National Instruments GPIB-USB-HS Controller
MAmplitudeTriggerCuts on the amplitude of pulses
MANNsomWiener filter module
MApolloEventBuilderReader module used for online data taking
MApolloHistoMakerCreate histograms for online measurement monitor. Histograms are saved into a temporary file
MApolloPulseFlaggerSets the fHeaterWord of QSampleInfo to its correct value
MApolloTrgFilter events based on trigger flags
MApplyCalibrationUse calibration coefficients and stabilized amplitiudes to compute energy
MARootFileWriterApollo Root File writer module
MAveragePulsesModule to form idealized pulses by averaging
MAveragePulsesOneIterationForms average pulses with alignment in one iteration
MAvgPulseFilterFilter to select pulses according to given criteria to be used for the average pulse and * noise power spectrum calculation
MBadPulseFilter to remove bad pulses
MBaselineModuleModule to calculate baseline parameters
MBComputeWeightsModule to compute optimal weights for pulse amplitude algorithm
MBComputeWeightsFilterFilter to reject signal pulses in "noise" events. Used to select pure noise samples for optimizing an amplitude filter. Should be used in conjunction with the RawDataFilter, which should select events flagged as noise
MBCountPulsesModule to count number of pulses in acquired window
MBOBFilterModule to compute pulse amplitude
MBoloModelFitPulse fit based on a thermal and electronical model
MCalCoefficientsModule to calculate calibration coefficients
MCalCompatibilityModule to check compatibility between two calibrations
MCalSimulationReaderReader for simulated calibration data
MCheckHeaterDAQCheck that the heater is correctly recorded by all the channels
MCheckOffsetAndSatCheck that the baseline is above zero and below a maximum value for all the channels check number of saturated events produces histograms for all channels containing baselines amplitude, rms, fluctuations and power spectrum
MCheckTimeBehaviourCheck that the duration of each channel's measurement is compatible and that there are no time holes on particle pulses. Calculates the rate of each channel. Check if they are extensive coincidence pulses
MClearEventClear QEvent parts
MCoincidenceMultiplicityPuts multiplicities and total energies in events
MCoincidenceTesterSimple tool to test coincidences framework
MCoincidenceTimingModule to identify coincident events
MCoincidenceVetoFilters coincident events
MComputeFFTComputes FFT
MCorcBaselineChecks baseline offset and makes baseline scatter plot
MCorcHeaterCreates stabilized amplitude vs. time plot
MCorcMultipleCoincidencesChecks for coincident events
MCorcSaturationChecks for saturated pulses
MCorcSetupCORC setup module
MCorcSpectrumCreates amplitude vs. time and heater amplitude vs. baseline plots
MCorcTimeBehaviorComputes event rates and checks for time holes and coincident events
MCorrectAmplitudesCorrect the Amplitudes according to the fits performed in the baseline or time domain. The correction is performed separately in each time interval the measurement has been divided into. The corrected amplitude A' is calculated from the uncorrected amplitude A as:
MCreateDetectorConfigOne-line description of your module
MCreateRateReferenceOne-line description of your module
MDataReducerCondenses data by saving only a few variables to a simple tree
MDefaultsAssign pointers to QDefaultsData
MDetermineHeaterPropertiesCompute significant properties of the heater pulses distributions both for stabilized and for non stabilized amplitudes generates plots of the amplitudes and RMS of all the heater pulses before and after the stabilization procedure. Fits the stab and high heater ditributions with a gaussian and outputs a warning if the quality of the fit is poor. This is done with both the stabilized and non stabilized amplitudes. A warning is also produced if the number of stabilization and high pulses doesn't match with the expected one
MEnergyFilterCuts on energy of pulses
MFilterByHeaterWordFilter events based on heater word
MFilterByReadNumberFilter events based on a list
MFilterHeaterFlagByRegularTimingFilter for use with MHeaterFlagByRegularTiming
MFilterTestDiana framework software test
MFindBTDiscontinuitiesFind variations in the tower temperature trend
MFindCDiscontinuitiesFind discontinuities in every analysis channel Find variations in the bolometers' temperature trend by looking at the amplitude of the stabilization heater on each channel
MFindCoincidencesA module to look for events in coincidence with muons
MFindMultipleTrendsByBruteForceIdentifies multiple trends in amplitude vs. baseline and determines how to break the run into separate time intervals for stabilization. This module is experimental. If it proves useful, more documentation will be written
MFirDigital low pass filter
MFitAmplBaselineFits the Amplitude vs baseline (or time) plots and extracts stabilization parameters
MFlagCoincidenceA quick module to flag coincidences
MGuiDriverDriver module for Interactive GUI, interfaced via TSocket with any class inerithing QGDMessageHandler
MHeaterFlagByCoincidenceFlag heater events by coincidences and time intervals
MHeaterFlagByRegularTimingFlag heater events by their regular timing
MHeaterHistoryPlotsMake history plots for heater amplitudes produces graphs of amplitude vs baseline and amplitude vs time
MLCCurveAnalyzerAnalyze all acquired points in the load curve for a given channel and decide electronics settings for next measurement
MLCNullIdFilterFilter events that have "SlowConfigId" EvAuxData set to 0
MLCPreprocessFilterFilter events based on quantity calculated from the preprocess modules
MLCSlowControllerTo be done
MLightRootFileReaderLight and fast ROOT file reader that reads only user selected variables
MLiveTimeA module to compute live time from the database
MLogNormBiExpFitLognormal + exp raise + exp decay
MLogNormExpFitLognormal + exponential decay fit
MMTimeEnergy
MMultipletViewerThis module generates GUI sessions for viewing muon coincidence multiplets
MMuonCoincidenceA module to look for events in coincidence with muons
MMuonFilterFilters muon events based on info from QDC and TDC boards
MNoiseAvgPowerSpectrumModule to compute average power spectrum of noise
MOBChiSquareCutOne-line description of your module
MOpenApolloFlagThis module open the IsApollo flag for the DAQ validating user
MOptimumFilterOptimum filter module
MOverlappedWindowFilterFilter non overlapped events
MPulseBasicParametersComputes basic pulse parameters
MPulseFitPulse fitter abstract module
MPulseFitFilterOne-line description of your module
MPulseGeneratorPulse generator
MPulserCheckCheck for failure in heater pulses control system
MPulseStartTimeOffsetModule to compute pulse offset with respect to the average pulse
MQinoCompleteDataReaderMilano-DAQ binary data reader
MQinoDataReaderMilano-DAQ binary data reader
MQinoMiCompleteDataReaderMilano-DAQ binary data reader
MQinoMiCompleteDataReaderFastMilano-DAQ binary data & Milano-Ntuple reader Read a Milano-ntuple and look for the raw events (digitized pulses) in a list of raw files (Milano-DAQ). Warning: the maximum number of events per partial file is defined in MAX_EVENTS_PER_PARTIAL (MQinoMiCompleteDataReaderFast.cc)
MQinoMiNtpReaderCuoricino binary ntuples reader
MQinoMiNtpWriterCuoricino binary ntuples writer Milano format
MQinoNtpReaderCuoricino ntuples reader
MQinoRawDataWriterVsmq format file writer
MQinoRootFileWriterMilano-DAQ Root File writer module
MQuickFileReaderA speedier root file reader module
MRawDataFilterGeneric raw data filter
MRejectBadEventsFlag bad events with DB informations
MRejectBadIntervalsAn event passes this filter if it is not contained in a time interval marked bad in the bad_channels database table
MReTriggerFilter for retriggered events
MRootFileCutOne-line description of your module
MRootFileReaderRoot File reader module
MRootFileWriterRoot File writer module
MRootNtpDumperNtuple Dumper
MSampleInfoFilterDiscards events with secondary triggers different to a specified type
MSaveCorrectedMuonTimesOutput a list of corrected muon times to be synchronized with old DAQ
MSetHeaterFlagAbstract module to flag heater events
MSetIsStabHeaterSets IsStabHeater
MSetOBChiSquareCutsSets thresholds for cut on OBAmplitudeChiSquare
MSetThresholdLooks at noise samples to determine minimum amplitude threshold for a channel
MSimpleDAQCheckCheck that the rate of muon events is non zero and that it is not eccessive
MSorterModule for sorting events based on an ordered list
MStabDbWriterWrites the parameters of the fits used for stabilizing in the data base the config file parameters are the names of the files in which the information is stored
MSynchronizeMeasurementsModule to synchronize parallel measurements with the old and new DAQ
MTestDriverOne-line description of your module
MTestModuleDiana framework software test
MTestRawEventOne-line description of your module
MTimeSortModule for sorting events by time
MUserModuleTutorial module
MVibraAnalOne-line description of your module
MVibraDataReaderData reader of the vibrational tests
MWienerFilterOptimum filter module
MWPAnalyzerOne-line description of your module
MWPSlowControllerTo be done
OptimumFilterApplies the OtpimumFilter to pulses and computes the corrisponding inputs if needed
PowerSpectrumInterface for power spectrum Th epower spectrum can be comupted from pulses or readed from file
PowerSupplyBase Class for all the power supply devices
QAEventRApollo root file event
QAliasesSingleton that manage member aliases and categories
QApolloCalibConvert unscaled ADC units from Apollo DAQ to several formats of scaled values
QApolloDbRead-only interface to cuore data base, intended for daq use
QApolloDbBaseSingleton interface to cuore data base, intended for daq use
QApolloDbCacheCache for channel related data base informations concerning the DAQ. Direct access to this class is granted only to QApolloDb
QApolloDbDaqRead-only interface to cuore data base qdb. Used by Daq processes
QApolloDbGuiInterface to cuore data base qdb. Used by Apollo GUI
QApolloDbServerRead-only interface to cuore data base, intended for daq use
QApolloDbSlowInterface to cuore data base qdb. Used by SlowServer
QApolloErrorSingleton for error handling internally to apollo
QApolloTriggerListContainer for all trigger defined
QASCIIClass for reading and writing ascii text files
QBAmplitudeComputes amplitude
QBaseClientBase class implementing all protocol-related methods common to all network clients involved in apollo
QBaseDigitalControllerBase class for digital output control
QBaseEleDeviceBase class for each electronics device controlled by SlowServer
QBaseInstrumentBase instrument controller, all the instrument controller must be inherit from it
QBaseLoadCurveBaseLoad curve base class
QBaseModuleAbstract class for modules
QBaseRawEventRDAQ data
QBaseTreeAbstract class for cuore trees
QBinRecStruct_tStructure for raw data Qino format
QBruteForceTrendFinderFinds multiple trends in amplitude vs. baseline by brute force search. Determines how to break a run into separate time intervals for stabilization. To be used with module FindMultipleTrendsByBruteForce. This code is experimental. If it proves useful, more documentation will be written
QBufferStructure_tShared memory structure for a channel.
The main purpose of this structure isto provide access to acquired data to different DAQ classes (and/or processes). In addition to the data buffer, shared memory contains the logical channel Id, the number of valid words contained in the buffer and some pointers. Pointer are used to remember interesting positions inside buffer:
QBuilderInfo_tChannel based struct containing pointer to shared memory buffer and informations on pulse duration and pre-trigger
QCalibDataMApplyCalibration module parameters
QCalibDataBaseMApplyCalibration module parameters
QCalibDataRRoot relative for QCalibData
QCalPeakClass to store data regarding calibration peaks
QCFStaticWindowBase class for coincidence analysis
QCFVariableWindowBase class for coincidence analysis
QCoincidenceBase class for coincidence analysis
QCoincidenceFillerBuild list of QCoincidence from a list of QCoincidentEvent. This class is pure virtual and only defines a common interface that is to be implemented by specific coincidence fillers inheriting from it
QCoincidenceFilterAbstract class defining interface for coincidence filters
QCoincidenceScannerScan QCoincidences searching for those that match particular patterns
QCoincidentEventContainer class for quantities relevant for coincidence analysis
QCoincidentEventDQCoincidentEvent that is built from a Diana Event
QCoincidentEventRQCoincidentEvent that is built from a Root Event
QContainerContainer of QObject, int, double and string
QCoPatternElementCoincidence Pattern
QCoPatternSplitter
QCoPositionSplitterSplits a QCoincidence in clusters acording to their position. Parameters: double fRange: maximum distance between adjacent events inside a cluster (For every element i, there is at least one element j such that dij <= fRange) QTower fTower: detector map for computing distance between crystals (see QTower.hh)
QCoProjectorProjects variables of a QCoincidece list
QCorcModuleBase class for CORC modules
QCorrelationsInterface for computing, storing, and writing Correlations in Cuore analysis
QCoSelectorSelects variables from QCoincidence object
QCountPulsesDataTime interval beetwen peaks in the same acquired window
QCountPulsesDataBaseTime interval beetwen peaks in the same acquired window
QCountPulsesDataRRoot relative for QCountPulsesData
QCrateReceiverBufferClass for shared memory handling
QCrystalDescription of a crystal
QCuboidGeometric description of a cuboid
QDaqChannelContainer of Daq, Electronics and Trigger channel settings
QDaqClientThis class implements client side functions that can be used to communicate with Apollo Daq server
QDaqFwdCommand
QDaqServerObject that does the real work through the command visitors
QDbBase class for db interface
QDbCorcNamespace of fuction to read references for CORC from the DataBase
QDefaultsDataEvery member of this class refer to a choise beetwen different quantities with the same meaning There is no "R" relative for this QEventData
QDianaProcessStatusSingleton that manage diana status
QDigitalController_v0First implementation of pulser digital lines communication protocol
QDigitalController_v1First implementation of pulser digital lines communication protocol
QDllManagerDynamic library manager
QDriverPure abstract class that every Diana driver should inherit from
QEleBaseInterfaceBase interface to control the CUORE electronics
QEleNetworkInterfaceNetwork interface to windows-based pulser slow control
QEnergyFilterFilter QCoincidences based on energy cuts
QErrorError class with error type and description
QEventDiana Event
QEventAuxDataContainer of QObject, int, double and string
QEventAuxDataRAuxData manager for root
QEventDisplayDiana Event Display
QEventDisplayFactoryDiana Event DisplayFactory
QEventRDiana root file event
QFFTInterface for ffts in Cuore analysis
QFFTDataFFT module data
QFFTDataBaseFFT module data
QFFTDataRRoot relative for QFFTData
QFFTShapeRQFFTShape relative for ROOT data
QFileListFile list handler
QFileReaderAbstract class for diana readers
QFileWriterAbstract class for diana file writers
QFilterPure abstract module that every filter module should inherit from
QFiltersDataFilter modules logic result
QFiltersDataBaseFilter modules logic result
QFiltersDataRRoot relative for QFiltersData
QFindTDiscontinuitiesFind variations in the tower temperature trend
QFitterFitter
QFrameWorkMain framework class for Diana
QGCalibrationPeakFramePart of a QGCalibrationWindow for a specific peak
QGCalibrationWindowUsed to select amplitude windows for calibration peaks
QGCanvasSetupFramePart of a canvas window for doing setup tasks
QGCanvasWindowWindow containing a ROOT canvas
QGCanvasWindowButtonsFramePart of a canvas window containing control buttons
QGCutsEditorWindowWindow used to manage writing cuts to a file
QGCutsFrameFrame to handle editing of cuts
QGDefaultsHandlerSingleton class to handle default settings for the GUI
QGDMainFrameMain window of the interactive gui
QGDMessageHandlerAbstract class for handling of the MGuiDriver messages
QGDReceiverHandles the connection of the interactive GUI with diana through TSocket
QGDropDownBoxDrop down box with tab-complete
QGeneralFactoryThis class take care of plugin registration and creation
QGeomVectorGeometric 3D vector
QGFileHandlerClass to handle ROOT files
QGGraphBase class for scatter plots and pulses
QGGraphicalCutClass for graphical cuts
QGGraphicalCutBaseBase class for GUI graphical cuts. This class has minimal dependencies on other GUI classes so it is suitable to be shared with Diana modules
QGHistogramClass for GUI histograms
QGHistogramEditWindowClass for histogram edit window
QGHistogramParametersFramePart of a histogram edit window for inputting parameters
QGlobalReaderAbstract class for global readers
QGlobalReaderDispatcherClass that returns a pointer to the reader matching the given input filename
QGlobalReaderFactoryAbstract factory for QGlobalReader
QGlobalWriterAbstract class for global writers
QGlobalWriterDispatcherClass that returns a pointer to the writer matching the given input filename
QGlobalWriterFactoryAbstract factory for QGlobalWriter
QGPlotBase class for GUI plots including histograms, scatter plots, pulses, and graphical cuts
QGPlotEditButtonsFrameFrame to hold control buttons for plot edit window
QGPlotEditWindowBase class for plot edit windows
QGPlotFramePart of a canvas window containing the ROOT canvas
QGPlotIconsFramePart of a QGPlotFrame containing buttons to add new plots
QGPlotListEntryFrameClass for entries in the plot list
QGPlotListWindowSingleton class for plot list window
QGPlotStyleFramePart of a plot edit window showing the plot style
QGPulseClass for GUI pulse plots
QGPulseEditWindowClass for pulse edit window
QGPulseParametersFramePart of a pulse edit window for inputting parameters
QGScatterPlotClass for GUI scatter plots
QGScatterPlotEditWindowClass for scatter plot edit window
QGScatterPlotParametersFramePart of a scatter plot edit window for inputting parameters
QGSessionHandlerClass to handle saving and opening sessions
QGSLDiana interface to GSL core
QGTextEntryExtension of ROOT's basic text box TGTextEntry
QGTextFileHandlerClass to handle input and output for text files
QGUIBaseFrameBase Frame for build Apollo GUIs
QGUIDataCollectorData-collection class used by Apollo GUI to describe selections status
QGuiHistogramHistogram data for GUI session
QGUIHistogramHandlerNon graphical class used to read histograms to be displayed by QGUIHistogramDisplay class
QGUINumberSelectorBase class for graphical number selector
QGuiScatterPlotScatter plot data for GUI session
QGUIScopeChannelHandler for channel based graphics stuff. One of these objects for each active scope channel
QGuiSessionClass to generate session files for the GUI from a Diana module
QGuiSessionItemBase class for GUI session objects like histograms and scatter plots
QGWindowBase class for GUI windows
QiEventRMilano-DAQ root file event
QIGUIBoloModelFitMBoloModelFit module displayer for qigui
QIGUIDefaultEventDisplayDefault Diana Event Display
QIGUIFileHandlerClass to handle ROOT files Inherits from QGFileHandler.hh
QiMuonChannelCuoricino Muon Veto data
QiMuonChannelRRoot relative for QiMuonChannel
QiMuonVetoCuoricino Muon Veto data
QiMuonVetoRCuoricino Muon Veto data relative of QiMuonVeto
QIntervalInterval of real numbers
QIntervalSetCollection of disjoint intervals of real numbers
QLCSlowConfigData collector for load curve single measurement front end settings
QLCSlowConfigHandlerSingleton class used to handle electronics configurations used in load curves procedure
QLgChannelStore channel mapping informations
QListMembersTMemberInspector to get info on TObject's members
QLogNormBiExpFitLognormal + double exp fitter
QLogNormExpFitLognormal + exp fitter
QMailClass to send email warnings from DAQ
QMainPulseThis is the main pulse of the event and stores the sample that caused the event dump. The difference between the mother QPulse is that a main pulse has at least a sample to be described. Note that in general the fMasterSample.fSampleIndex is equal to fTimedSample stored in QPulse
QMainPulseRRoot relative of QMainPulse
QMathFunctionGeneric C++ interface on static functions
QMatrixInterface for matrices in Cuore analysis
QMatrixRQMatrix relative for ROOT data
QMinimizerFind maximum and minimum of a QMathFunction, the minimum search stops when |a - b| < epsabs + epsrel min(|a|,|b|)
QModFactory< T >Abstract module factory and definition of macros that builds modulefactories and register function
QModulePure abstract class that every Diana module should inherit from
QModuleFactoryModule instantiation class
QMsgAskCommand
QMsgClientClient side methods for interaction with Message Logger server
QMsgCommandCommand used to send informations to message logger server
QMsgGetCommandUsed to retrieve informations from message logger server
QMsgLogger
QNiDigitalControllerImplementation of low level digital input/output for National Instruments board
QNoiseGeneratorClass to generate random noise samples given a desired mean power spectrum
QOBDataPulse height from MBOBFilter
QOBDataBasePulse height from MBOBFilter
QOBDataRRoot relative for QOBData
QObjectBase class which every QContainer contained object have to inehrit from
QOFDataMOptimumFilter module parameters
QOFDataBaseMOptimumFilter module parameters
QOFDataRRoot relative for QOFData
QOffsetFind offset of pulse with respect to ideal pulse and resample pulse to correct for it
QOptionsDiana options and parameters handler
QOutputFilehandlerInterface for output file for measurement quality check
QPositionFilterFilter coincidences based on geometrical position of the crystals
QPowerSupplyPower Supply controller
QPreProcessDataSlope and shape of baseline before pulse
QPreProcessDataBaseSlope and shape of baseline before pulse
QPreProcessDataRRoot relative for QPreProcessData
QProcessStatusApollo process status and signal handler
QPulsePulse data, it contains channel id, window samples. It also contain a list of samples within the pulse window that have been flagged for same reason: trigger firing position, heater shot, etc (
QPulseFitDataMPulseFit module parameters
QPulseFitDataBaseMPulseFit module parameters
QPulseFitDataRRoot relative for QPulseFitData
QPulseFitterAbstract class for pulse fitters
QPulseGeneratorGenerate window with pulse(s) and noise for a single channel
QPulseRRoot relative for QPulse
QPulserConfig_tPulser configuration bytes
QPulserControllerMain class for pulser sequence control
QPulserGroupGroup of pulser channels that will fire at the same time
QRawEventDAQ data
QRawEventBaseDAQ data
QRawEventRDAQ data
QRawEventR_01DAQ data
QReaderAbstract class for diana readers
QRealComplexFFTPerform FFT of real vectors
QRunDataBasic Run info from DB
QRunDataBaseBasic Run info from DB
QRunDataRRoot relative for QRunData
QSampleInfoInformation on flagged samples. Flagged samples can be of different types:
  • Trigger: sample at which the trigger fired
  • Noise: sample at which the noise acquisition started
  • Heater: sample corresponding to the heater shot
  • Muon: sample corresponding to the muon veto trigger
QSampleInfoRRoot relative for QSampleInfo
QSlowBaseCommandBase class for all the Slow Server commands
QSlowControlClientClass used to hide client-side network communication with slow server
QSlowControlServerSingleton that does the real work through the command visitors
QStabChannelFind variations in the tower temperature trend
QStabDataStabilization parameters
QStabDataBaseStabilization parameters
QStabDataRRoot relative for QStabData
QStabFitterFinds the best fit of the A(b) A(t) distributions
QStringHandlerString functions used by the framework core
QTimeDiana time
QTimeRRoot relative for QTime
QTimingAnalyzerAnalyzes a list of values for the occurance of elements separated by regular intervals
QTotalEnergyFilterBase class for coincidence analysis
QTowerDescription of Cuore Tower
QTowerArrayGeometric description of an array of QTowers
QTreeDiana tree with at least the QEVENT_BRANCH branch
QTrgInfoContainer class for trigger informations
QTrigggerFinderThis class scans data buffers searching for trigger flags
QVectorInterface for vectors in Cuore analysis
QVectorCComplex vector
QVectorConstViewQVectorView for const QVector
QVectorCRQVectorC relative for ROOT data
QVectorIRQVector of 32 bit integers for ROOT data
QVectorRQVector relative for ROOT data
QVectorViewSubview of an existing QVector, useful to operate on a QVector slice
QWienerDataMWienerFilter module parameters
QWienerDataBaseMWienerFilter module parameters
QWienerDataRRoot relative for QWienerData
QWPSlowConfigContainerSingleton class used to handle electronics configurations used in load curves procedure
QWPSlowConfigHandlerSingleton class used to handle electronics configurations used in load curves procedure
QWriterAbstract class for diana writers
QDbCorc::ReferenceClass Reference min reference max reference avreage reference
QDbCorc::TimeIntervalTime interval, seconds
WienerFilterApplies the OtpimumFilter to pulses and computes the corrisponding inputs if needed

Generated on Fri Mar 6 13:40:40 2009 for CUORE Software by  doxygen 1.5.1