Interface DynamicPreferenceAggregator<T>
-
- Type Parameters:
T
- generic preference order type
- All Known Implementing Classes:
DynamicBordaScoringPreferenceAggregator
,DynamicPluralityScoringPreferenceAggregator
,DynamicScoringPreferenceAggregator
,DynamicVetoScoringPreferenceAggregator
public interface DynamicPreferenceAggregator<T>
This interface is meant to be used for the dynamic aggregation of some generic preference orders- Author:
- Bastian Wolf
-
-
Method Summary
Modifier and Type Method Description void
addListener(UpdateListener<T> listener)
The add-method for listeners for a dynamic preference aggregatorPreferenceOrder<T>
aggregate(java.util.List<PreferenceOrder<T>> input)
Abstract class for implementation of dynamic preference aggregationvoid
removeListener(UpdateListener<T> listener)
The remove-method for listeners for a dynamic preference aggregatorPreferenceOrder<T>
update(Update<T> update, java.util.List<PreferenceOrder<T>> input)
This update stream is going to be used for dynamic changes in a preferences orders Input: ArrayList(Quadruple(PreferenceOrder, Number of Operations, Operation, Element)) e.g: weakening element b in PO test 2 times needs quadruple like this: Quadruple(test, 2, WEAKEN, b) Possible Structures: ArrayList, Queue Empty initialization, update() if stream is not empty
-
-
-
Method Detail
-
aggregate
PreferenceOrder<T> aggregate(java.util.List<PreferenceOrder<T>> input)
Abstract class for implementation of dynamic preference aggregation- Parameters:
input
- the array of preference orders to be aggregated- Returns:
- the final result as a preference order
-
update
PreferenceOrder<T> update(Update<T> update, java.util.List<PreferenceOrder<T>> input)
This update stream is going to be used for dynamic changes in a preferences orders Input: ArrayList(Quadruple(PreferenceOrder, Number of Operations, Operation, Element)) e.g: weakening element b in PO test 2 times needs quadruple like this: Quadruple(test, 2, WEAKEN, b) Possible Structures: ArrayList, Queue Empty initialization, update() if stream is not empty- Parameters:
update
- an updateinput
- some input- Returns:
- a preference order
-
addListener
void addListener(UpdateListener<T> listener)
The add-method for listeners for a dynamic preference aggregator- Parameters:
listener
- an update listener
-
removeListener
void removeListener(UpdateListener<T> listener)
The remove-method for listeners for a dynamic preference aggregator- Parameters:
listener
- an update listener
-
-