Soeren Apel [Mon, 10 Aug 2015 07:11:43 +0000 (09:11 +0200)]
Util: Introduce DD:HH:MM:SS.mmm nnn ppp fff format
This also fixes bug #371.
Soeren Apel [Mon, 10 Aug 2015 06:21:53 +0000 (08:21 +0200)]
View: Separate data changed/capture state changed events
Soeren Apel [Sun, 9 Aug 2015 18:41:03 +0000 (20:41 +0200)]
View: Determine time unit and use it in other classes
Soeren Apel [Sun, 9 Aug 2015 18:32:41 +0000 (20:32 +0200)]
Introduce time units
Soeren Apel [Sat, 15 Aug 2015 21:14:17 +0000 (23:14 +0200)]
Fix #615 by opening the output stream only if needed
Uwe Hermann [Sun, 9 Aug 2015 15:25:49 +0000 (17:25 +0200)]
nsis: Add start menu entries for Zadig.
This fixes bug #542.
Uwe Hermann [Sat, 8 Aug 2015 17:19:47 +0000 (19:19 +0200)]
Bump Boost requirement to >= 1.48.
Older versions of Boost have issues with C++11 due to boost::shared_ptr.
Details:
http://stackoverflow.com/questions/
18900730/boostshared-ptrshared-ptrconst-boostshared-ptr-is-implicitly-declared
https://svn.boost.org/trac/boost/changeset/73202
This seems to have been fixed in Boost 1.48 (untested, though).
This closes bug #593.
Soeren Apel [Thu, 6 Aug 2015 18:44:13 +0000 (20:44 +0200)]
Fix include guards and accidential const removal
Soeren Apel [Fri, 31 Jul 2015 06:22:40 +0000 (08:22 +0200)]
Fix #404 by only saving enabled signals
Soeren Apel [Fri, 31 Jul 2015 05:33:23 +0000 (07:33 +0200)]
Fix #599 by supplying correct length to create_logic_packet()
Soeren Apel [Wed, 29 Jul 2015 19:28:17 +0000 (21:28 +0200)]
StoreSession: Supply filename to the output module directly
This fixes parts of bug #570.
Soeren Apel [Wed, 29 Jul 2015 10:04:29 +0000 (12:04 +0200)]
Simplify signal clearing in Session::start_capture
Soeren Apel [Wed, 29 Jul 2015 10:04:03 +0000 (12:04 +0200)]
Change hotkey for sticky scrolling from 'r' to 's'
Daniel Elstner [Sat, 25 Jul 2015 20:31:05 +0000 (22:31 +0200)]
build: Only try to read the VERSION file if it exists
Uwe Hermann [Sat, 25 Jul 2015 17:43:42 +0000 (19:43 +0200)]
about: Show the list of supported output formats.
PulseView now officially supports output formats, so list them too.
Daniel Elstner [Thu, 23 Jul 2015 21:31:25 +0000 (23:31 +0200)]
Build: Make hardcoded version override git tag
Reintroduce the hard-coded version number in CMakeList.txt, but
still check for a tagged version. If the hard-coded version is
more recent than the latest tag, then use that but with a "-pre"
suffix in place of the patch level.
In either case, still append the revision hash and possibly the
dirty flag to the version, unless git HEAD exactly matches a tag.
Daniel Elstner [Sat, 18 Jul 2015 20:47:11 +0000 (22:47 +0200)]
Build: Use -dirty version suffix for local changes
Pass --dirty to git describe. This needed a slight hack to
GetGitRevisionDescription.cmake to make it work. Also pass
--tags to make git include lightweight tags in its search.
Daniel Elstner [Sat, 18 Jul 2015 19:36:51 +0000 (21:36 +0200)]
build: Derive PulseView version from git tags
Derive the PulseView version numbers and suffix from the git
repository if available. In order to make builds from source
tarballs work, also include a generated VERSION file in the
source package generated by CPack.
The included GetGitRevisionDescription.cmake file is a copy
from the https://github.com/rpavlik/cmake-modules repository.
Uwe Hermann [Sat, 25 Jul 2015 16:05:11 +0000 (18:05 +0200)]
Minor whitespace fixes.
Soeren Apel [Fri, 24 Jul 2015 05:55:29 +0000 (07:55 +0200)]
Implement "always zoom to fit" feature
Soeren Apel [Thu, 23 Jul 2015 21:30:44 +0000 (23:30 +0200)]
Fix #121 by implementing sticky scrolling
Soeren Apel [Thu, 23 Jul 2015 18:48:42 +0000 (20:48 +0200)]
Tests: Add required files to CMakeLists.txt
Soeren Apel [Thu, 23 Jul 2015 18:48:21 +0000 (20:48 +0200)]
Session: Clear signal data before starting capture
Uwe Hermann [Thu, 23 Jul 2015 15:07:21 +0000 (17:07 +0200)]
decoderstack: Fix incorrect end sample number.
PulseView was invoking srd_session_send() with an incorrect end
sample number (and thus incorrect sample count).
Example 1:
5000000 samples, unitsize 1
Before the fix:
srd: Calling decode(), start sample 0, end sample
5000000 (
5000000 samples, 4096 bytes, unitsize = 1), instance am230x.
srd: Calling decode(), start sample 4096, end sample
5004096 (
5000000 samples, 4096 bytes, unitsize = 1), instance am230x.
srd: Calling decode(), start sample 8192, end sample
5008192 (
5000000 samples, 4096 bytes, unitsize = 1), instance am230x.
[...]
srd: Calling decode(), start sample
4988928, end sample
9988928 (
5000000 samples, 4096 bytes, unitsize = 1), instance am230x.
srd: Calling decode(), start sample
4993024, end sample
9993024 (
5000000 samples, 4096 bytes, unitsize = 1), instance am230x.
srd: Calling decode(), start sample
4997120, end sample
9997120 (
5000000 samples, 2880 bytes, unitsize = 1), instance am230x.
After the fix:
srd: Calling decode(), start sample 0, end sample 4096 (4096 samples, 4096 bytes, unitsize = 1), instance am230x.
srd: Calling decode(), start sample 4096, end sample 8192 (4096 samples, 4096 bytes, unitsize = 1), instance am230x.
srd: Calling decode(), start sample 8192, end sample 12288 (4096 samples, 4096 bytes, unitsize = 1), instance am230x.
[...]
srd: Calling decode(), start sample
4988928, end sample
4993024 (4096 samples, 4096 bytes, unitsize = 1), instance am230x.
srd: Calling decode(), start sample
4993024, end sample
4997120 (4096 samples, 4096 bytes, unitsize = 1), instance am230x.
srd: Calling decode(), start sample
4997120, end sample
5000000 (2880 samples, 2880 bytes, unitsize = 1), instance am230x.
Example 2: 5000 samples, unitsize 5
Before the fix:
srd: Calling decode(), start sample 0, end sample 5000 (5000 samples, 4095 bytes, unitsize = 5), instance z80.
srd: Calling decode(), start sample 819, end sample 5819 (5000 samples, 4095 bytes, unitsize = 5), instance z80.
srd: Calling decode(), start sample 1638, end sample 6638 (5000 samples, 4095 bytes, unitsize = 5), instance z80.
srd: Calling decode(), start sample 2457, end sample 7457 (5000 samples, 4095 bytes, unitsize = 5), instance z80.
srd: Calling decode(), start sample 3276, end sample 8276 (5000 samples, 4095 bytes, unitsize = 5), instance z80.
srd: Calling decode(), start sample 4095, end sample 9095 (5000 samples, 4095 bytes, unitsize = 5), instance z80.
srd: Calling decode(), start sample 4914, end sample 9914 (5000 samples, 430 bytes, unitsize = 5), instance z80.
After the fix:
srd: Calling decode(), start sample 0, end sample 819 (819 samples, 4095 bytes, unitsize = 5), instance z80.
srd: Calling decode(), start sample 819, end sample 1638 (819 samples, 4095 bytes, unitsize = 5), instance z80.
srd: Calling decode(), start sample 1638, end sample 2457 (819 samples, 4095 bytes, unitsize = 5), instance z80.
srd: Calling decode(), start sample 2457, end sample 3276 (819 samples, 4095 bytes, unitsize = 5), instance z80.
srd: Calling decode(), start sample 3276, end sample 4095 (819 samples, 4095 bytes, unitsize = 5), instance z80.
srd: Calling decode(), start sample 4095, end sample 4914 (819 samples, 4095 bytes, unitsize = 5), instance z80.
srd: Calling decode(), start sample 4914, end sample 5000 (86 samples, 430 bytes, unitsize = 5), instance z80.
Soeren Apel [Tue, 14 Jul 2015 16:30:22 +0000 (18:30 +0200)]
MainBar: Re-check sample count/rate when needed
Soeren Apel [Wed, 1 Jul 2015 14:36:32 +0000 (16:36 +0200)]
HardwareDevice: Whitespace fix
Soeren Apel [Wed, 1 Jul 2015 14:35:29 +0000 (16:35 +0200)]
Fix #602 by keeping track of device state internally
Joel Holdsworth [Sat, 4 Jul 2015 23:35:09 +0000 (00:35 +0100)]
Added initial Doxygen configuration
Uwe Hermann [Sat, 18 Jul 2015 16:08:24 +0000 (18:08 +0200)]
Build-depend on the upcoming libsigrok + libsigrokdecode 0.4.0.
Uwe Hermann [Sat, 18 Jul 2015 15:47:44 +0000 (17:47 +0200)]
Bump version to 0.3.0 (the upcoming next major release).
Uwe Hermann [Sat, 18 Jul 2015 15:46:04 +0000 (17:46 +0200)]
Append "-git" to the version string.
This avoids confusion with the released tarballs.
This fixes bug #609.
Soeren Apel [Tue, 14 Jul 2015 16:27:27 +0000 (18:27 +0200)]
MainBar: Change calling order and flag usage for sample count, too
Soeren Apel [Mon, 13 Jul 2015 19:00:10 +0000 (21:00 +0200)]
MainBar: Fix #594 by changing calling order and flag usage
The reason that the sampling rate button disappears after a
sampling rate was selected is that there's a flaw in the
chain of events:
on_sample_rate_changed() which calls
commit_sample_rate() which sets updating_sample_rate_ and calls
on_config_changed() which calls
update_sample_rate_selector() which...
...clears the list and exits because updating_sample_rate_ is set.
Joel Holdsworth [Sun, 28 Jun 2015 09:23:29 +0000 (10:23 +0100)]
View: Update signals without destroying layout
This fixes bug #536
Joel Holdsworth [Sat, 13 Jun 2015 09:46:39 +0000 (10:46 +0100)]
RowItemOwner: Added list_by_type
Joel Holdsworth [Sat, 13 Jun 2015 09:19:14 +0000 (10:19 +0100)]
RowItemOwner: Added list_row_item_owners
Bartosz Golaszewski [Mon, 29 Jun 2015 13:17:54 +0000 (15:17 +0200)]
InputOutput: replace nullptr with boost::none in Double()
Passing nullptr as the fourth argument in Double's constructor
seems to build fine on x86, but causes build failures on many
other architectures.
Replace it with boost::none.
Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Soeren Apel [Sat, 27 Jun 2015 11:33:59 +0000 (13:33 +0200)]
Signal: Fix index variable declaration
Soeren Apel [Sat, 27 Jun 2015 11:33:14 +0000 (13:33 +0200)]
Fix #501 by deactivating the autocompleter for the signal popup
Soeren Apel [Sat, 27 Jun 2015 11:31:35 +0000 (13:31 +0200)]
Device: Fix bug introduced by
b48daed which broke analog channels
Soeren Apel [Sat, 27 Jun 2015 11:31:03 +0000 (13:31 +0200)]
Fix #590 by adding menu actions to main window also
Soeren Apel [Sat, 27 Jun 2015 11:30:28 +0000 (13:30 +0200)]
View: Use more reasonable default time scale
Uwe Hermann [Thu, 11 Jun 2015 18:19:09 +0000 (20:19 +0200)]
importmenu: Fix libsigrokcxx.hpp #include.
Uwe Hermann [Thu, 11 Jun 2015 18:17:56 +0000 (20:17 +0200)]
test: session: Fix a compiler warning/error.
[ 30%] Building CXX object
test/CMakeFiles/pulseview-test.dir/__/pv/storesession.cpp.o
[...]/pv/session.cpp:408:62: error: unused parameter ‘device’ [-Werror=unused-parameter]
void Session::sample_thread_proc(shared_ptr<devices::Device> device,
Joel Holdsworth [Sun, 12 Apr 2015 14:08:51 +0000 (15:08 +0100)]
Support specifying input formats on the command line
Also removes the signal dispatch that was previously used to delay
the file loading until after the constructor.
Joel Holdsworth [Sun, 12 Apr 2015 15:32:38 +0000 (16:32 +0100)]
Moved default device selection into MainWindow
Joel Holdsworth [Sun, 12 Apr 2015 15:24:06 +0000 (16:24 +0100)]
MainWindow: Tidied restore_ui_settings
Joel Holdsworth [Sun, 12 Apr 2015 15:12:55 +0000 (16:12 +0100)]
View: Support having no selected device
Joel Holdsworth [Sun, 12 Apr 2015 15:10:05 +0000 (16:10 +0100)]
DeviceToolButton: Support having no selected device
Joel Holdsworth [Sun, 12 Apr 2015 15:03:55 +0000 (16:03 +0100)]
MainBar: Support having no selected device
Joel Holdsworth [Sun, 12 Apr 2015 14:54:29 +0000 (15:54 +0100)]
Replaced NULL with nullptr
Joel Holdsworth [Sun, 12 Apr 2015 13:24:58 +0000 (14:24 +0100)]
Reordered argument handling
Joel Holdsworth [Thu, 22 Jan 2015 02:48:19 +0000 (21:48 -0500)]
MainWindow: Added import options dialog
Joel Holdsworth [Sat, 17 Jan 2015 15:58:21 +0000 (15:58 +0000)]
MainWindow: Added initial import menu with no options
Joel Holdsworth [Sat, 28 Mar 2015 13:25:41 +0000 (13:25 +0000)]
MainWindow: Added format parameters to load_file
Joel Holdsworth [Fri, 3 Apr 2015 14:54:22 +0000 (15:54 +0100)]
Added InputFile
Joel Holdsworth [Fri, 17 Apr 2015 17:15:12 +0000 (18:15 +0100)]
Session: Support capture before the sigrok::Device object has been created
Joel Holdsworth [Fri, 17 Apr 2015 23:22:02 +0000 (00:22 +0100)]
Session: Use Device::read_config to read sample limit
Joel Holdsworth [Fri, 17 Apr 2015 23:09:03 +0000 (00:09 +0100)]
Device: Replaced Session::read_sample_rate with read_config
Joel Holdsworth [Fri, 17 Apr 2015 17:08:39 +0000 (18:08 +0100)]
Session: Converted data_mutex_ into a std::recursive_mutex
Joel Holdsworth [Fri, 17 Apr 2015 17:23:04 +0000 (18:23 +0100)]
Session: Removed device parameter from update_signals
Joel Holdsworth [Mon, 6 Apr 2015 09:14:30 +0000 (10:14 +0100)]
Session: Made update_signals handle having a missing device gracefully
Joel Holdsworth [Mon, 6 Apr 2015 09:11:59 +0000 (10:11 +0100)]
Session: Catch errors listing the config keys
Joel Holdsworth [Mon, 6 Apr 2015 09:08:40 +0000 (10:08 +0100)]
binding::Device: Catch errors listing the config keys
Joel Holdsworth [Mon, 6 Apr 2015 09:06:34 +0000 (10:06 +0100)]
MainBar: Catch errors listing the config keys
Joel Holdsworth [Fri, 3 Apr 2015 15:11:55 +0000 (16:11 +0100)]
Added devices::File as a common base of file devices
Joel Holdsworth [Sat, 28 Mar 2015 18:54:21 +0000 (18:54 +0000)]
DeviceManager: Deprecated build_display_name and friends
Joel Holdsworth [Fri, 3 Apr 2015 10:35:49 +0000 (11:35 +0100)]
devices::Device: Moved in full_name and display_name
Joel Holdsworth [Sun, 22 Feb 2015 20:21:15 +0000 (20:21 +0000)]
Use device::Devices to represent sigrok Devices
Joel Holdsworth [Sat, 28 Mar 2015 22:03:23 +0000 (22:03 +0000)]
LogicSignal: Tidied up forward declarations
Joel Holdsworth [Sat, 28 Mar 2015 21:13:29 +0000 (21:13 +0000)]
Connect: Tidied up forward declarations
Joel Holdsworth [Sat, 28 Mar 2015 19:59:48 +0000 (19:59 +0000)]
DeviceManager: Tidied up forward declarations
Joel Holdsworth [Sun, 22 Feb 2015 20:20:31 +0000 (20:20 +0000)]
Session: Fixed header guard
Joel Holdsworth [Sat, 17 Jan 2015 17:03:56 +0000 (17:03 +0000)]
Added pv::widgets::ImportMenu
Joel Holdsworth [Sun, 22 Feb 2015 14:56:56 +0000 (14:56 +0000)]
pv::binding::InputOutput: Bound up more integer types and Bool
Joel Holdsworth [Mon, 2 Feb 2015 03:18:46 +0000 (20:18 -0700)]
Session: Simplified logic of set_device
Joel Holdsworth [Sat, 28 Mar 2015 13:12:10 +0000 (13:12 +0000)]
StoreSession: Use DeviceManager to get context
Joel Holdsworth [Sat, 28 Mar 2015 13:08:03 +0000 (13:08 +0000)]
DeviceManager: Added const context accessor
Joel Holdsworth [Sat, 28 Mar 2015 12:54:41 +0000 (12:54 +0000)]
Session: Made update_signals non-destructive
Joel Holdsworth [Sat, 28 Mar 2015 12:54:12 +0000 (12:54 +0000)]
LogicSignal: Added set_logic_data
Joel Holdsworth [Sat, 28 Mar 2015 12:35:50 +0000 (12:35 +0000)]
SignalData: Renamed get_max_sample_count
Joel Holdsworth [Sat, 28 Mar 2015 12:30:42 +0000 (12:30 +0000)]
pv::data::Logic: Renamed get_num_channels and fixed return types
Joel Holdsworth [Sat, 28 Mar 2015 12:10:14 +0000 (12:10 +0000)]
Session: Store signals_ in an unordered_set
Bartosz Golaszewski [Fri, 3 Apr 2015 13:04:38 +0000 (15:04 +0200)]
Device: Add bindings for SR_CONF_POWER_OFF and SR_CONF_PROBE_FACTOR.
These options are used by baylibre-acme driver and should be available
from pulseview configuration pop-up.
Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Uwe Hermann [Wed, 8 Apr 2015 23:56:04 +0000 (01:56 +0200)]
android: Add missing libintl.so to APK.
This fixes bug #575.
Uwe Hermann [Sat, 28 Feb 2015 19:39:06 +0000 (20:39 +0100)]
Add a workaround for QTBUG-22829.
Qt4's MOC has issues parsing some C++ constructs, yielding errors like:
[...]/include/boost/type_traits/detail/has_binary_operator.hp:50:
Parse error at "BOOST_JOIN"
Full details:
https://bugreports.qt.io/browse/QTBUG-22829
Use -DBOOST_NEXT_PRIOR_HPP_INCLUDED as MOC option to workaround these
issues. This is currently sufficient, however, depending on the future
PulseView code it may be necessary to add further options mentioned in the
above bugreport (e.g. BOOST_TT_HAS_OPERATOR_HPP_INCLUDED,
BOOST_LEXICAL_CAST_INCLUDED, BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION).
This fixes bug #532 (fixing the build on at least Mac OS X and MinGW).
Vladislav Ivanov [Thu, 26 Feb 2015 18:29:59 +0000 (21:29 +0300)]
win32: Fix the Windows build (namespace pollution via windows.h).
One of the multiple build errors:
In file included from [...]/windows.h:72:0,
from [...]/boost/detail/interlocked.hpp:27,
from [...]/boost/thread/win32/thread_primitives.hpp:18,
from [...]/boost/thread/win32/thread_data.hpp:11,
from [...]/boost/thread/thread_only.hpp:15,
from [...]/boost/thread/thread.hpp:12,
from [...]/boost/thread.hpp:13,
from [...]/pulseview/pv/session.hpp:32,
from [...]/pulseview/pv/devicemanager.cpp:22:
[...]/libsigrok/enums.hpp:153:32: error: expected unqualified-id before numeric constant
static const Quantity * const DIFFERENCE;
^
windows.h is included by boost/thread.hpp, hence the conflict can be avoided
by defining NOGDI and NORESOURCE before including thread.hpp.
This fixes bug #517.
Uwe Hermann [Thu, 26 Feb 2015 19:25:27 +0000 (20:25 +0100)]
Bring back sigrok-logo-notext.png (needed on Android).
On Android sigrok-logo-notext.png is used as app icon, and the build
thus fails if it is not available.
Changing android/custom_rules.xml to use the SVG version instead doesn't
seem to work. It appears Android doesn't really support SVGs as app
icons, or at least not without further changes. Continue using the PNG
for now to keep the Android build in a working state.
Uwe Hermann [Fri, 20 Feb 2015 10:25:45 +0000 (11:25 +0100)]
Drop unneeded /* ENABLE_DECODE */ comments.
(to match the rest of the code base where these are not used either)
Bartosz Golaszewski [Wed, 18 Feb 2015 16:19:08 +0000 (17:19 +0100)]
mainwindow: add missing checks against ENABLE_DECODE
Pulseview doesn't compile with -DENABLE_DECODE=FALSE. Add missing
checks against ENABLE_DECODE in mainwindow.cpp/.hpp.
Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Aurelien Jacobs [Thu, 12 Feb 2015 14:46:42 +0000 (15:46 +0100)]
device: ensure bind_enum() checks availability of Capability::LIST.
This avoids a segfault calling bind_enum() with a non-initialized gvar_list.
This closes bug #453.
Uwe Hermann [Fri, 30 Jan 2015 18:39:30 +0000 (19:39 +0100)]
Fix the build for older glibmm versions.
With older glibmm versions the following error occured:
pv/toolbars/mainbar.cpp:228:6: error: no match for ‘operator!’ (operand
type is ‘Glib::VariantContainerBase’)
if (!gvar_dict) {
^
Work around the above issue by using .gobj() and not relying on
"Glib::VariantBase::operator BoolExpr() const", which was only
added in glibmm 2.36.
This fixes bug #548.
Tested on a Debian stable system with glibmm 2.32.1 and Boost 1.49.
Joel Holdsworth [Wed, 21 Jan 2015 06:53:29 +0000 (01:53 -0500)]
MainWindow: Use extension to populate filter
Joel Holdsworth [Wed, 21 Jan 2015 01:14:43 +0000 (20:14 -0500)]
Added pv::dialogs::InputOutputOptions
Joel Holdsworth [Wed, 21 Jan 2015 01:11:22 +0000 (20:11 -0500)]
Added InputOutput binding
Joel Holdsworth [Sat, 17 Jan 2015 19:35:33 +0000 (19:35 +0000)]
Added initial support for export
Joel Holdsworth [Wed, 21 Jan 2015 01:28:38 +0000 (20:28 -0500)]
pv::prop::Int: Fixed unsigned int binding
Joel Holdsworth [Sat, 17 Jan 2015 22:00:52 +0000 (22:00 +0000)]
Modified header guards to match file names
Joel Holdsworth [Sat, 17 Jan 2015 21:58:20 +0000 (21:58 +0000)]
Renamed pv::binding::DeviceOptions and DecoderOptions to Device and Decoder
Joel Holdsworth [Sat, 17 Jan 2015 21:45:04 +0000 (21:45 +0000)]
Moved pv::prop:bindings classes into pv::bindings namespace