Class EventBasedCounter
java.lang.Object
org.djutils.event.EventProducer
org.djutils.stats.summarizers.event.EventBasedCounter
- All Implemented Interfaces:
Serializable
,EventListener
,org.djutils.event.EventListenerInterface
,org.djutils.event.EventProducerInterface
,CounterInterface
public class EventBasedCounter extends org.djutils.event.EventProducer implements org.djutils.event.EventListenerInterface, CounterInterface
The Counter class defines a statistics event counter. It extends an EventProducer so it can keep listeners informed about new
observations, and it listens to external events to be able to receive observations, in addition to the ingest(...) method.
Copyright (c) 2002-2020 Delft University of Technology, Jaffalaan 5, 2628 BX Delft, the Netherlands. All rights reserved. See
for project information https://simulation.tudelft.nl. The DSOL
project is distributed under a three-clause BSD-style license, which can be found at
https://simulation.tudelft.nl/dsol/3.0/license.html.
- Author:
- Alexander Verbraeck, Peter Jacobs
- See Also:
- Serialized Form
-
Field Summary
-
Constructor Summary
Constructors Constructor Description EventBasedCounter(String description)
Construct a new EventBasedCounter. -
Method Summary
Modifier and Type Method Description protected void
fireEvents()
Method that can be overridden to fire own events or additional events when ingesting an observation.long
getCount()
Returns the current counter value.String
getDescription()
Returns the description of the counter.long
getN()
Returns the current number of observations.Serializable
getSourceId()
long
ingest(long value)
Process one observed value.void
initialize()
Initializes the counter.void
notify(org.djutils.event.EventInterface event)
String
toString()
Methods inherited from class org.djutils.event.EventProducer
addListener, addListener, addListener, addListener, fireEvent, fireEvent, fireEvent, fireEvent, fireEvent, fireEvent, fireEvent, fireEvent, fireEvent, fireTimedEvent, fireTimedEvent, fireTimedEvent, fireTimedEvent, fireTimedEvent, fireTimedEvent, fireTimedEvent, getEventTypesWithListeners, getListenerReferences, hasListeners, numberOfListeners, removeAllListeners, removeAllListeners, removeListener
-
Constructor Details
-
EventBasedCounter
Construct a new EventBasedCounter.- Parameters:
description
- String; the description for this counter
-
-
Method Details
-
getSourceId
- Specified by:
getSourceId
in interfaceorg.djutils.event.EventProducerInterface
- Specified by:
getSourceId
in classorg.djutils.event.EventProducer
-
getCount
public long getCount()Returns the current counter value.- Specified by:
getCount
in interfaceCounterInterface
- Returns:
- long; the counter value
-
getN
public long getN()Returns the current number of observations.- Specified by:
getN
in interfaceCounterInterface
- Returns:
- long; the number of observations
-
notify
public void notify(org.djutils.event.EventInterface event)- Specified by:
notify
in interfaceorg.djutils.event.EventListenerInterface
-
ingest
public long ingest(long value)Process one observed value.- Specified by:
ingest
in interfaceCounterInterface
- Parameters:
value
- long; the value to process- Returns:
- long; the value
-
fireEvents
protected void fireEvents()Method that can be overridden to fire own events or additional events when ingesting an observation. -
initialize
public void initialize()Initializes the counter.- Specified by:
initialize
in interfaceCounterInterface
-
getDescription
Returns the description of the counter.- Specified by:
getDescription
in interfaceCounterInterface
- Returns:
- String; the description
-
toString
-