CandidateSink
@interface CandidateSink : NSObject <ICandidateHandler>
This class implements the WallClock protocol’s Candidate measurement processing functionality. Candidate mesaurements received by the WCClient object are enqueued in the CandidateSink object for processing. A thread in this class services this queue; it takes a Candidate measurement, passes it through a number of filters (See IFilter.h) and if the measurement survives the filtering process, it then submit it to a WC algorithm object (See IWCAlgo.h) for WC offset and dispersion calculation.
-
A reference to a wallclock whose offset can be adjusted
Declaration
Objective-C
@property (readonly, nonatomic) int *wallclockref;Swift
var wallclockref: UnsafeMutablePointer -
List of filters (id
) Declaration
Objective-C
@property (readwrite, strong, nonatomic) NSMutableArray *filterList;Swift
var filterList: NSMutableArray! { get set } -
Unused initialiser
Declaration
Objective-C
- (instancetype)init;Return Value
nil
-
Initialise the Candidate measurements handling object
Declaration
Objective-C
- (id)initWith:(id)wall_clock Algorithm:(id<IWCAlgo>)algorithm AndFilters:(NSArray *)filter_array;Swift
init!(_ wall_clock: Any!, algorithm: IWCAlgo!, andFilters filter_array: [Any]!)Parameters
wall_clock- the WallClock for which an offset is being calculated. We are using the feedback loop model (see pg 153 CSS Specs).
algorithm- an object that conforms to the IWCAlgo.h protocol e.g. LowestDispersionAlgorithm
filter_array- a set of filters for filtering the measurements e.g. LowestDispersionFilter
Return Value
initialised CandidateSink instance
-
Start this component
Declaration
Objective-C
- (void)start;Swift
func start() -
Stop this component
Declaration
Objective-C
- (void)stop;Swift
func stop()
View on GitHub
CandidateSink Class Reference