Lean
$LEAN_TAG$
IDataAggregator.cs
1
/*
2
* QUANTCONNECT.COM - Democratizing Finance, Empowering Individuals.
3
* Lean Algorithmic Trading Engine v2.0. Copyright 2014 QuantConnect Corporation.
4
*
5
* Licensed under the Apache License, Version 2.0 (the "License");
6
* you may not use this file except in compliance with the License.
7
* You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
8
*
9
* Unless required by applicable law or agreed to in writing, software
10
* distributed under the License is distributed on an "AS IS" BASIS,
11
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
* See the License for the specific language governing permissions and
13
* limitations under the License.
14
*/
15
16
using
System;
17
using
System.Collections.Generic;
18
using
System.ComponentModel.Composition;
19
20
namespace
QuantConnect.Data
21
{
22
/// <summary>
23
/// Aggregates ticks and bars based on given subscriptions.
24
/// </summary>
25
[InheritedExport(typeof(IDataAggregator))]
26
public
interface
IDataAggregator
: IDisposable
27
{
28
/// <summary>
29
/// Initialize this instance
30
/// </summary>
31
/// <param name="parameters">The parameters dto instance</param>
32
void
Initialize
(
DataAggregatorInitializeParameters
parameters);
33
34
/// <summary>
35
/// Add new subscription to current <see cref="IDataAggregator"/> instance
36
/// </summary>
37
/// <param name="dataConfig">defines the parameters to subscribe to a data feed</param>
38
/// <param name="newDataAvailableHandler">handler to be fired on new data available</param>
39
/// <returns>The new enumerator for this subscription request</returns>
40
/// <returns></returns>
41
IEnumerator<BaseData>
Add
(
SubscriptionDataConfig
dataConfig, EventHandler newDataAvailableHandler);
42
43
/// <summary>
44
/// Remove the given subscription
45
/// </summary>
46
/// <param name="dataConfig">defines the subscription configuration data.</param>
47
/// <returns>Returns true if given <see cref="SubscriptionDataConfig"/> was found and succesfully removed; otherwise false.</returns>
48
bool
Remove
(
SubscriptionDataConfig
dataConfig);
49
50
/// <summary>
51
/// Adds new <see cref="BaseData"/> input into aggregator.
52
/// </summary>
53
/// <param name="input">The new data</param>
54
void
Update
(
BaseData
input);
55
}
56
}
Common
Data
IDataAggregator.cs
Generated by
1.8.17