Page 12 of 15

Re: New PerfMon Plugin

Posted: April 26th, 2018, 6:56 pm
by tjhrulz
And we are live, documentation for the plugin can be found at https://docs.rainmeter.net/manual-beta/plugins/usagemonitor/ and the plugin is included in the latest Rainmeter beta (4.2 Revision 3043)

Re: New PerfMon Plugin

Posted: April 26th, 2018, 8:20 pm
by Yincognito
tjhrulz wrote:And we are live, documentation for the plugin can be found at https://docs.rainmeter.net/manual-beta/plugins/usagemonitor/ and the plugin is included in the latest Rainmeter beta (4.2 Revision 3043)
If you're live, I'm getting alive too - time for a major update of my skin for v4.2. This plugin is worth it, according to the performance note in its documentation. Assuming I still remember how to tell Rainmeter to write my name on the screen and such, of course ... :???:

But first, a check on good'ol' Microsoft for Platform Update - things evolved quite a bit since I last edited a Rainmeter skin... :oops:

Re: New PerfMon Plugin

Posted: April 26th, 2018, 10:06 pm
by SilverAzide
tjhrulz wrote:And we are live, documentation for the plugin can be found at https://docs.rainmeter.net/manual-beta/plugins/usagemonitor/ and the plugin is included in the latest Rainmeter beta (4.2 Revision 3043)
Let me know where to send that handle of rum I promised you! :beer:

Re: New PerfMon Plugin

Posted: April 27th, 2018, 12:11 am
by raiguard
tjhrulz wrote:And we are live, documentation for the plugin can be found at https://docs.rainmeter.net/manual-beta/plugins/usagemonitor/ and the plugin is included in the latest Rainmeter beta (4.2 Revision 3043)
Holy smokes. This plugin... it just, works. It's simply fantastic. It's a no-nonsense, straight-to-the-point plugin that gets the job done. I am thoroughly impressed and very grateful that you took the time to implement it. :17good

/end cheesy thankfulness

Upon initial testing, NumOfDecimals does not appear to be working for me. I got around that by using SilverAzide's fixedprecisionformat script (which I was going to do anyway), but this should still be looked at.

Re: New PerfMon Plugin

Posted: April 27th, 2018, 12:17 am
by jsmorley
raiguard wrote:Holy smokes. This plugin... it just, works. It's simply fantastic. It's a no-nonsense, straight-to-the-point plugin that gets the job done. I am thoroughly impressed and very grateful that you took the time to implement it. :17good

/end cheesy thankfulness

Upon initial testing, NumOfDecimals does not appear to be working for me. I got around that by using SilverAzide's fixedprecisionformat script (which I was going to do anyway), but this should still be looked at.
NumOfDecimals is a String meter option that only operates on the string value of the measure bound to the meter with MeasureName.

Does this clarify things any for you?

https://docs.rainmeter.net/manual-beta/plugins/usagemonitor/#NumberVsString

Re: New PerfMon Plugin

Posted: April 27th, 2018, 12:19 am
by raiguard
jsmorley wrote:NumOfDecimals is a String meter option that only operates on the string value of the measure bound to the meter with MeasureName.

Does this clarify things any for you?

https://docs.rainmeter.net/manual-beta/plugins/usagemonitor/#NumberVsString
Ah, thanks. I somehow failed to actually read that part of the documentation. My bad.

Re: New PerfMon Plugin

Posted: April 27th, 2018, 12:22 am
by SilverAzide
raiguard wrote:Upon initial testing, NumOfDecimals does not appear to be working for me. I got around that by using SilverAzide's fixedprecisionformat script (which I was going to do anyway), but this should still be looked at.
Just a note to add, I had to change my parameters to force number values, as jsmorley hinted at... For example:

IfTrueAction=[!SetVariable TextDiskWriteC [&LuaScript:FormatNumber([&MeasureDiskWriteC],4,'1k')]]
becomes
IfTrueAction=[!SetVariable TextDiskWriteC [&LuaScript:FormatNumber([&MeasureDiskWriteC:],4,'1k')]]

etc... once I did this, all worked perfectly.

Re: New PerfMon Plugin

Posted: April 27th, 2018, 12:29 am
by jsmorley
I really think a Lua script used as an inline section variable is the right way to go here, especially on a complicated skin, where you might have lots of UsageMonitor measures that are getting values like RAM, Disk IO, VRAM, Network and others that really need to have AutoScale applied. While it can be done natively, I'm not a huge fan of a bunch of extra Calc measures to just cart around extra copies of number values that you can "bind" String meters to.

Create one "host" script measure that has Disabled=1 on it, and use that to host the Lua auto-scale function that you use inline in Text options anywhere and as much as you need.

Re: New PerfMon Plugin

Posted: April 27th, 2018, 12:51 am
by jsmorley
Although we are chewing on a way to allow you to do this in the plugin itself. Stay tuned...

Re: New PerfMon Plugin

Posted: April 27th, 2018, 12:53 am
by raiguard
(SilverAzide)

Yeah, I already did that. It works flawlessly, just like always. :D

(jsmorley)

Ninja edit: If you do figure out a way for the plugin to do it natively, that'd be great. However, I'll probably just continue to use SilverAzide's script because of the "fixed precision" nature of it, to keep my gadgets looking nice and pretty. ;)

That's already what is going on. I did it slightly different from SilverAzide, though, and simply called the script in the text argument on each meter that needs it. Here's an example (most of the options are contained in the MeterStyles).

Code: Select all

[TopProcess1LabelString]
Meter=String
MeterStyle=StyleString | StyleStringProcessLabel
MeasureName=MeasureTopProcess1

[TopProcess1RamString]
Meter=String
MeterStyle=StyleString | StyleStringProcessRam
Text=[&MeasureFixedPrecisionFormatScript:FormatNumber([&MeasureTopProcessRam1:],[#fpfProcessRamDepth],'1k')]B

[TopProcess1PercentageString]
Meter=String
MeterStyle=StyleString | StyleStringRightAlign | StyleStringProcessPercentage
Text=[&MeasureFixedPrecisionFormatScript:FormatNumber([&MeasureTopProcess1:],[#fpfProcessCpuDepth],'0')]%

[TopProcess1Bar]
Meter=Bar
MeterStyle=StyleBar
MeasureName=MeasureTopProcess1
BarColor=#colorProcess1#
In less than an hour I was able to recreate what I had labored over for several hours before, because this plugin is just so fantastically made and easy to use:
ProcessMeter.gif