Hi all, I've just updated the Boost visualizers wiki page at https://svn.boost.org/trac/boost/wiki/DebuggerVisualizers I updated the visualizer for Boost.MultiIndex, which did not work since Boost 1.35. I also added new visualizers for Boost.DateTime (ptime and time_duration) and a simple boost::shared_ptr visualizer. The visualizers are available for checkout via SVN at https://svn.boost.org/svn/boost/sandbox/boost_docs/subprojects/DebuggerVisua... Cheers, Filip
On Fri, Apr 3, 2009 at 8:16 AM, Filip Konvička
Hi all,
I've just updated the Boost visualizers wiki page at
https://svn.boost.org/trac/boost/wiki/DebuggerVisualizers
I updated the visualizer for Boost.MultiIndex, which did not work since Boost 1.35.
I also added new visualizers for Boost.DateTime (ptime and time_duration) and a simple boost::shared_ptr visualizer.
The visualizers are available for checkout via SVN at
https://svn.boost.org/svn/boost/sandbox/boost_docs/subprojects/DebuggerVisua...
Thank you very much for your continued effort! I'll download these shortly. --Michael Fawcett
On Fri, Apr 3, 2009 at 8:16 AM, Filip Konvička
wrote: Hi all,
I've just updated the Boost visualizers wiki page at
https://svn.boost.org/trac/boost/wiki/DebuggerVisualizers
I updated the visualizer for Boost.MultiIndex, which did not work since Boost 1.35.
I also added new visualizers for Boost.DateTime (ptime and time_duration) and a simple boost::shared_ptr visualizer.
The visualizers are available for checkout via SVN at
https://svn.boost.org/svn/boost/sandbox/boost_docs/subprojects/Debugger Visualizers
Thank you very much for your continued effort! I'll download these shortly.
Hello, It's really interesting and probably an undermined power feature of MSVS. I've appended the autoexp.dat for my VS2008SP1 and given demo.cpp a try. But I have not noticed any apparent benefit. I believe I must have missed something abvious. Thanks for any help. B/Rgds Max
Well, you need not to append them, but insert into proper section of this
file -- it has a headers like in the ini files [header]. So, if you
appended it, you added them into wrong section. As far as I rememmber, You
need to insert them into [AutoExpand] or [Visualizers], not the last
[hresult] sections
HTH,
Andrey
On Sat, 04 Apr 2009 02:20:29 -0600, Max
On Fri, Apr 3, 2009 at 8:16 AM, Filip Konvička
wrote: Hi all,
https://svn.boost.org/svn/boost/sandbox/boost_docs/subprojects/Debugger Visualizers
Thank you very much for your continued effort! I'll download these shortly.
Hello,
It's really interesting and probably an undermined power feature of MSVS.
I've appended the autoexp.dat for my VS2008SP1 and given demo.cpp a try. But I have not noticed any apparent benefit.
I believe I must have missed something abvious.
Thanks for any help.
B/Rgds Max
Well, you need not to append them, but insert into proper section of this file -- it has a headers like in the ini files [header]. So, if you appended it, you added them into wrong section. As far as I rememmber, You need to insert them into [AutoExpand] or [Visualizers], not the last [hresult] sections
Yes, it is the [Visualizers] section. We say so in the wiki: http://tinyurl.com/d9qqfo Cheers, Filip
P.S.: I was asked several times why we need to use the headers for visualization. There are two situations that require this. First, when a template class has multiple base classes and we need to access data in a base class that is not listed first, we need to know its type to be able to cast the original object. The trouble is in that we may not use any member typedefs that typically appear in the main class. The general rule is that the debugger does not see any aliases introduced using typedef. As an example, we may not use (A::some_base_class*)&$e This is required for visualizing Boost.MultiIndex. So we work around this by introducing our own classes that mimic the layout of the original classes and allow us to access the appropriate base classes (or do some other dark magic). The other case (introduced by this update) is the need to call custom code for visualization. We use this for visualizing boost::posix_time::ptime. There is no simple transformation of the internal ptime data to a human readable form - so we use a trick that allows us to call a user function during visualization. The function must be simple enough (no constructors involved in the call, well-matching argument types etc.) and it must be "accessible" - which means visible and actually present in the translation unit (which we enforce by having a global initializer call it in each translation unit). I hope that this explains why we need the headers. Cheers, Filip
Hi Filip, Thanks for your hardwork with these Visualizers. I'm using Boost 1.39 with vs2008 and have the up to date version of the autoexp contents you've uploaded. I'm finding the multi-index visualizer works well as long as I only have one index; I get a preview and a nice list of children. As soon as I add a second index I can no longer easily see the contents of my container. Is this expected? Regards, Andy My code is below: #include "mic_visualizer.hpp" #include <boost/multi_index_container.hpp> #include <boost/multi_index/ordered_index.hpp> #include <boost/multi_index/identity.hpp> #include <boost/multi_index/member.hpp> #include <boost/multi_index/sequenced_index.hpp> #define BOOST_MULTI_INDEX_LIMIT_INDEXED_BY_SIZE 5 #define BOOST_MULTI_INDEX_LIMIT_TAG_SIZE 3 #define BOOST_MULTI_INDEX_LIMIT_COMPOSITE_KEY_SIZE 5 typedef boost::multi_index_container < int, boost::multi_index::indexed_by < boost::multi_index::sequenced<>, boost::multi_index::ordered_unique < boost::multi_index::identity<int> > > > table_entry_set; VISUALIZE_MULTI_INDEX_CONTAINER(table_entry_set); int main(void) { table_entry_set new_set; new_set.get<0>().insert(new_set.get<0>().begin(), 21); new_set.get<0>().insert(new_set.get<0>().begin(), 2); return 1; } -- View this message in context: http://boost.2283326.n4.nabble.com/MSVC-Visualizers-Update-tp2590626p3700846... Sent from the Boost - Users mailing list archive at Nabble.com.
Speaking of the MSVC Visualizers, is there a link to the visualizers anywhere on the boost web site? I can't recall ever seeing one. I think this would be a nice thing to have - perhaps on the "Getting Started on Windows" page. Visualizers and the ability to add custom entries is one of the best things about Visual Studio. I think most boost users don't even know that there are some boost oriented visualizers out there. -- Bill
participants (6)
-
Andrey Tcherepanov
-
Andy
-
Bill Buklis
-
Filip Konvička
-
Max
-
Michael Fawcett