Menu

#1619 DataPointRecorder sorts the data coming out of getDataSet

nextrelease
open-fixed
nobody
None
5
2016-07-01
2016-06-30
No

I believe old code that sorts the data as the VectorDataSet is build is resposible for the bug Ivar is seeing, where getDataSet and deleteRows seem to work inconsistenly.

This fragment of code that creates a QDataSet by first creating a VectorDataSet then adapting it needs to be rewritten.

Discussion

  • Jeremy Faden

    Jeremy Faden - 2016-06-30

    This demos the bug:

    from org.das2.components import DataPointRecorder
    d= DataPointRecorder()
    d.setSorted(False)
    
    addTab( 'dpr',d )
    
    d.addDataPoint( 2, 1 )
    d.addDataPoint( 0, 1 )
    d.addDataPoint( 1, 2 )
    d.addDataPoint( 3, 1 )
    d.addDataPoint( 4, 1 )
    
    def doit(evt):
        print 'This should not be sorted, but it is:'
        ds= d.getDataSet()
        dep0= ds.property( QDataSet.DEPEND_0 )
        for i in xrange(ds.length()):
            print dep0.value(i), ds.value(i)
    
    from javax.swing import JButton
    button= JButton('getData',actionPerformed=doit)
    
    from javax.swing import JOptionPane
    JOptionPane.showMessageDialog( getViewWindow(), button )
    
     
  • Jeremy Faden

    Jeremy Faden - 2016-07-01

    This is fixed and released in 20160701a.

     
  • Jeremy Faden

    Jeremy Faden - 2016-07-01
    • status: open --> open-fixed