API reference - Class AbsoluteProgressNotation used in Ruby API documentation Description: A progress reporter counting progress in absolute units Class hierarchy: AbsoluteProgress » Progress An absolute progress reporter counts from 0 upwards without a known limit. A unit value is used to convert the value to a bar value. One unit corresponds to 100% on the bar. For formatted output, a format string can be specified as well as a unit value by which the current value is divided before it is formatted. The progress can be configured to have a description text, a title and a format. The "inc" method increments the value, the "set" or "value=" methods set the value to a specific value. While one of these three methods is called, they will run the event loop in regular intervals. That makes the application respond to mouse clicks, specifically the Cancel button on the progress bar. If that button is clicked, an exception will be raised by these methods. The progress object must be destroyed explicitly in order to remove the progress status bar. The following sample code creates a progress bar which displays the current count as "Megabytes". For the progress bar, one percent corresponds to 16 kByte: p = RBA::AbsoluteProgress::new("test") p.format = "%.2f MBytes" p.unit = 1024*16 p.format_unit = 1024*1024 begin 10000000.times { p.inc } ensure p.destroy end This class has been introduced in version 0.23. Public constructors
Public methods
Detailed descriptionvoid createDescription: Ensures the C++ object is created Use this method to ensure the C++ object is created, for example to ensure that resources are allocated. Usually C++ objects are created on demand and not necessarily when the script object is created. void destroyDescription: Explicitly destroy the object Explicitly destroy the object on C++ side if it was owned by the Ruby interpreter. Subsequent access to this object will throw an exception. If the object is not owned by Ruby, this method will do nothing. [const] bool destroyed?Description: Returns a value indicating whether the object was already destroyed This method returns true, if the object was destroyed, either explicitly or by the C++ side. The latter may happen, if the object is owned by a C++ object which got destroyed itself. void format=(string format)Description: sets the output format (sprintf notation) for the progress text void format_unit=(double unit)Description: Sets the format unit This is the unit used for formatted output. The current count is divided by the format unit to render the value passed to the format string. AbsoluteProgress incDescription: Increments the progress value [const] bool is_const_object?Description: Returns a value indicating whether the reference is a const reference This method returns true, if self is a const reference. In that case, only const methods may be called on self. [static] new AbsoluteProgress new(string desc)Description: Creates a relative progress reporter with the given description and maximum value The reported progress will be 0 to 100% for values between 0 and the maximum value. The values are always integers. Double values cannot be used properly. [static] new AbsoluteProgress new(string desc,unsigned int max_value)Description: Creates a relative progress reporter with the given description and maximum value The reported progress will be 0 to 100% for values between 0 and the maximum value. The values are always integers. Double values cannot be used properly. The yield interval specifies, how often the event loop will be triggered. When the yield interval is 10 for example, the event loop will be executed every tenth call of inc or set. void resolution=(double res)Description: Sets the resolution for the output (granularity) This setting is independent of the format and controls the update frequency. It is the step by which the ratio count/unit must increase before a new value is reported. void set(unsigned int value,bool force_yield)Description: Sets the progress value This method is equivalent to value=, but it allows to force the event loop to be triggered. If "force_yield" is true, the event loop will be triggered always, irregardless of the yield interval specified in the constructor. void unit=(double unit)Description: Sets the unit Specifies the count value corresponding to 1 percent on the progress bar. By default, the current value divided by the unit is used to create the formatted value from the output string. Another attribute is provided (format_unit=) to specify a separate unit for that purpose. void value=(unsigned int value)Description: Sets the progress value |