Re: [Gtkwave-users] Requests: signal name for bound process script, export SVG,
Brought to you by:
gtkwave,
joel1234567
From: <by...@nc...> - 2023-04-06 19:34:14
|
Hello Sujay, It looks like I misread your previous note...font color shouldn't be hard to do. I read it as new fonts, different font sizes, etc. I'd say open a bug requesting a feature enhancement request on github, which is where the current development for future versions is going on. Right now, I'm too busy to work on gtkwave as my day job is consuming most of my entire day. As a side note to everyone, Sourceforge at the point is just for bugfix maintenance releases. I keep the Sourceforge repo around so I have a known stable version that I can use at work. Thanks, -Tony -----------------------------------------From: "Sujay Phadke" To: gtk...@li... Cc: Sent: Thursday April 6 2023 12:48:21AM Subject: Re: [Gtkwave-users] Requests: signal name for bound process script, export SVG, Hi Tony, for #1, I was asking to have signal names visibility in the "translate filter" process. CMIIW, but what you've stated is for the "transaction filter" process mechanism. Yes, for the latter, we do get a simplified VCD with the signal name. But we don't get that for the former, which is easier to implement and use. In the former, a process only sees the raw data of the associated signal on STDIN, without the signal name. D0 D1 D2 It'd be advantageous to have the signal_name tag before the raw data streaming in (maybe with a controlling switch input so it doesn't break the flow for others?): D0 D1 D2 ..... I did look into the translate filter code (ptranslate.c). I think it can be done with some modifications to add_filter_callback_2() and pipeio For #3, I feel the performance is not going to be greatly impacted. We can already change the color of wave backgrounds with different colors, dynamically, based on the filters. I've not noticed any performance impact with this. Changing the font color would be part of the same code, but there isn't a way to do it at present. Thanks for your help. I know this is probably not a priority for you. Maybe I'll get to it sometime when I can understand the code flow better. best regards, Sujay On Mon, Mar 20, 2023 at 10:46 PM wrote: Hello Sujay, I understand what you want to do for #1. I'm telling you that from gtkwave's perspective, it's a different process, so it's not more efficient for me, though it might be for you as a developer. Note that passing signal names can be done along the "$" directive mechanism. I had to look at the source to see what it's doing as I wrote this code back in 2010... See save_nodes_to_export_generic() in vcd_saver.c and add whatever you need. Some information is already there. If you look at existing input coming from gtkwave, especially lines starting with "$", you'll see a line like this: $comment name val[7:0] $end ...I think such a name or something similar would give you what you need. For #3, yes, they're static. If gtkwave was a tool designed for generating documentation, it could certainly throw new fonts up at will, but doing so would be very bad for performance for an interactive tool. -Tony ----------------------------------------- From: "Sujay Phadke" To: gtk...@li... Cc: Sent: Monday March 20 2023 2:20:05AM Subject: Re: [Gtkwave-users] Requests: signal name for bound process script, export SVG, Hey Tony, Thanks for the reply. But I don't understand the responses 1 and 3: 1. Yes, a new process will be spawned for every signal. However, the logic of the executable will still remain the same. I want to do something like: if 'sig_name' == 'signal0': sys.stdout.write('Nonen') else: sys.stdout.write(readline) Unless we pass the metadata for the signal, I don't see how a separate process will help. Either passing in the signal name/id as metadata on stdin, alongwith the signal values, or calling the process with an argument in the TCL script would work. Is there a way to accomplish this? 3. I know about those rc variables. However, those are static aren't they? I want to be able to change the waveform text foreground color dynamically (per wave phase), just as we do with the background color (using the ?...? prefix before the value in the translation file). Is there a way to do this? On Mon, Mar 20, 2023 at 1:01 PM wrote: Thanks for your comments. 1) Each signal has a separate process instance / set of stdin/stdout attached to it for process filter, so even though you'd be able to use a single script, performance-wise it wouldn't really make too much difference as multiple processes will be created, anyway. 2) Unfortunately, I don't have the time for such a thing right now. PS and Framemaker do generate lists of vectors but I don't know if a converter exists from those to SVG. Someone else is working on a GTK4 port and I don't know if his changes will address this as I believe he was planning on collapsing the redundant print.c code into what signal.c/waveform.c already does. 3) The rc variables fontname_signals and fontname_waves should allow changing the fonts. See function do_font_load() in fonts.c. Best regards, -Tony ----------------------------------------- From: "Sujay Phadke" To: gtk...@li... Cc: Sent: Sunday March 19 2023 11:52:19PM Subject: [Gtkwave-users] Requests: signal name for bound process script, export SVG, Hello everyone, First of all, I must say the GTKWave is an excellent program. Kudos! I wanted to request the following: 1. Signal name for process filter script - currently, I have a python script used as a process filter for various signals. However, I want to parse the input data differently, based on what signal it is coming from. Example: for signal0 I may want to convert “-1” to “None”. However, I may not want to do that for signal1 The only want I know of currently is to attach different scripts to different signals, which is inefficient. Is there a way that the signal name could also be passed on to the script? 2. Please consider having the ability to export the current view as SVG file. It makes it much more efficient for presenting or pasting into a webpage. 3. Can the font color of the text inside the waves be changed? I can only change the background color of a waveform using the “?bgcolor?” prefix before the name. Problem is, some background colors are useless since the text inside is too light in color. I’m forced to use only dark backgrounds as a result. Best regards, Sujay _______________________________________________ Gtkwave-users mailing list Gtk...@li... [1] [2]https://lists.sourceforge.net/lists/listinfo/gtkwave-users [3] _______________________________________________ Gtkwave-users mailing list Gtk...@li... [4]https://lists.sourceforge.net/lists/listinfo/gtkwave-users [5] Links: ------ [1] https://lists.sourceforge.net/lists/listinfo/gtkwave-users [2] https://lists.sourceforge.net/lists/listinfo/gtkwave-users [3] https://lists.sourceforge.net/lists/listinfo/gtkwave-users [4] https://lists.sourceforge.net/lists/listinfo/gtkwave-users [5] https://lists.sourceforge.net/lists/listinfo/gtkwave-users |