diff --git a/stackviz/MainWindow.cpp b/stackviz/MainWindow.cpp
index b3d3283b63fcee429edc63284fd9c89e5c15cd74..e6d41a5339f299e471c9fa92611a83375e2cb55a 100644
--- a/stackviz/MainWindow.cpp
+++ b/stackviz/MainWindow.cpp
@@ -157,6 +157,31 @@ void MainWindow::openHDF5File( const std::string& networkFile,
_player = player;
configurePlayer( );
+
+ std::vector< unsigned int > sizes = { 300, 4000, 9 };
+ std::vector< uint32_t > artGIDs;
+
+ unsigned int offset = 0;
+ for( auto csize : sizes )
+ {
+ artGIDs.clear( );
+ artGIDs.resize( csize );
+ unsigned int last = 0;
+ for( unsigned int i = 0; i < csize; i++ )
+ {
+ last = i + offset;
+ artGIDs[ i ] = last;
+
+ }
+ visimpl::Selection selection;
+ selection.gids.insert( artGIDs.begin( ), artGIDs.end( ));
+
+ _summary->AddNewHistogram( selection );
+
+ std::cout << "Selection: " << last << " - " << offset << std::endl;
+
+ offset = last;
+ }
}
void MainWindow::configurePlayer( void )
diff --git a/sumrice/Summary.cpp b/sumrice/Summary.cpp
index a476c6051040f32b12f7d83aefc28806a5ada86e..ef5b6d0f76928015eab2e3c41bfa344bcfd8bf30 100644
--- a/sumrice/Summary.cpp
+++ b/sumrice/Summary.cpp
@@ -356,34 +356,12 @@ void Summary::AddNewHistogram( const visimpl::Selection& selection
_pendingSelections.push_back( selection );
-// if( !_insertionTimer.isActive( ))
-// _insertionTimer.start( );
-
}
else
#endif
{
- visimpl::MultiLevelHistogram* histogram = new visimpl::MultiLevelHistogram( *_spikeReport );
-// histogram->filteredGIDs( gids );
- histogram->colorMapper( _mainHistogram->colorMapper( ));
-// histogram->colorScale( visimpl::Histogram::T_COLOR_EXPONENTIAL );
-// histogram->normalizeRule( visimpl::Histogram::T_NORM_MAX );
-// histogram->mousePosition( &_lastMousePosition );
- histogram->setMinimumHeight( _heightPerRow );
- histogram->setMaximumHeight( _heightPerRow );
-// histogram->setMinimumWidth( 500 );
- std::cout << "Thread " << this->thread( ) << std::endl;
- _mainLayout->addWidget( histogram, _histograms.size( ), 0, _maxColumns - 2, 1 );
-// _mainLayout->addWidget( histogram );
- _histograms.push_back( histogram );
-
- histogram->init( _bins, _zoomFactor );
-// CreateSummarySpikes( );
-// UpdateGradientColors( );
-
- update( );
-
+ InsertSummary( selection );
}
}
@@ -398,86 +376,88 @@ void Summary::deferredInsertion( void )
if( _pendingSelections.size( ) > 0 )
{
- StackRow currentRow;
visimpl::Selection selection = _pendingSelections.front( );
_pendingSelections.pop_front( );
- QString labelText =
- QString( "Selection-").append( QString::number( selection.id ));
-
- bool ok = true;
- if ( !_autoNameSelection )
- labelText = QInputDialog::getText( this,
- tr( "Selection Name" ),
- tr( "Please, introduce selection name: "),
- QLineEdit::Normal,
- labelText,
- &ok );
- if( !ok )
- return;
-
- std::cout << "Deferred insertion: " << selection.name
- << " GIDs: " << selection.gids.size( )
- << std::endl;
-
- visimpl::MultiLevelHistogram* histogram = new visimpl::MultiLevelHistogram( *_spikeReport );
- histogram->filteredGIDs( selection.gids );
- histogram->colorMapper( _mainHistogram->colorMapper( ));
- histogram->colorScaleLocal( _colorScaleLocal );
- histogram->colorScaleGlobal( _colorScaleGlobal );
- histogram->colorLocal( _colorLocal );
- histogram->colorGlobal( _colorGlobal );
- histogram->normalizeRule( visimpl::T_NORM_MAX );
- histogram->representationMode( visimpl::T_REP_CURVE );
- histogram->regionWidth( _regionWidth );
- histogram->gridLinesNumber( _gridLinesNumber );
+ InsertSummary( selection );
+ }
- histogram->setMinimumHeight( _heightPerRow );
- histogram->setMaximumHeight( _heightPerRow );
- // histogram->setMinimumWidth( 500 );
+}
- currentRow.histogram = histogram;
- currentRow.label = new QLabel( labelText );
- currentRow.checkBox = new QCheckBox( );
+#endif
- unsigned int row = _histograms.size( );
- _mainLayout->addWidget( currentRow.label, row , 0, 1, 1 );
- _mainLayout->addWidget( histogram, row, 1, 1, _summaryColumns );
- _mainLayout->addWidget( currentRow.checkBox, row, _maxColumns - 1, 1, 1 );
+void Summary::InsertSummary( const visimpl::Selection& selection )
+{
+ StackRow currentRow;
- _rows.push_back( currentRow );
+ QString labelText =
+ QString( "Selection-").append( QString::number( selection.id ));
- histogram->mousePosition( &_lastMousePosition );
- histogram->regionPosition( &_regionGlobalPosition );
+ bool ok = true;
+ if ( !_autoNameSelection )
+ labelText = QInputDialog::getText( this,
+ tr( "Selection Name" ),
+ tr( "Please, introduce selection name: "),
+ QLineEdit::Normal,
+ labelText,
+ &ok );
+ if( !ok )
+ return;
- connect( histogram, SIGNAL( mousePositionChanged( QPoint )),
- this, SLOT( updateMouseMarker( QPoint )));
+ std::cout << "Deferred insertion: " << selection.name
+ << " GIDs: " << selection.gids.size( )
+ << std::endl;
- connect( histogram, SIGNAL( mousePressed( QPoint, float )),
- this, SLOT( childHistogramPressed( QPoint, float )));
+ visimpl::MultiLevelHistogram* histogram = new visimpl::MultiLevelHistogram( *_spikeReport );
+ histogram->filteredGIDs( selection.gids );
+ histogram->colorMapper( _mainHistogram->colorMapper( ));
+ histogram->colorScaleLocal( _colorScaleLocal );
+ histogram->colorScaleGlobal( _colorScaleGlobal );
+ histogram->colorLocal( _colorLocal );
+ histogram->colorGlobal( _colorGlobal );
+ histogram->normalizeRule( visimpl::T_NORM_MAX );
+ histogram->representationMode( visimpl::T_REP_CURVE );
+ histogram->regionWidth( _regionWidth );
+ histogram->gridLinesNumber( _gridLinesNumber );
- connect( histogram, SIGNAL( mouseReleased( QPoint, float )),
- this, SLOT( childHistogramReleased( QPoint, float )));
+ histogram->setMinimumHeight( _heightPerRow );
+ histogram->setMaximumHeight( _heightPerRow );
+ // histogram->setMinimumWidth( 500 );
- connect( histogram, SIGNAL( mouseModifierPressed( float, Qt::KeyboardModifiers )),
- this, SLOT( childHistogramClicked( float, Qt::KeyboardModifiers )));
+ currentRow.histogram = histogram;
+ currentRow.label = new QLabel( labelText );
+ currentRow.checkBox = new QCheckBox( );
- _histograms.push_back( histogram );
+ unsigned int row = _histograms.size( );
+ _mainLayout->addWidget( currentRow.label, row , 0, 1, 1 );
+ _mainLayout->addWidget( histogram, row, 1, 1, _summaryColumns );
+ _mainLayout->addWidget( currentRow.checkBox, row, _maxColumns - 1, 1, 1 );
- histogram->init( _bins, _zoomFactor );
-// CreateSummarySpikes( );
-// UpdateGradientColors( );
+ _rows.push_back( currentRow );
- GIDUSet tmp;
- histogram->filteredGIDs( tmp );
+ histogram->mousePosition( &_lastMousePosition );
+ histogram->regionPosition( &_regionGlobalPosition );
- update( );
- }
+ connect( histogram, SIGNAL( mousePositionChanged( QPoint )),
+ this, SLOT( updateMouseMarker( QPoint )));
+
+ connect( histogram, SIGNAL( mousePressed( QPoint, float )),
+ this, SLOT( childHistogramPressed( QPoint, float )));
+
+ connect( histogram, SIGNAL( mouseReleased( QPoint, float )),
+ this, SLOT( childHistogramReleased( QPoint, float )));
+
+ connect( histogram, SIGNAL( mouseModifierPressed( float, Qt::KeyboardModifiers )),
+ this, SLOT( childHistogramClicked( float, Qt::KeyboardModifiers )));
+
+ _histograms.push_back( histogram );
+ histogram->init( _bins, _zoomFactor );
+
+ update( );
}
-#endif
int pixelMargin = 10;
diff --git a/sumrice/Summary.h b/sumrice/Summary.h
index e84c179ccfc850318d95e19a1d5c1d63d289b8eb..df5d7213beb0953e9f30690b2d3117b5a8bc58f5 100644
--- a/sumrice/Summary.h
+++ b/sumrice/Summary.h
@@ -167,7 +167,7 @@ protected:
void Init( void );
void CreateSummarySpikes( );
- void InsertSummarySpikes( const GIDUSet& gids );
+ void InsertSummary( const visimpl::Selection& selection );
// void CreateSummaryVoltages( void );
void UpdateGradientColors( bool replace = false );