public IComparable GetIndex(MockIndex index) { if (index.Index == null) { if (DataCount == 0) { return(IsTime ? (IComparable)0L.ToUtcDateTime() : double.MinValue); } var i = DataCount - (index.IndexCount ?? 0); if (i < 0) { return(StartIndex); } else if (i >= DataCount) { return(EndIndex); } else { return(Index(i)); } } else { if (IsTime && index.Index is long) { return(((long)index.Index).ToUtcDateTime()); } else if (!IsTime && index.Version == EtpVersion.v11 && index.Index is long) { return(LongToDepthIndex((long)index.Index)); } else if (!IsTime && index.Version == EtpVersion.v12 && index.Index is double) { return((double)index.Index); } else { return(null); } } }
public MockRangeQuery(v12.Datatypes.ChannelData.ChannelRangeInfo query, long channelId) { ChannelId = channelId; StartIndex = new MockIndex(query.Interval.StartIndex); EndIndex = new MockIndex(query.Interval.EndIndex); }
public MockRangeQuery(v11.Datatypes.ChannelData.ChannelRangeInfo query, long channelId) { ChannelId = channelId; StartIndex = new MockIndex(EtpVersion.v11, query.StartIndex); EndIndex = new MockIndex(EtpVersion.v11, query.EndIndex); }