35#ifndef StreamBrowserDialog_h
36#define StreamBrowserDialog_h
53 std::vector<uint64_t> m_rates;
54 std::vector<std::string> m_rateNames;
61 return m_rates[m_rate];
65 std::vector<uint64_t> m_depths;
66 std::vector<std::string> m_depthNames;
74 std::string m_rbwText;
78 std::string m_centerText;
81 std::string m_spanText;
84 std::string m_startText;
87 std::string m_endText;
91 std::string m_integrationText;
92 double m_integrationTime;
95 std::vector<std::string> m_adcmodeNames;
107 void FlushConfigCache();
125 bool BeginBlock(
const char *label,
bool withButton =
false,
const char*
tooltip =
nullptr);
137 const std::vector<std::string>&
values,
165 std::shared_ptr<StreamBrowserTimebaseInfo> GetTimebaseInfoFor(std::shared_ptr<Oscilloscope>&
scope);
167 void DoFrequencySettings(std::shared_ptr<Oscilloscope>
scope);
168 void DoSpectrometerSettings(std::shared_ptr<SCPISpectrometer>
spec);
185 std::map<std::shared_ptr<Instrument>,
bool> m_instrumentDownloadIsSlow;
190 std::map<std::shared_ptr<Instrument>, std::shared_ptr<StreamBrowserTimebaseInfo> >
m_timebaseConfig;
199 ImGui::BeginDisabled();
200 ImGui::SmallButton(label);
201 ImGui::EndDisabled();
202 ImGui::PopStyleVar();
Definition AcceleratorBuffer.h:204
Generic dialog box or other popup window.
Definition Dialog.h:46
Abstract base class for all filter graph blocks which are not physical instrument channels.
Definition Filter.h:105
A single channel of a function generator.
Definition FunctionGeneratorChannel.h:45
A single channel of an instrument.
Definition InstrumentChannel.h:63
Top level application window.
Definition MainWindow.h:168
A single channel of a multimeter.
Definition MultimeterChannel.h:45
A single channel on an oscilloscope.
Definition OscilloscopeChannel.h:49
A single channel of a power supply.
Definition PowerSupplyChannel.h:37
A Session stores all of the instrument configuration and other state the user has open.
Definition Session.h:126
Definition StreamBrowserDialog.h:100
void startBadgeLine()
prepare rendering context to display a badge at the end of current line
Definition StreamBrowserDialog.cpp:143
InstrumentBadge
State of badges used in intrument node rendering.
Definition StreamBrowserDialog.h:114
virtual bool DoRender() override
Renders the dialog and handles UI events.
Definition StreamBrowserDialog.cpp:2291
float m_badgeXMin
Positions for badge display.
Definition StreamBrowserDialog.h:182
std::shared_ptr< StreamGroupDescriptor > m_streamGroupDesciptor
Reference to currently dragged StreamGroupDesciptor.
Definition StreamBrowserDialog.h:193
void renderChannelNode(std::shared_ptr< Instrument > instrument, size_t channelIndex, bool isLast)
Rendering of a channel node.
Definition StreamBrowserDialog.cpp:1558
void renderInstrumentBadge(std::shared_ptr< Instrument > inst, bool latched, InstrumentBadge badge)
render a badge for an instrument node
Definition StreamBrowserDialog.cpp:158
void renderFilterNode(Filter *filter)
Rendering of a Filter node.
Definition StreamBrowserDialog.cpp:2189
std::map< std::shared_ptr< Instrument >, std::shared_ptr< StreamBrowserTimebaseInfo > > m_timebaseConfig
Map of instruments to timebase settings.
Definition StreamBrowserDialog.h:190
void SmallDisabledButton(const char *label)
Helper to render a small button that's non-interactive.
Definition StreamBrowserDialog.h:196
void renderAwgProperties(std::shared_ptr< FunctionGenerator > awg, FunctionGeneratorChannel *awgchan)
Render AWG channel properties.
Definition StreamBrowserDialog.cpp:803
void renderStreamNode(std::shared_ptr< Instrument > instrument, InstrumentChannel *channel, size_t streamIndex, bool renderName, bool renderProps)
Rendering of a stream node.
Definition StreamBrowserDialog.cpp:2035
bool renderToggle(const char *label, bool alignRight, ImVec4 color, bool &curValue, const char *valueOff="OFF", const char *valueOn="ON", uint8_t cropTextTo=0, float paddingRight=0)
Render a toggle button combo.
Definition StreamBrowserDialog.cpp:410
void renderDmmProperties(std::shared_ptr< Multimeter > dmm, MultimeterChannel *dmmchan, bool isMain, bool &clicked, bool &hovered)
Render DMM channel properties.
Definition StreamBrowserDialog.cpp:690
void renderChannelProperties(std::shared_ptr< Oscilloscope > scope, OscilloscopeChannel *scopechan, size_t channelIndex, std::shared_ptr< OscilloscopeState > scopeState)
Rendering of channel properties.
Definition StreamBrowserDialog.cpp:1910
void DoTimebaseSettings(std::shared_ptr< Oscilloscope > scope)
Add nodes for timebase controls under an instrument.
Definition StreamBrowserDialog.cpp:1417
void renderBadge(ImU32 color,...)
render a badge at the end of current line with provided color and text
Definition StreamBrowserDialog.cpp:235
bool renderDownloadProgress(std::shared_ptr< Instrument > inst, InstrumentChannel *chan, bool isLast)
Render a download progress bar for a given instrument channel.
Definition StreamBrowserDialog.cpp:452
bool renderOnOffToggle(const char *label, bool alignRight, bool &curValue, const char *valueOff="OFF", const char *valueOn="ON", uint8_t cropTextTo=0, float paddingRight=0)
Render an on/off toggle button combo.
Definition StreamBrowserDialog.cpp:433
bool renderPsuRows(bool isVoltage, bool cc, PowerSupplyChannel *chan, std::string ¤tValue, float &committedValue, std::string &measuredValue, bool &clicked, bool &hovered)
Render a PSU properties row.
Definition StreamBrowserDialog.cpp:604
void renderInstrumentNode(std::shared_ptr< Instrument > instrument)
Rendering of an instrument node.
Definition StreamBrowserDialog.cpp:1028
std::map< std::shared_ptr< Instrument >, std::pair< double, InstrumentBadge > > m_instrumentLastBadge
Store the last state of an intrument badge (used for badge state latching)
Definition StreamBrowserDialog.h:187
Definition StreamBrowserDialog.h:46