@@ -320,6 +320,7 @@ void DisplayedChannel::PrepareToRasterize(size_t x, size_t y)
320320 m_rasterizedWaveform.resize (npixels);
321321
322322 // fill with black
323+ // TODO: do this in a shader
323324 m_rasterizedWaveform.PrepareForCpuAccess ();
324325 memset (m_rasterizedWaveform.GetCpuPointer (), 0 , npixels * sizeof (float ));
325326 m_rasterizedWaveform.MarkModifiedFromCpu ();
@@ -3761,6 +3762,8 @@ void WaveformArea::ChannelButton(shared_ptr<DisplayedChannel> chan, size_t index
37613762 auto stream = chan->GetStream ();
37623763 auto rchan = stream.m_channel ;
37633764 auto data = stream.GetData ();
3765+ auto udata = dynamic_cast <UniformWaveformBase*>(data);
3766+ auto sdata = dynamic_cast <SparseWaveformBase*>(data);
37643767 auto edata = dynamic_cast <EyeWaveform*>(data);
37653768 auto cdata = dynamic_cast <ConstellationWaveform*>(data);
37663769 auto ddata = dynamic_cast <DensityFunctionWaveform*>(data);
@@ -3872,9 +3875,13 @@ void WaveformArea::ChannelButton(shared_ptr<DisplayedChannel> chan, size_t index
38723875 else
38733876 {
38743877 Unit samples (Unit::UNIT_SAMPLEDEPTH);
3875- tooltip += samples.PrettyPrint (data->size ()) + " \n " ;
3878+ tooltip +=
3879+ samples.PrettyPrint (data->size ()) +
3880+ " (memory allocated for " +
3881+ samples.PrettyPrint (data->capacity ()) +
3882+ " )\n " ;
38763883
3877- if (dynamic_cast <UniformWaveformBase*>(data) )
3884+ if (udata )
38783885 {
38793886 Unit rate (Unit::UNIT_SAMPLERATE);
38803887 if (data->m_timescale > 1 )
0 commit comments