|
SSJ V. 2.6. |
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object java.util.AbstractCollection<E> java.util.AbstractList<OE> umontreal.iro.lecuyer.util.TransformingList<E,ListWithStat.Node<E>> umontreal.iro.lecuyer.simevents.ListWithStat<E>
public class ListWithStat<E>
Implements a list with integrated statistical
probes to provide automatic collection of
statistics on the sojourn times of objects in the list and on the
size of the list as a function of time given by a simulator.
The automatic statistical collection can be
enabled or disabled for each list, to reduce overhead.
This class extends TransformingList
and transforms elements into nodes associating insertion times with elements.
Nested Class Summary | |
---|---|
static class |
ListWithStat.Node<E>
Represents a node that can be part of a list with statistical collecting. |
Constructor Summary | |
---|---|
ListWithStat(List<ListWithStat.Node<E>> nodeList)
Constructs a new list with internal data structure using the default simulator and implemented by nodeList. |
|
ListWithStat(List<ListWithStat.Node<E>> nodeList,
Collection<? extends E> c)
Constructs a list containing the elements of the specified collection, whose elements are stored into nodeList and using the default simulator. |
|
ListWithStat(List<ListWithStat.Node<E>> nodeList,
Collection<? extends E> c,
String name)
Constructs a new list containing the elements of the specified collection c, with name name, internal list nodeList, and using the default simulator. |
|
ListWithStat(List<ListWithStat.Node<E>> nodeList,
String name)
Constructs a new list with name name, internal list nodeList, and using the default simulator. |
|
ListWithStat(Simulator inSim,
List<ListWithStat.Node<E>> nodeList)
Constructs a new list with internal data structure implemented by nodeList. |
|
ListWithStat(Simulator inSim,
List<ListWithStat.Node<E>> nodeList,
Collection<? extends E> c)
Constructs a list containing the elements of the specified collection, whose elements are stored into nodeList. |
|
ListWithStat(Simulator inSim,
List<ListWithStat.Node<E>> nodeList,
Collection<? extends E> c,
String name)
Constructs a new list containing the elements of the specified collection c, with name name, and internal list nodeList. |
|
ListWithStat(Simulator inSim,
List<ListWithStat.Node<E>> nodeList,
String name)
Constructs a new list with name name, and internal list nodeList. |
Method Summary | |
---|---|
void |
add(int index,
E obj)
|
void |
clear()
|
E |
convertFromInnerType(ListWithStat.Node<E> node)
Converts an element in the inner list to an element of the outer type. |
ListWithStat.Node<E> |
convertToInnerType(E element)
Converts an element of the outer type to an element for the inner list. |
double |
getInitTime()
Returns the last simulation time initStat was called. |
String |
getName()
Returns the name associated to this list, or null if no name was assigned. |
boolean |
getStatCollecting()
Returns true if the list collects statistics about its size and sojourn times of elements, and false otherwise. |
void |
initStat()
Reinitializes the two statistical probes created by setStatCollecting (true) and makes an update for the
probe on the list size. |
Iterator<E> |
iterator()
|
ListIterator<E> |
listIterator()
|
ListIterator<E> |
listIterator(int index)
|
E |
remove(int index)
|
String |
report()
Returns a string containing a statistical report on the list, provided that setStatCollecting (true) has been
called before for this list. |
E |
set(int index,
E element)
|
void |
setSimulator(Simulator sim)
Sets the simulator associated with this list. |
void |
setStatCollecting(boolean b)
Starts or stops collecting statistics on this list. |
Simulator |
simulator()
Returns the simulator associated with this list. |
Accumulate |
statSize()
Returns the statistical probe on the evolution of the size of the list as a function of the simulation time. |
Tally |
statSojourn()
Returns the statistical probe on the sojourn times of the objects in the list. |
Methods inherited from class umontreal.iro.lecuyer.util.TransformingList |
---|
get, getInnerList, size |
Methods inherited from class java.util.AbstractList |
---|
add, addAll, equals, hashCode, indexOf, lastIndexOf, subList |
Methods inherited from class java.util.AbstractCollection |
---|
addAll, contains, containsAll, isEmpty, remove, removeAll, retainAll, toArray, toArray, toString |
Methods inherited from class java.lang.Object |
---|
getClass, notify, notifyAll, wait, wait, wait |
Methods inherited from interface java.util.List |
---|
addAll, contains, containsAll, isEmpty, remove, removeAll, retainAll, toArray, toArray |
Constructor Detail |
---|
public ListWithStat(List<ListWithStat.Node<E>> nodeList)
public ListWithStat(Simulator inSim, List<ListWithStat.Node<E>> nodeList)
nodeList
- the list containing the nodespublic ListWithStat(List<ListWithStat.Node<E>> nodeList, Collection<? extends E> c)
nodeList
- the list containing the nodesc
- collection containing elements to fill in this list withpublic ListWithStat(Simulator inSim, List<ListWithStat.Node<E>> nodeList, Collection<? extends E> c)
inSim
- simulator associate to the current variablenodeList
- the list containing the nodesc
- collection containing elements to fill in this list withpublic ListWithStat(List<ListWithStat.Node<E>> nodeList, String name)
nodeList
- the list containing the nodesname
- name for the list objectpublic ListWithStat(Simulator inSim, List<ListWithStat.Node<E>> nodeList, String name)
inSim
- simulator associate to the current variablenodeList
- the list containing the nodesname
- name for the list objectpublic ListWithStat(List<ListWithStat.Node<E>> nodeList, Collection<? extends E> c, String name)
nodeList
- the list containing the nodesc
- collection containing elements to fill in this list withname
- name for the list objectpublic ListWithStat(Simulator inSim, List<ListWithStat.Node<E>> nodeList, Collection<? extends E> c, String name)
inSim
- simulator associate to the current variablenodeList
- the list containing the nodesc
- collection containing elements to fill in this list withname
- name for the list objectMethod Detail |
---|
public E convertFromInnerType(ListWithStat.Node<E> node)
TransformingList
convertFromInnerType
in class TransformingList<E,ListWithStat.Node<E>>
node
- the inner element.
public ListWithStat.Node<E> convertToInnerType(E element)
TransformingList
convertToInnerType
in class TransformingList<E,ListWithStat.Node<E>>
element
- the outer element.
public Simulator simulator()
public void setSimulator(Simulator sim)
sim
- the simulator of this listpublic void clear()
clear
in interface Collection<E>
clear
in interface List<E>
clear
in class TransformingList<E,ListWithStat.Node<E>>
public void add(int index, E obj)
add
in interface List<E>
add
in class TransformingList<E,ListWithStat.Node<E>>
public E remove(int index)
remove
in interface List<E>
remove
in class TransformingList<E,ListWithStat.Node<E>>
public Iterator<E> iterator()
iterator
in interface Iterable<E>
iterator
in interface Collection<E>
iterator
in interface List<E>
iterator
in class TransformingList<E,ListWithStat.Node<E>>
public ListIterator<E> listIterator()
listIterator
in interface List<E>
listIterator
in class TransformingList<E,ListWithStat.Node<E>>
public ListIterator<E> listIterator(int index)
listIterator
in interface List<E>
listIterator
in class TransformingList<E,ListWithStat.Node<E>>
public E set(int index, E element)
set
in interface List<E>
set
in class TransformingList<E,ListWithStat.Node<E>>
public boolean getStatCollecting()
public void setStatCollecting(boolean b)
Accumulate
, measures the evolution
of the size of the list as a function of time.
It can be accessed by the method statSize
.
The second one, of the class Tally
and accessible via
statSojourn
, samples the sojourn times in the list of the
objects removed during the observation period,
i.e., between the last initialization time of this statistical
probe and the current time.
The method automatically calls initStat
to
initialize these two probes.
When this method is used, it is normally invoked immediately after
calling the constructor of the list.
IllegalStateException
- if the statistical collection
is in the same state as the caller requirespublic void initStat()
setStatCollecting
(true) and makes an update for the
probe on the list size.
IllegalStateException
- if the statistical collection is disabledpublic double getInitTime()
initStat
was called.
initStat
was calledpublic Accumulate statSize()
setStatCollecting
(true)
has been called for this list.
public Tally statSojourn()
setStatCollecting
(true) has been called for this list.
public String report()
setStatCollecting
(true) has been
called before for this list.
Even If setStatCollecting
was called with false
afterward, the report will be made for
the collected observations.
If the probes do not exist, i.e., setStatCollecting
was never called
for this object, an illegal state exception will be thrown.
IllegalStateException
- if no statistical probes existpublic String getName()
|
SSJ V. 2.6. |
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |