Class: ProgressBar::ETA
- Inherits:
-
Meter
- Object
- Meter
- ProgressBar::ETA
- Includes:
- TimeFormatter
- Defined in:
- lib/progress_bar/meters/eta.rb
Instance Attribute Summary collapse
-
#count ⇒ Object
readonly
Returns the value of attribute count.
-
#max ⇒ Object
readonly
Returns the value of attribute max.
-
#start ⇒ Object
readonly
Returns the value of attribute start.
Instance Method Summary collapse
- #average ⇒ Object
- #elapsed ⇒ Object
-
#initialize(start, count, max) ⇒ ETA
constructor
A new instance of ETA.
- #remaining ⇒ Object
- #to_s ⇒ Object
- #width ⇒ Object
Constructor Details
#initialize(start, count, max) ⇒ ETA
Returns a new instance of ETA.
8 9 10 |
# File 'lib/progress_bar/meters/eta.rb', line 8 def initialize start, count, max @start, @count, @max = start, count, max end |
Instance Attribute Details
#count ⇒ Object (readonly)
Returns the value of attribute count.
6 7 8 |
# File 'lib/progress_bar/meters/eta.rb', line 6 def count @count end |
#max ⇒ Object (readonly)
Returns the value of attribute max.
6 7 8 |
# File 'lib/progress_bar/meters/eta.rb', line 6 def max @max end |
#start ⇒ Object (readonly)
Returns the value of attribute start.
6 7 8 |
# File 'lib/progress_bar/meters/eta.rb', line 6 def start @start end |
Instance Method Details
#average ⇒ Object
16 17 18 19 20 21 22 |
# File 'lib/progress_bar/meters/eta.rb', line 16 def average if count == 0 0 else elapsed / count end end |
#elapsed ⇒ Object
12 13 14 |
# File 'lib/progress_bar/meters/eta.rb', line 12 def elapsed Time.now - start end |
#remaining ⇒ Object
24 25 26 |
# File 'lib/progress_bar/meters/eta.rb', line 24 def remaining (max - count) * average end |
#to_s ⇒ Object
28 29 30 |
# File 'lib/progress_bar/meters/eta.rb', line 28 def to_s "[ETA: #{format_interval(remaining)}]" end |
#width ⇒ Object
32 33 34 |
# File 'lib/progress_bar/meters/eta.rb', line 32 def width format_interval(elapsed).length + 7 end |