@@ -3,7 +3,7 @@ namespace StockSharp.Algo.Storages;
33/// <summary>
44/// The interface describing the storage of market data.
55/// </summary>
6- public interface IStorageRegistry : IMessageStorageRegistry
6+ public interface IStorageRegistry
77{
88 /// <summary>
99 /// The storage used by default.
@@ -14,4 +14,141 @@ public interface IStorageRegistry : IMessageStorageRegistry
1414 /// Exchanges and trading boards provider.
1515 /// </summary>
1616 IExchangeInfoProvider ExchangeInfoProvider { get ; }
17+
18+ /// <summary>
19+ /// To get news storage.
20+ /// </summary>
21+ /// <param name="drive">The storage.</param>
22+ /// <param name="format">The format type.</param>
23+ /// <returns>The news storage.</returns>
24+ IMarketDataStorage < NewsMessage > GetNewsMessageStorage ( IMarketDataDrive drive = null , StorageFormats format = StorageFormats . Binary ) ;
25+
26+ /// <summary>
27+ /// To get board state storage.
28+ /// </summary>
29+ /// <param name="drive">The storage.</param>
30+ /// <param name="format">The format type.</param>
31+ /// <returns>The news storage.</returns>
32+ IMarketDataStorage < BoardStateMessage > GetBoardStateMessageStorage ( IMarketDataDrive drive = null , StorageFormats format = StorageFormats . Binary ) ;
33+
34+ /// <summary>
35+ /// To get the storage of tick trades for the specified instrument.
36+ /// </summary>
37+ /// <param name="securityId">Security ID.</param>
38+ /// <param name="drive">The storage.</param>
39+ /// <param name="format">The format type.</param>
40+ /// <returns>The storage of tick trades.</returns>
41+ IMarketDataStorage < ExecutionMessage > GetTickMessageStorage ( SecurityId securityId , IMarketDataDrive drive = null , StorageFormats format = StorageFormats . Binary ) ;
42+
43+ /// <summary>
44+ /// To get the storage of order books for the specified instrument.
45+ /// </summary>
46+ /// <param name="securityId">Security ID.</param>
47+ /// <param name="drive">The storage.</param>
48+ /// <param name="format">The format type.</param>
49+ /// <param name="passThroughOrderBookIncrement">Pass through incremental <see cref="QuoteChangeMessage"/>.</param>
50+ /// <returns>The order books storage.</returns>
51+ IMarketDataStorage < QuoteChangeMessage > GetQuoteMessageStorage ( SecurityId securityId , IMarketDataDrive drive = null , StorageFormats format = StorageFormats . Binary , bool passThroughOrderBookIncrement = false ) ;
52+
53+ /// <summary>
54+ /// To get the storage of orders log for the specified instrument.
55+ /// </summary>
56+ /// <param name="securityId">Security ID.</param>
57+ /// <param name="drive">The storage.</param>
58+ /// <param name="format">The format type.</param>
59+ /// <returns>The storage of orders log.</returns>
60+ IMarketDataStorage < ExecutionMessage > GetOrderLogMessageStorage ( SecurityId securityId , IMarketDataDrive drive = null , StorageFormats format = StorageFormats . Binary ) ;
61+
62+ /// <summary>
63+ /// To get the storage of level1 data.
64+ /// </summary>
65+ /// <param name="securityId">Security ID.</param>
66+ /// <param name="drive">The storage.</param>
67+ /// <param name="format">The format type.</param>
68+ /// <returns>The storage of level1 data.</returns>
69+ IMarketDataStorage < Level1ChangeMessage > GetLevel1MessageStorage ( SecurityId securityId , IMarketDataDrive drive = null , StorageFormats format = StorageFormats . Binary ) ;
70+
71+ /// <summary>
72+ /// To get the storage of position changes data.
73+ /// </summary>
74+ /// <param name="securityId">Security ID.</param>
75+ /// <param name="drive">The storage.</param>
76+ /// <param name="format">The format type.</param>
77+ /// <returns>The storage of position changes data.</returns>
78+ IMarketDataStorage < PositionChangeMessage > GetPositionMessageStorage ( SecurityId securityId , IMarketDataDrive drive = null , StorageFormats format = StorageFormats . Binary ) ;
79+
80+ /// <summary>
81+ /// To get the candles storage for the specified instrument.
82+ /// </summary>
83+ /// <param name="securityId">Security ID.</param>
84+ /// <param name="type"><see cref="DataType"/></param>
85+ /// <param name="drive">The storage.</param>
86+ /// <param name="format">The format type.</param>
87+ /// <returns>The candles storage.</returns>
88+ IMarketDataStorage < CandleMessage > GetCandleMessageStorage ( SecurityId securityId , DataType type , IMarketDataDrive drive = null , StorageFormats format = StorageFormats . Binary ) ;
89+
90+ /// <summary>
91+ /// To get the <see cref="ExecutionMessage"/> storage for the specified instrument.
92+ /// </summary>
93+ /// <param name="securityId">Security ID.</param>
94+ /// <param name="type">Data type, information about which is contained in the <see cref="ExecutionMessage"/>.</param>
95+ /// <param name="drive">The storage.</param>
96+ /// <param name="format">The format type.</param>
97+ /// <returns>The <see cref="ExecutionMessage"/> storage.</returns>
98+ IMarketDataStorage < ExecutionMessage > GetExecutionMessageStorage ( SecurityId securityId , DataType type , IMarketDataDrive drive = null , StorageFormats format = StorageFormats . Binary ) ;
99+
100+ /// <summary>
101+ /// To get the transactions storage for the specified instrument.
102+ /// </summary>
103+ /// <param name="securityId">Security ID.</param>
104+ /// <param name="drive">The storage.</param>
105+ /// <param name="format">The format type.</param>
106+ /// <returns>The transactions storage.</returns>
107+ IMarketDataStorage < ExecutionMessage > GetTransactionStorage ( SecurityId securityId , IMarketDataDrive drive = null , StorageFormats format = StorageFormats . Binary ) ;
108+
109+ /// <summary>
110+ /// To get the market-data storage.
111+ /// </summary>
112+ /// <param name="securityId">Security ID.</param>
113+ /// <param name="dataType"><see cref="DataType"/></param>
114+ /// <param name="drive">The storage.</param>
115+ /// <param name="format">The format type.</param>
116+ /// <returns>Market-data storage.</returns>
117+ IMarketDataStorage GetStorage ( SecurityId securityId , DataType dataType , IMarketDataDrive drive = null , StorageFormats format = StorageFormats . Binary ) ;
118+
119+ /// <summary>
120+ /// To register tick trades storage.
121+ /// </summary>
122+ /// <param name="storage">The storage of tick trades.</param>
123+ void RegisterTradeStorage ( IMarketDataStorage < ExecutionMessage > storage ) ;
124+
125+ /// <summary>
126+ /// To register the order books storage.
127+ /// </summary>
128+ /// <param name="storage">The order books storage.</param>
129+ void RegisterMarketDepthStorage ( IMarketDataStorage < QuoteChangeMessage > storage ) ;
130+
131+ /// <summary>
132+ /// To register the order log storage.
133+ /// </summary>
134+ /// <param name="storage">The storage of orders log.</param>
135+ void RegisterOrderLogStorage ( IMarketDataStorage < ExecutionMessage > storage ) ;
136+
137+ /// <summary>
138+ /// To register the storage of level1 data.
139+ /// </summary>
140+ /// <param name="storage">The storage of level1 data.</param>
141+ void RegisterLevel1Storage ( IMarketDataStorage < Level1ChangeMessage > storage ) ;
142+
143+ /// <summary>
144+ /// To register the storage of position changes data.
145+ /// </summary>
146+ /// <param name="storage">The storage of position changes data.</param>
147+ void RegisterPositionStorage ( IMarketDataStorage < PositionChangeMessage > storage ) ;
148+
149+ /// <summary>
150+ /// To register the candles storage.
151+ /// </summary>
152+ /// <param name="storage">The candles storage.</param>
153+ void RegisterCandleStorage ( IMarketDataStorage < CandleMessage > storage ) ;
17154}
0 commit comments