scichart 2.0.2194 → 2.1.0-beta.40

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (223) hide show
  1. package/Charting/ChartModifiers/CursorModifier.d.ts +9 -0
  2. package/Charting/ChartModifiers/CursorModifier.js +10 -0
  3. package/Charting/ChartModifiers/DataPointSelectionModifier.js +0 -1
  4. package/Charting/ChartModifiers/RolloverModifier.d.ts +25 -0
  5. package/Charting/ChartModifiers/RolloverModifier.js +8 -0
  6. package/Charting/Drawing/BrushCache.d.ts +8 -2
  7. package/Charting/Drawing/BrushCache.js +16 -8
  8. package/Charting/Drawing/WebGlRenderContext2D.d.ts +1 -0
  9. package/Charting/Drawing/WebGlRenderContext2D.js +4 -1
  10. package/Charting/LayoutManager/BaseAxisLayoutStrategy.d.ts +2 -0
  11. package/Charting/LayoutManager/BaseAxisLayoutStrategy.js +33 -0
  12. package/Charting/LayoutManager/BottomAlignedOuterHorizontallyStackedAxisLayoutStrategy.js +18 -2
  13. package/Charting/LayoutManager/LeftAlignedOuterVerticallyStackedAxisLayoutStrategy.js +19 -2
  14. package/Charting/LayoutManager/RightAlignedOuterVerticallyStackedAxisLayoutStrategy.js +18 -2
  15. package/Charting/LayoutManager/TopAlignedOuterHorizontallyStackedAxisLayoutStrategy.js +18 -2
  16. package/Charting/Model/BaseDataSeries.d.ts +42 -15
  17. package/Charting/Model/BaseDataSeries.js +77 -28
  18. package/Charting/Model/BaseHeatmapDataSeries.d.ts +31 -23
  19. package/Charting/Model/BaseHeatmapDataSeries.js +45 -18
  20. package/Charting/Model/DataDistributionCalculator/DataDistributionCalculator.d.ts +23 -0
  21. package/Charting/Model/DataDistributionCalculator/DataDistributionCalculator.js +122 -0
  22. package/Charting/Model/DataDistributionCalculator/IDataDistributionCalculator.d.ts +57 -0
  23. package/Charting/Model/DataDistributionCalculator/IDataDistributionCalculator.js +2 -0
  24. package/Charting/Model/Filters/OhlcFilterBase.d.ts +2 -2
  25. package/Charting/Model/Filters/XyFilterBase.d.ts +3 -3
  26. package/Charting/Model/Filters/XyMovingAverageFilter.js +1 -1
  27. package/Charting/Model/Filters/XyyFilterBase.d.ts +4 -4
  28. package/Charting/Model/Filters/XyzFilterBase.d.ts +4 -4
  29. package/Charting/Model/IDataSeries.d.ts +37 -5
  30. package/Charting/Model/OhlcDataSeries.d.ts +12 -11
  31. package/Charting/Model/OhlcDataSeries.js +47 -44
  32. package/Charting/Model/PointSeries/BasePointSeriesResampled.d.ts +21 -0
  33. package/Charting/Model/PointSeries/BasePointSeriesResampled.js +56 -0
  34. package/Charting/Model/PointSeries/BasePointSeriesWrapped.d.ts +14 -0
  35. package/Charting/Model/PointSeries/BasePointSeriesWrapped.js +23 -0
  36. package/Charting/Model/PointSeries/IPointSeries.d.ts +31 -0
  37. package/Charting/Model/PointSeries/IPointSeries.js +2 -0
  38. package/Charting/Model/PointSeries/OhlcPointSeriesResampled.d.ts +13 -0
  39. package/Charting/Model/PointSeries/OhlcPointSeriesResampled.js +59 -0
  40. package/Charting/Model/PointSeries/OhlcPointSeriesWrapped.d.ts +11 -0
  41. package/Charting/Model/PointSeries/OhlcPointSeriesWrapped.js +32 -0
  42. package/Charting/Model/PointSeries/XyPointSeriesResampled.d.ts +7 -0
  43. package/Charting/Model/PointSeries/XyPointSeriesResampled.js +27 -0
  44. package/Charting/Model/PointSeries/XyPointSeriesWrapped.d.ts +6 -0
  45. package/Charting/Model/PointSeries/XyPointSeriesWrapped.js +27 -0
  46. package/Charting/Model/PointSeries/XyyPointSeriesResampled.d.ts +10 -0
  47. package/Charting/Model/PointSeries/XyyPointSeriesResampled.js +48 -0
  48. package/Charting/Model/PointSeries/XyyPointSeriesWrapped.d.ts +8 -0
  49. package/Charting/Model/PointSeries/XyyPointSeriesWrapped.js +29 -0
  50. package/Charting/Model/PointSeries/XyzPointSeriesWrapped.d.ts +8 -0
  51. package/Charting/Model/PointSeries/XyzPointSeriesWrapped.js +29 -0
  52. package/Charting/Model/XyDataSeries.d.ts +3 -2
  53. package/Charting/Model/XyDataSeries.js +26 -26
  54. package/Charting/Model/XyyDataSeries.d.ts +5 -5
  55. package/Charting/Model/XyyDataSeries.js +30 -27
  56. package/Charting/Model/XyzDataSeries.d.ts +5 -5
  57. package/Charting/Model/XyzDataSeries.js +30 -27
  58. package/Charting/Numerics/CoordinateCalculators/CategoryCoordinateCalculator.d.ts +2 -2
  59. package/Charting/Numerics/CoordinateCalculators/FlippedCategoryCoordinateCalculator.d.ts +2 -2
  60. package/Charting/Numerics/CoordinateCalculators/FlippedNumericCoordinateCalculator.d.ts +2 -1
  61. package/Charting/Numerics/CoordinateCalculators/FlippedNumericCoordinateCalculator.js +6 -2
  62. package/Charting/Numerics/CoordinateCalculators/NumericCoordinateCalculator.d.ts +2 -1
  63. package/Charting/Numerics/CoordinateCalculators/NumericCoordinateCalculator.js +6 -2
  64. package/Charting/Numerics/Resamplers/ExtremeResamplerHelper.d.ts +54 -0
  65. package/Charting/Numerics/Resamplers/ExtremeResamplerHelper.js +232 -0
  66. package/Charting/Numerics/Resamplers/ResamplingMode.d.ts +37 -0
  67. package/Charting/Numerics/Resamplers/ResamplingMode.js +41 -0
  68. package/Charting/Numerics/Resamplers/ResamplingParams.d.ts +39 -0
  69. package/Charting/Numerics/Resamplers/ResamplingParams.js +52 -0
  70. package/Charting/Services/RenderPassData.d.ts +6 -1
  71. package/Charting/Services/RenderPassData.js +5 -1
  72. package/Charting/Services/RenderPassInfo.d.ts +18 -0
  73. package/Charting/Services/RenderPassInfo.js +14 -0
  74. package/Charting/Services/SciChartRenderer.d.ts +14 -1
  75. package/Charting/Services/SciChartRenderer.js +124 -31
  76. package/Charting/Visuals/Annotations/AnnotationBase.d.ts +1 -1
  77. package/Charting/Visuals/Annotations/CursorTooltipSvgAnnotation.d.ts +1 -0
  78. package/Charting/Visuals/Annotations/CursorTooltipSvgAnnotation.js +6 -0
  79. package/Charting/Visuals/Annotations/RolloverMarkerSvgAnnotation.d.ts +5 -0
  80. package/Charting/Visuals/Annotations/RolloverMarkerSvgAnnotation.js +12 -1
  81. package/Charting/Visuals/Annotations/RolloverTooltipSvgAnnotation.d.ts +6 -8
  82. package/Charting/Visuals/Annotations/RolloverTooltipSvgAnnotation.js +12 -9
  83. package/Charting/Visuals/Annotations/SvgAnnotationBase.js +7 -2
  84. package/Charting/Visuals/Axis/AxisBase2D.d.ts +23 -0
  85. package/Charting/Visuals/Axis/AxisBase2D.js +71 -24
  86. package/Charting/Visuals/Axis/AxisCore.d.ts +11 -0
  87. package/Charting/Visuals/Axis/AxisCore.js +39 -18
  88. package/Charting/Visuals/Axis/AxisRenderer.d.ts +1 -0
  89. package/Charting/Visuals/Axis/AxisRenderer.js +37 -10
  90. package/Charting/Visuals/Axis/IAxisCoreOptions.d.ts +5 -0
  91. package/Charting/Visuals/Axis/LabelProvider/LabelCache.js +2 -2
  92. package/Charting/Visuals/Axis/LabelProvider/LabelProviderBase2D.js +9 -4
  93. package/Charting/Visuals/Axis/NumericAxis.js +2 -2
  94. package/Charting/Visuals/Axis/constants.d.ts +1 -0
  95. package/Charting/Visuals/Axis/constants.js +1 -0
  96. package/Charting/Visuals/RenderableSeries/Animations/FadeAnimation.d.ts +2 -2
  97. package/Charting/Visuals/RenderableSeries/Animations/ScaleAnimation.d.ts +2 -2
  98. package/Charting/Visuals/RenderableSeries/Animations/SeriesAnimation.d.ts +3 -3
  99. package/Charting/Visuals/RenderableSeries/Animations/SweepAnimation.d.ts +2 -2
  100. package/Charting/Visuals/RenderableSeries/Animations/WaveAnimation.d.ts +2 -2
  101. package/Charting/Visuals/RenderableSeries/Animations/animationHelpers.d.ts +6 -6
  102. package/Charting/Visuals/RenderableSeries/Animations/animationHelpers.js +2 -2
  103. package/Charting/Visuals/RenderableSeries/BaseBandRenderableSeries.d.ts +9 -2
  104. package/Charting/Visuals/RenderableSeries/BaseBandRenderableSeries.js +45 -1
  105. package/Charting/Visuals/RenderableSeries/BaseLineRenderableSeries.d.ts +1 -0
  106. package/Charting/Visuals/RenderableSeries/BaseLineRenderableSeries.js +1 -0
  107. package/Charting/Visuals/RenderableSeries/BaseMountainRenderableSeries.d.ts +1 -0
  108. package/Charting/Visuals/RenderableSeries/BaseMountainRenderableSeries.js +1 -0
  109. package/Charting/Visuals/RenderableSeries/BaseOhlcRenderableSeries.d.ts +12 -5
  110. package/Charting/Visuals/RenderableSeries/BaseOhlcRenderableSeries.js +59 -0
  111. package/Charting/Visuals/RenderableSeries/BaseRenderableSeries.d.ts +40 -5
  112. package/Charting/Visuals/RenderableSeries/BaseRenderableSeries.js +116 -11
  113. package/Charting/Visuals/RenderableSeries/BaseStackedCollection.d.ts +36 -4
  114. package/Charting/Visuals/RenderableSeries/BaseStackedCollection.js +51 -3
  115. package/Charting/Visuals/RenderableSeries/BaseStackedRenderableSeries.d.ts +38 -4
  116. package/Charting/Visuals/RenderableSeries/BaseStackedRenderableSeries.js +54 -3
  117. package/Charting/Visuals/RenderableSeries/DrawingProviders/BandSeriesDrawingProvider.d.ts +1 -1
  118. package/Charting/Visuals/RenderableSeries/DrawingProviders/BandSeriesDrawingProvider.js +8 -14
  119. package/Charting/Visuals/RenderableSeries/DrawingProviders/BaseSeriesDrawingProvider.js +4 -3
  120. package/Charting/Visuals/RenderableSeries/DrawingProviders/BubbleSeriesDrawingProvider.js +5 -11
  121. package/Charting/Visuals/RenderableSeries/DrawingProviders/ColumnSeriesDrawingProvider.js +4 -11
  122. package/Charting/Visuals/RenderableSeries/DrawingProviders/LineSeriesDrawingProvider.d.ts +2 -1
  123. package/Charting/Visuals/RenderableSeries/DrawingProviders/LineSeriesDrawingProvider.js +17 -21
  124. package/Charting/Visuals/RenderableSeries/DrawingProviders/MountainSeriesDrawingProvider.js +16 -15
  125. package/Charting/Visuals/RenderableSeries/DrawingProviders/OhlcSeriesDrawingProvider.js +9 -15
  126. package/Charting/Visuals/RenderableSeries/DrawingProviders/PointMarkerDrawingProvider.d.ts +4 -3
  127. package/Charting/Visuals/RenderableSeries/DrawingProviders/PointMarkerDrawingProvider.js +16 -21
  128. package/Charting/Visuals/RenderableSeries/DrawingProviders/UniformContoursDrawingProvider.js +2 -9
  129. package/Charting/Visuals/RenderableSeries/DrawingProviders/UniformHeatmapDrawingProvider.js +0 -7
  130. package/Charting/Visuals/RenderableSeries/FastBubbleRenderableSeries.d.ts +6 -2
  131. package/Charting/Visuals/RenderableSeries/FastBubbleRenderableSeries.js +5 -0
  132. package/Charting/Visuals/RenderableSeries/FastColumnRenderableSeries.d.ts +1 -0
  133. package/Charting/Visuals/RenderableSeries/FastColumnRenderableSeries.js +1 -0
  134. package/Charting/Visuals/RenderableSeries/FastLineRenderableSeries.d.ts +1 -0
  135. package/Charting/Visuals/RenderableSeries/FastLineRenderableSeries.js +6 -0
  136. package/Charting/Visuals/RenderableSeries/HitTest/BandSeriesHitTestProvider.js +2 -2
  137. package/Charting/Visuals/RenderableSeries/HitTest/BaseHitTestProvider.js +1 -1
  138. package/Charting/Visuals/RenderableSeries/HitTest/BubbleSeriesHitTestProvider.js +1 -1
  139. package/Charting/Visuals/RenderableSeries/HitTest/ColumnSeriesHitTestProvider.js +2 -2
  140. package/Charting/Visuals/RenderableSeries/HitTest/LineSeriesHitTestProvider.js +2 -2
  141. package/Charting/Visuals/RenderableSeries/HitTest/MountainSeriesHitTestProvider.js +1 -1
  142. package/Charting/Visuals/RenderableSeries/HitTest/OhlcSeriesHitTestProvider.js +2 -2
  143. package/Charting/Visuals/RenderableSeries/HitTest/ScatterSeriesHitTestProvider.js +1 -1
  144. package/Charting/Visuals/RenderableSeries/HitTest/StackedColumnSeriesHitTestProvider.js +2 -2
  145. package/Charting/Visuals/RenderableSeries/HitTest/StackedMountainSeriesHitTestProvider.js +2 -2
  146. package/Charting/Visuals/RenderableSeries/HitTest/hitTestHelpers.d.ts +6 -6
  147. package/Charting/Visuals/RenderableSeries/HitTest/hitTestHelpers.js +1 -1
  148. package/Charting/Visuals/RenderableSeries/IBaseRenderableSeriesOptions.d.ts +12 -1
  149. package/Charting/Visuals/RenderableSeries/IRenderableSeries.d.ts +38 -2
  150. package/Charting/Visuals/RenderableSeries/ISpline.d.ts +3 -3
  151. package/Charting/Visuals/RenderableSeries/SplineBandRenderableSeries.d.ts +4 -4
  152. package/Charting/Visuals/RenderableSeries/SplineBandRenderableSeries.js +5 -5
  153. package/Charting/Visuals/RenderableSeries/SplineLineRenderableSeries.d.ts +3 -3
  154. package/Charting/Visuals/RenderableSeries/SplineLineRenderableSeries.js +3 -3
  155. package/Charting/Visuals/RenderableSeries/SplineMountainRenderableSeries.d.ts +3 -3
  156. package/Charting/Visuals/RenderableSeries/SplineMountainRenderableSeries.js +3 -3
  157. package/Charting/Visuals/RenderableSeries/StackedColumnCollection.js +0 -6
  158. package/Charting/Visuals/RenderableSeries/StackedMountainCollection.d.ts +1 -1
  159. package/Charting/Visuals/RenderableSeries/StackedMountainCollection.js +1 -7
  160. package/Charting/Visuals/RenderableSeries/UniformContoursRenderableSeries.d.ts +5 -0
  161. package/Charting/Visuals/RenderableSeries/UniformContoursRenderableSeries.js +6 -0
  162. package/Charting/Visuals/RenderableSeries/UniformHeatmapRenderableSeries.d.ts +5 -0
  163. package/Charting/Visuals/RenderableSeries/UniformHeatmapRenderableSeries.js +6 -0
  164. package/Charting/Visuals/RenderableSeries/XyScatterRenderableSeries.d.ts +5 -3
  165. package/Charting/Visuals/RenderableSeries/XyScatterRenderableSeries.js +6 -3
  166. package/Charting/Visuals/RenderableSeries/constants.d.ts +3 -0
  167. package/Charting/Visuals/RenderableSeries/constants.js +3 -0
  168. package/Charting/Visuals/SciChartDefaults.d.ts +9 -1
  169. package/Charting/Visuals/SciChartDefaults.js +9 -1
  170. package/Charting/Visuals/SciChartSurface.d.ts +4 -4
  171. package/Charting/Visuals/SciChartSurface.js +18 -11
  172. package/Charting/Visuals/SciChartSurfaceBase.d.ts +3 -2
  173. package/Charting/Visuals/SciChartSurfaceBase.js +4 -4
  174. package/Charting/Visuals/createMaster.d.ts +1 -1
  175. package/Charting/Visuals/createMaster.js +11 -6
  176. package/Charting/Visuals/createSingle.d.ts +1 -1
  177. package/Charting/Visuals/createSingle.js +2 -2
  178. package/Charting/Visuals/licenseManager2D.js +22 -21
  179. package/Charting/Visuals/licenseManager2dState.d.ts +4 -0
  180. package/Charting/Visuals/licenseManager2dState.js +12 -0
  181. package/Charting/Visuals/sciChartInitCommon.d.ts +2 -2
  182. package/Charting/Visuals/sciChartInitCommon.js +18 -12
  183. package/Charting3D/Model/DataSeries/XyzDataSeries3D.d.ts +7 -7
  184. package/Charting3D/Model/DataSeries/XyzDataSeries3D.js +3 -3
  185. package/Charting3D/Visuals/SciChart3DSurface.d.ts +2 -2
  186. package/Charting3D/Visuals/SciChart3DSurface.js +3 -3
  187. package/Charting3D/Visuals/createMaster3d.d.ts +1 -1
  188. package/Charting3D/Visuals/createMaster3d.js +11 -6
  189. package/Charting3D/Visuals/createSingle3d.d.ts +1 -1
  190. package/Charting3D/Visuals/createSingle3d.js +2 -2
  191. package/Core/BuildStamp.d.ts +1 -1
  192. package/Core/BuildStamp.js +2 -2
  193. package/Core/NumberRange.d.ts +1 -0
  194. package/Core/NumberRange.js +8 -0
  195. package/Core/OneTimePerformanceWarning.d.ts +6 -0
  196. package/Core/OneTimePerformanceWarning.js +19 -0
  197. package/Core/storage/localStorageApi.d.ts +9 -0
  198. package/Core/storage/localStorageApi.js +32 -0
  199. package/_wasm/scichart.browser.js +1 -1
  200. package/_wasm/scichart2d.js +12 -12
  201. package/_wasm/scichart2d.wasm +0 -0
  202. package/_wasm/scichart3d.js +96 -96
  203. package/_wasm/scichart3d.wasm +0 -0
  204. package/constants/performanceWarnings.d.ts +5 -0
  205. package/constants/performanceWarnings.js +8 -0
  206. package/package.json +1 -1
  207. package/types/NumberArray.d.ts +1 -0
  208. package/types/NumberArray.js +5 -1
  209. package/types/SearchMode.d.ts +21 -0
  210. package/types/SearchMode.js +25 -0
  211. package/types/TSciChart.d.ts +143 -40
  212. package/types/TSciChart3D.d.ts +66 -28
  213. package/types/TStackedAxisLength.d.ts +4 -0
  214. package/types/TStackedAxisLength.js +4 -0
  215. package/utils/array.d.ts +7 -0
  216. package/utils/array.js +19 -1
  217. package/utils/calcAverage.d.ts +2 -2
  218. package/utils/ccall/appendDoubleVectorFromJsArray.d.ts +19 -0
  219. package/utils/ccall/appendDoubleVectorFromJsArray.js +91 -0
  220. package/utils/hash.d.ts +7 -0
  221. package/utils/hash.js +35 -0
  222. package/utils/ccall/fillDoubleVectorFromJsArray.d.ts +0 -3
  223. package/utils/ccall/fillDoubleVectorFromJsArray.js +0 -33
@@ -18,7 +18,12 @@ var XySeriesInfo_1 = require("../../Model/ChartData/XySeriesInfo");
18
18
  var XyySeriesInfo_1 = require("../../Model/ChartData/XyySeriesInfo");
19
19
  var IDataSeries_1 = require("../../Model/IDataSeries");
20
20
  var IPaletteProvider_1 = require("../../Model/IPaletteProvider");
21
+ var XyPointSeriesResampled_1 = require("../../Model/PointSeries/XyPointSeriesResampled");
22
+ var XyPointSeriesWrapped_1 = require("../../Model/PointSeries/XyPointSeriesWrapped");
23
+ var ExtremeResamplerHelper_1 = require("../../Numerics/Resamplers/ExtremeResamplerHelper");
24
+ var ResamplingMode_1 = require("../../Numerics/Resamplers/ResamplingMode");
21
25
  var AxisCore_1 = require("../Axis/AxisCore");
26
+ var SciChartDefaults_1 = require("../SciChartDefaults");
22
27
  var SciChartSurfaceBase_1 = require("../SciChartSurfaceBase");
23
28
  var animationHelpers_1 = require("./Animations/animationHelpers");
24
29
  var constants_1 = require("./constants");
@@ -43,7 +48,7 @@ var BaseRenderableSeries = /** @class */ (function () {
43
48
  * @param options optional parameters of type {@link IBaseRenderableSeriesOptions} applied when constructing the series type
44
49
  */
45
50
  function BaseRenderableSeries(webAssemblyContext, options) {
46
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
51
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r;
47
52
  /** @inheritDoc */
48
53
  this.isStacked = false;
49
54
  /** @inheritDoc */
@@ -68,6 +73,8 @@ var BaseRenderableSeries = /** @class */ (function () {
68
73
  this.isVisibleProperty = true;
69
74
  this.paletteProviderProperty = IPaletteProvider_1.DefaultPaletteProvider.createEmpty();
70
75
  this.isDigitalLineProperty = false;
76
+ this.resamplingModeProperty = ResamplingMode_1.EResamplingMode.Auto;
77
+ this.resamplingPrecisionProperty = 0;
71
78
  this.webAssemblyContext = webAssemblyContext;
72
79
  this.id = (_a = options === null || options === void 0 ? void 0 : options.id) !== null && _a !== void 0 ? _a : (0, guid_1.generateGuid)();
73
80
  // It is very important to add bind(this) first line in constructor,
@@ -99,6 +106,8 @@ var BaseRenderableSeries = /** @class */ (function () {
99
106
  this.yAxisIdProperty = (_h = options === null || options === void 0 ? void 0 : options.yAxisId) !== null && _h !== void 0 ? _h : this.yAxisIdProperty;
100
107
  this.isVisibleProperty = (_j = options === null || options === void 0 ? void 0 : options.isVisible) !== null && _j !== void 0 ? _j : this.isVisibleProperty;
101
108
  this.isDigitalLineProperty = (_k = options === null || options === void 0 ? void 0 : options.isDigitalLine) !== null && _k !== void 0 ? _k : this.isDigitalLineProperty;
109
+ this.resamplingModeProperty = (_l = options === null || options === void 0 ? void 0 : options.resamplingMode) !== null && _l !== void 0 ? _l : this.resamplingModeProperty;
110
+ this.resamplingPrecisionProperty = (_m = options === null || options === void 0 ? void 0 : options.resamplingPrecision) !== null && _m !== void 0 ? _m : this.resamplingPrecisionProperty;
102
111
  if (options === null || options === void 0 ? void 0 : options.effect) {
103
112
  if (!("getNativeEffect" in options.effect)) {
104
113
  options.effect = (0, classFactory_1.createType)(BaseType_1.EBaseType.ShaderEffect, options.effect.type, webAssemblyContext, options.effect.options);
@@ -115,12 +124,12 @@ var BaseRenderableSeries = /** @class */ (function () {
115
124
  }
116
125
  }
117
126
  }
118
- this.paletteProviderProperty = (_l = options === null || options === void 0 ? void 0 : options.paletteProvider) !== null && _l !== void 0 ? _l : this.paletteProviderProperty;
127
+ this.paletteProviderProperty = (_o = options === null || options === void 0 ? void 0 : options.paletteProvider) !== null && _o !== void 0 ? _o : this.paletteProviderProperty;
119
128
  // PaletteProvider.onAttached must be called by the top level series, as the series type is not available here
120
- this.drawNaNAsProperty = (_m = options === null || options === void 0 ? void 0 : options.drawNaNAs) !== null && _m !== void 0 ? _m : this.drawNaNAsProperty;
129
+ this.drawNaNAsProperty = (_p = options === null || options === void 0 ? void 0 : options.drawNaNAs) !== null && _p !== void 0 ? _p : this.drawNaNAsProperty;
121
130
  this.hitTestProvider = this.newHitTestProvider();
122
- this.isSelected = (_o = options === null || options === void 0 ? void 0 : options.isSelected) !== null && _o !== void 0 ? _o : false;
123
- this.isHovered = (_p = options === null || options === void 0 ? void 0 : options.isHovered) !== null && _p !== void 0 ? _p : false;
131
+ this.isSelected = (_q = options === null || options === void 0 ? void 0 : options.isSelected) !== null && _q !== void 0 ? _q : false;
132
+ this.isHovered = (_r = options === null || options === void 0 ? void 0 : options.isHovered) !== null && _r !== void 0 ? _r : false;
124
133
  if (options === null || options === void 0 ? void 0 : options.onSelectedChanged) {
125
134
  if (typeof options.onSelectedChanged === "string") {
126
135
  this.typeMap.set("onSelectedChanged", options.onSelectedChanged);
@@ -158,6 +167,7 @@ var BaseRenderableSeries = /** @class */ (function () {
158
167
  }
159
168
  }
160
169
  this.onDpiChanged = this.onDpiChanged.bind(this);
170
+ this.resamplerHelper = new ExtremeResamplerHelper_1.ExtremeResamplerHelper(webAssemblyContext);
161
171
  }
162
172
  /** @inheritDoc */
163
173
  BaseRenderableSeries.prototype.applyTheme = function (themeProvider) {
@@ -383,6 +393,14 @@ var BaseRenderableSeries = /** @class */ (function () {
383
393
  enumerable: false,
384
394
  configurable: true
385
395
  });
396
+ Object.defineProperty(BaseRenderableSeries.prototype, "enableDrawingOptimisations", {
397
+ /** @inheritDoc */
398
+ get: function () {
399
+ return this.resamplingModeProperty !== ResamplingMode_1.EResamplingMode.None;
400
+ },
401
+ enumerable: false,
402
+ configurable: true
403
+ });
386
404
  Object.defineProperty(BaseRenderableSeries.prototype, "effect", {
387
405
  /**
388
406
  * Gets an optional {@link ShaderEffect} for modifying the render output of this {@link IRenderableSeries}
@@ -405,6 +423,34 @@ var BaseRenderableSeries = /** @class */ (function () {
405
423
  enumerable: false,
406
424
  configurable: true
407
425
  });
426
+ Object.defineProperty(BaseRenderableSeries.prototype, "resamplingMode", {
427
+ /**
428
+ * Gets or Sets the resamplingMode {@link EResamplingMode}
429
+ */
430
+ get: function () {
431
+ return this.resamplingModeProperty;
432
+ },
433
+ set: function (value) {
434
+ this.resamplingModeProperty = value;
435
+ this.notifyPropertyChanged(constants_1.PROPERTY.RESAMPLING_MODE);
436
+ },
437
+ enumerable: false,
438
+ configurable: true
439
+ });
440
+ Object.defineProperty(BaseRenderableSeries.prototype, "resamplingPrecision", {
441
+ /**
442
+ * Gets or Sets the resamplingPrecision
443
+ */
444
+ get: function () {
445
+ return this.resamplingPrecisionProperty;
446
+ },
447
+ set: function (value) {
448
+ this.resamplingPrecisionProperty = value;
449
+ this.notifyPropertyChanged(constants_1.PROPERTY.RESAMPLING_PRECISION);
450
+ },
451
+ enumerable: false,
452
+ configurable: true
453
+ });
408
454
  Object.defineProperty(BaseRenderableSeries.prototype, "isSpline", {
409
455
  /** @inheritDoc */
410
456
  get: function () {
@@ -416,13 +462,12 @@ var BaseRenderableSeries = /** @class */ (function () {
416
462
  /** @inheritDoc */
417
463
  BaseRenderableSeries.prototype.draw = function (renderContext, renderPassData) {
418
464
  var _a;
465
+ this.currentRenderPassData = renderPassData;
419
466
  (_a = this.hitTestProvider) === null || _a === void 0 ? void 0 : _a.update(renderPassData);
420
467
  if (this.canDraw) {
421
468
  try {
422
469
  renderContext.pushShaderEffect(this.effect);
423
- this.drawingProviders.forEach(function (dp, index) {
424
- dp.draw(renderContext, renderPassData);
425
- });
470
+ this.drawingProviders.forEach(function (dp) { return dp.draw(renderContext, renderPassData); });
426
471
  }
427
472
  finally {
428
473
  renderContext.popShaderEffect();
@@ -437,6 +482,7 @@ var BaseRenderableSeries = /** @class */ (function () {
437
482
  this.dataSeries = (0, Deleter_1.deleteSafe)(this.dataSeries);
438
483
  this.effect = (0, Deleter_1.deleteSafe)(this.effect);
439
484
  (_a = this.pointMarker) === null || _a === void 0 ? void 0 : _a.delete();
485
+ this.resamplerHelper = (0, Deleter_1.deleteSafe)(this.resamplerHelper);
440
486
  };
441
487
  /** @inheritDoc */
442
488
  BaseRenderableSeries.prototype.getXRange = function () {
@@ -512,7 +558,8 @@ var BaseRenderableSeries = /** @class */ (function () {
512
558
  };
513
559
  /** @inheritDoc */
514
560
  BaseRenderableSeries.prototype.getDataSeriesName = function () {
515
- return this.dataSeries.dataSeriesName;
561
+ var _a;
562
+ return (_a = this.dataSeries) === null || _a === void 0 ? void 0 : _a.dataSeriesName;
516
563
  };
517
564
  /** @inheritDoc */
518
565
  BaseRenderableSeries.prototype.getNativeXValues = function () {
@@ -588,7 +635,9 @@ var BaseRenderableSeries = /** @class */ (function () {
588
635
  strokeThickness: this.strokeThickness,
589
636
  xAxisId: this.xAxisId,
590
637
  yAxisId: this.yAxisId,
591
- animation: this.animation
638
+ animation: this.animation,
639
+ resamplingMode: this.resamplingMode,
640
+ resamplingPrecision: this.resamplingPrecision
592
641
  // onSelectedChanged: this.onSelectedChanged
593
642
  };
594
643
  if (((_c = this.dataSeries) === null || _c === void 0 ? void 0 : _c.type) === IDataSeries_1.EDataSeriesType.Xy) {
@@ -630,7 +679,7 @@ var BaseRenderableSeries = /** @class */ (function () {
630
679
  };
631
680
  Object.defineProperty(BaseRenderableSeries.prototype, "animation", {
632
681
  /**
633
- * Sets a start up animation class, a child class for {@link BaseAnimation}
682
+ * Sets a start up animation class, a child class for {@link SeriesAnimation}
634
683
  */
635
684
  set: function (value) {
636
685
  if (value) {
@@ -677,6 +726,62 @@ var BaseRenderableSeries = /** @class */ (function () {
677
726
  return;
678
727
  animationHelpers_1.animationHelpers.animationUpdate(this.animationFSM, timeElapsed, this.beforeAnimationStart, this.afterAnimationComplete, this.updateAnimationProperties);
679
728
  };
729
+ /** @inheritDoc */
730
+ BaseRenderableSeries.prototype.toPointSeries = function (rp) {
731
+ if (rp) {
732
+ if (!this.pointSeries) {
733
+ this.pointSeries = new XyPointSeriesResampled_1.XyPointSeriesResampled(this.webAssemblyContext, rp.xVisibleRange);
734
+ }
735
+ else {
736
+ this.pointSeries.xRange = rp.xVisibleRange;
737
+ }
738
+ this.resamplerHelper.resampleIntoPointSeries(this.webAssemblyContext, rp, this.dataSeries.getNativeXValues(), this.dataSeries.getNativeYValues(), this.pointSeries.intIndexes, this.pointSeries.xValues, this.pointSeries.yValues, false);
739
+ if (rp.isCategoryAxis) {
740
+ this.pointSeries.updateIndexes();
741
+ }
742
+ this.pointSeries.clearIntIndexes();
743
+ // this.pointSeries.debugOutputForUnitTests();
744
+ return this.pointSeries;
745
+ }
746
+ else {
747
+ return new XyPointSeriesWrapped_1.XyPointSeriesWrapped(this.dataSeries);
748
+ }
749
+ };
750
+ /** @inheritDoc */
751
+ BaseRenderableSeries.prototype.getIndicesRange = function (xRange, isCategoryData) {
752
+ var _a;
753
+ if (isCategoryData === void 0) { isCategoryData = false; }
754
+ return (_a = this.dataSeries) === null || _a === void 0 ? void 0 : _a.getIndicesRange(xRange, isCategoryData);
755
+ };
756
+ /** @inheritDoc */
757
+ BaseRenderableSeries.prototype.getCurrentRenderPassData = function () {
758
+ return this.currentRenderPassData;
759
+ };
760
+ Object.defineProperty(BaseRenderableSeries.prototype, "supportsResampling", {
761
+ /** @inheritDoc */
762
+ get: function () {
763
+ var seriesTypeSupportsResampling = ![
764
+ SeriesType_1.ESeriesType.UniformContoursSeries,
765
+ SeriesType_1.ESeriesType.UniformHeatmapSeries,
766
+ SeriesType_1.ESeriesType.ScatterSeries
767
+ ].includes(this.type);
768
+ return (seriesTypeSupportsResampling &&
769
+ SciChartDefaults_1.SciChartDefaults.enableResampling &&
770
+ this.enableDrawingOptimisations &&
771
+ this.dataSeries &&
772
+ this.dataSeries.count() > 0 &&
773
+ this.dataSeries.dataDistributionCalculator.isSortedAscending);
774
+ },
775
+ enumerable: false,
776
+ configurable: true
777
+ });
778
+ /**
779
+ * Used internally to check if resampling is needed for the renderable series
780
+ * @protected
781
+ */
782
+ BaseRenderableSeries.prototype.needsResampling = function (rp) {
783
+ return this.resamplerHelper.needsResampling(rp, this.getNativeXValues());
784
+ };
680
785
  /**
681
786
  * Sets initial and end animation vectors
682
787
  * @param animation
@@ -4,11 +4,14 @@ import { EventHandler } from "../../../Core/EventHandler";
4
4
  import { NumberRange } from "../../../Core/NumberRange";
5
5
  import { ObservableArray } from "../../../Core/ObservableArray";
6
6
  import { ESeriesType } from "../../../types/SeriesType";
7
- import { DoubleVector, TSciChart } from "../../../types/TSciChart";
7
+ import { SCRTDoubleVector, TSciChart } from "../../../types/TSciChart";
8
8
  import { ELineDrawMode, WebGlRenderContext2D } from "../../Drawing/WebGlRenderContext2D";
9
9
  import { SeriesInfo } from "../../Model/ChartData/SeriesInfo";
10
10
  import { IDataSeries } from "../../Model/IDataSeries";
11
11
  import { IPaletteProvider } from "../../Model/IPaletteProvider";
12
+ import { IPointSeries } from "../../Model/PointSeries/IPointSeries";
13
+ import { EResamplingMode } from "../../Numerics/Resamplers/ResamplingMode";
14
+ import { ResamplingParams } from "../../Numerics/Resamplers/ResamplingParams";
12
15
  import { RenderPassData } from "../../Services/RenderPassData";
13
16
  import { IThemeProvider } from "../../Themes/IThemeProvider";
14
17
  import { AxisCore } from "../Axis/AxisCore";
@@ -54,22 +57,32 @@ export interface IBaseStackedCollectionOptions {
54
57
  * Concrete types are {@link StackedColumnCollection} and {@link StackedMountainCollection}
55
58
  */
56
59
  export declare abstract class BaseStackedCollection<T extends BaseStackedRenderableSeries> extends ObservableArray<T> implements IRenderableSeries {
60
+ /** @inheritDoc */
57
61
  abstract readonly type: ESeriesType;
62
+ /** @inheritDoc */
58
63
  readonly id: string;
64
+ /** @inheritDoc */
59
65
  readonly isStacked = true;
66
+ /** @inheritDoc */
67
+ readonly supportsResampling = false;
68
+ /** @inheritDoc */
60
69
  readonly isSpline = false;
70
+ /** @inheritDoc */
61
71
  parentSurface: SciChartSurface;
72
+ /** @inheritDoc */
62
73
  invalidateParentCallback: () => void;
63
74
  /**
64
75
  * the accumulated values which are used to draw each column/band for {@link BaseStackedRenderableSeries}
65
76
  */
66
- accumulatedValues0: DoubleVector;
77
+ accumulatedValues0: SCRTDoubleVector;
78
+ /** @inheritDoc */
79
+ enableDrawingOptimisations: boolean;
67
80
  /**
68
81
  * The {@link TSciChart | SciChart WebAssembly Context} containing
69
82
  * native methods and access to our WebGL2 WebAssembly Drawing Engine
70
83
  */
71
84
  protected webAssemblyContext: TSciChart;
72
- protected accumulatedFinalAnimationValues0: DoubleVector;
85
+ protected accumulatedFinalAnimationValues0: SCRTDoubleVector;
73
86
  protected isAccumulatedVectorDirty: boolean;
74
87
  protected firstAnimationRender: boolean;
75
88
  protected animationFSM: SeriesAnimationFiniteStateMachine;
@@ -82,6 +95,7 @@ export declare abstract class BaseStackedCollection<T extends BaseStackedRendera
82
95
  * Creates an instance of the {@link BaseStackedCollection}
83
96
  * @param webAssemblyContext The {@link TSciChart | SciChart WebAssembly Context} containing
84
97
  * native methods and access to our WebGL2 WebAssembly Drawing Engine
98
+ * @param options Optional parameters of type {@link IBaseStackedCollectionOptions} to configure the series
85
99
  */
86
100
  protected constructor(webAssemblyContext: TSciChart, options?: IBaseStackedCollectionOptions);
87
101
  /** @inheritDoc */
@@ -222,6 +236,18 @@ export declare abstract class BaseStackedCollection<T extends BaseStackedRendera
222
236
  * rolloverModifierProps1() is not supported for BaseStackedCollection
223
237
  */
224
238
  get rolloverModifierProps1(): RolloverModifierRenderableSeriesProps;
239
+ /**
240
+ * resamplingMode property is not supported for BaseStackedCollection
241
+ */
242
+ get resamplingMode(): EResamplingMode;
243
+ set resamplingMode(value: EResamplingMode);
244
+ /**
245
+ * resamplingPrecision property is not supported for BaseStackedCollection
246
+ */
247
+ get resamplingPrecision(): number;
248
+ set resamplingPrecision(value: number);
249
+ /** @inheritDoc */
250
+ getIndicesRange(xRange: NumberRange): NumberRange;
225
251
  protected get canDraw(): boolean;
226
252
  /** @inheritDoc */
227
253
  pushPalettedColors?(color: number, palettingState: TPalettingState): void;
@@ -244,7 +270,7 @@ export declare abstract class BaseStackedCollection<T extends BaseStackedRendera
244
270
  /** @inheritDoc */
245
271
  getDataSeriesValuesCount(): number;
246
272
  /** @inheritDoc */
247
- getNativeXValues(): DoubleVector;
273
+ getNativeXValues(): SCRTDoubleVector;
248
274
  /** @inheritDoc */
249
275
  abstract getXRange(): NumberRange;
250
276
  /** @inheritDoc */
@@ -290,6 +316,12 @@ export declare abstract class BaseStackedCollection<T extends BaseStackedRendera
290
316
  */
291
317
  checkIsOutOfDataRange(xValue: number, yValue: number): boolean;
292
318
  /** @inheritDoc */
319
+ toPointSeries(resamplingParams?: ResamplingParams): IPointSeries;
320
+ /**
321
+ * getCurrentRenderPassData method is not supported for BaseStackedCollection
322
+ */
323
+ getCurrentRenderPassData(): RenderPassData;
324
+ /** @inheritDoc */
293
325
  toJSON(excludeData?: boolean): TSeriesDefinition;
294
326
  protected isAllDataSeriesSet(): boolean;
295
327
  /**
@@ -35,13 +35,21 @@ var BaseStackedCollection = /** @class */ (function (_super) {
35
35
  * Creates an instance of the {@link BaseStackedCollection}
36
36
  * @param webAssemblyContext The {@link TSciChart | SciChart WebAssembly Context} containing
37
37
  * native methods and access to our WebGL2 WebAssembly Drawing Engine
38
+ * @param options Optional parameters of type {@link IBaseStackedCollectionOptions} to configure the series
38
39
  */
39
40
  function BaseStackedCollection(webAssemblyContext, options) {
40
41
  var _a, _b, _c, _d;
41
42
  var _this = _super.call(this) || this;
43
+ /** @inheritDoc */
42
44
  _this.id = (0, guid_1.generateGuid)();
45
+ /** @inheritDoc */
43
46
  _this.isStacked = true;
47
+ /** @inheritDoc */
48
+ _this.supportsResampling = false;
49
+ /** @inheritDoc */
44
50
  _this.isSpline = false;
51
+ /** @inheritDoc */
52
+ _this.enableDrawingOptimisations = true;
45
53
  _this.isAccumulatedVectorDirty = true;
46
54
  _this.firstAnimationRender = false;
47
55
  _this.isVisibleProperty = true;
@@ -60,8 +68,8 @@ var BaseStackedCollection = /** @class */ (function (_super) {
60
68
  _this.beforeAnimationStart = _this.beforeAnimationStart.bind(_this);
61
69
  _this.afterAnimationComplete = _this.afterAnimationComplete.bind(_this);
62
70
  _this.updateAnimationProperties = _this.updateAnimationProperties.bind(_this);
63
- _this.accumulatedValues0 = new _this.webAssemblyContext.DoubleVector();
64
- _this.accumulatedFinalAnimationValues0 = new _this.webAssemblyContext.DoubleVector();
71
+ _this.accumulatedValues0 = new _this.webAssemblyContext.SCRTDoubleVector();
72
+ _this.accumulatedFinalAnimationValues0 = new _this.webAssemblyContext.SCRTDoubleVector();
65
73
  return _this;
66
74
  }
67
75
  Object.defineProperty(BaseStackedCollection.prototype, "selected", {
@@ -386,6 +394,36 @@ var BaseStackedCollection = /** @class */ (function (_super) {
386
394
  enumerable: false,
387
395
  configurable: true
388
396
  });
397
+ Object.defineProperty(BaseStackedCollection.prototype, "resamplingMode", {
398
+ /**
399
+ * resamplingMode property is not supported for BaseStackedCollection
400
+ */
401
+ get: function () {
402
+ throw Error("resamplingMode property is not supported for BaseStackedCollection");
403
+ },
404
+ set: function (value) {
405
+ throw Error("resamplingMode property is not supported for BaseStackedCollection");
406
+ },
407
+ enumerable: false,
408
+ configurable: true
409
+ });
410
+ Object.defineProperty(BaseStackedCollection.prototype, "resamplingPrecision", {
411
+ /**
412
+ * resamplingPrecision property is not supported for BaseStackedCollection
413
+ */
414
+ get: function () {
415
+ throw Error("resamplingPrecision property is not supported for BaseStackedCollection");
416
+ },
417
+ set: function (value) {
418
+ throw Error("resamplingPrecision property is not supported for BaseStackedCollection");
419
+ },
420
+ enumerable: false,
421
+ configurable: true
422
+ });
423
+ /** @inheritDoc */
424
+ BaseStackedCollection.prototype.getIndicesRange = function (xRange) {
425
+ throw Error("getIndicesRange() method is not supported for BaseStackedCollection");
426
+ };
389
427
  Object.defineProperty(BaseStackedCollection.prototype, "canDraw", {
390
428
  get: function () {
391
429
  return animationHelpers_1.animationHelpers.checkCanDraw(this.animationFSM);
@@ -561,6 +599,17 @@ var BaseStackedCollection = /** @class */ (function (_super) {
561
599
  throw Error("checkIsOutOfDataRange() method is not supported for BaseStackedCollection");
562
600
  };
563
601
  /** @inheritDoc */
602
+ BaseStackedCollection.prototype.toPointSeries = function (resamplingParams) {
603
+ // not used for BaseStackedCollection
604
+ return undefined;
605
+ };
606
+ /**
607
+ * getCurrentRenderPassData method is not supported for BaseStackedCollection
608
+ */
609
+ BaseStackedCollection.prototype.getCurrentRenderPassData = function () {
610
+ throw Error("getCurrentRenderPassData method is not supported for BaseStackedCollection");
611
+ };
612
+ /** @inheritDoc */
564
613
  BaseStackedCollection.prototype.toJSON = function (excludeData) {
565
614
  if (excludeData === void 0) { excludeData = false; }
566
615
  var series = [];
@@ -577,7 +626,6 @@ var BaseStackedCollection = /** @class */ (function (_super) {
577
626
  // @ts-ignore
578
627
  return { type: this.type, series: series, options: options };
579
628
  };
580
- // Un-Supported PROPERTIES END
581
629
  BaseStackedCollection.prototype.isAllDataSeriesSet = function () {
582
630
  var isDataSeriesSet = true;
583
631
  this.asArray().forEach(function (el) {
@@ -3,11 +3,14 @@ import { SeriesAnimationFiniteStateMachine } from "../../../Core/Animations/Anim
3
3
  import { EventHandler } from "../../../Core/EventHandler";
4
4
  import { NumberRange } from "../../../Core/NumberRange";
5
5
  import { ESeriesType } from "../../../types/SeriesType";
6
- import { DoubleVector, TSciChart } from "../../../types/TSciChart";
6
+ import { SCRTDoubleVector, TSciChart } from "../../../types/TSciChart";
7
7
  import { ELineDrawMode, WebGlRenderContext2D } from "../../Drawing/WebGlRenderContext2D";
8
8
  import { SeriesInfo } from "../../Model/ChartData/SeriesInfo";
9
9
  import { IDataSeries } from "../../Model/IDataSeries";
10
10
  import { IPaletteProvider } from "../../Model/IPaletteProvider";
11
+ import { IPointSeries } from "../../Model/PointSeries/IPointSeries";
12
+ import { EResamplingMode } from "../../Numerics/Resamplers/ResamplingMode";
13
+ import { ResamplingParams } from "../../Numerics/Resamplers/ResamplingParams";
11
14
  import { RenderPassData } from "../../Services/RenderPassData";
12
15
  import { IThemeProvider } from "../../Themes/IThemeProvider";
13
16
  import { AxisCore } from "../Axis/AxisCore";
@@ -46,9 +49,15 @@ export interface IBasedStackedRenderableSeriesOptions {
46
49
  * details on how to implement stacked column and mountain charts in SciChart
47
50
  */
48
51
  export declare abstract class BaseStackedRenderableSeries implements IRenderableSeries {
52
+ /** @inheritDoc */
49
53
  abstract readonly type: ESeriesType;
54
+ /** @inheritDoc */
50
55
  readonly id: string;
56
+ /** @inheritDoc */
51
57
  readonly isStacked: boolean;
58
+ /** @inheritDoc */
59
+ readonly supportsResampling = false;
60
+ /** @inheritDoc */
52
61
  readonly isSpline: boolean;
53
62
  readonly rolloverModifierProps: RolloverModifierRenderableSeriesProps;
54
63
  /** @inheritDoc */
@@ -59,8 +68,12 @@ export declare abstract class BaseStackedRenderableSeries implements IRenderable
59
68
  /**
60
69
  * the accumulated values which are used to draw each column/band for {@link BaseStackedRenderableSeries}
61
70
  */
62
- accumulatedValues: DoubleVector;
63
- protected accumulatedFinalAnimationValues: DoubleVector;
71
+ accumulatedValues: SCRTDoubleVector;
72
+ /**
73
+ * When true, enables drawing optimizations on the series for extra performance
74
+ */
75
+ enableDrawingOptimisations: boolean;
76
+ protected accumulatedFinalAnimationValues: SCRTDoubleVector;
64
77
  protected webAssemblyContext: TSciChart;
65
78
  protected parentCollection: BaseStackedCollection<BaseStackedRenderableSeries>;
66
79
  protected notifyParentPropertyChangedFn: (propertyName: string) => void;
@@ -114,7 +127,7 @@ export declare abstract class BaseStackedRenderableSeries implements IRenderable
114
127
  /**
115
128
  * @inheritDoc
116
129
  */
117
- getNativeXValues(): DoubleVector;
130
+ getNativeXValues(): SCRTDoubleVector;
118
131
  /**
119
132
  * Called when the {@link BaseStackedRenderableSeries} is detached from its parent {@link BaseStackedCollection}
120
133
  */
@@ -193,6 +206,18 @@ export declare abstract class BaseStackedRenderableSeries implements IRenderable
193
206
  * animation() is not supported for BaseStackedRenderableSeries
194
207
  */
195
208
  get animation(): SeriesAnimation;
209
+ /** @inheritDoc */
210
+ getIndicesRange(xRange: NumberRange): NumberRange;
211
+ /**
212
+ * resamplingMode property is not supported for BaseStackedRenderableSeries
213
+ */
214
+ get resamplingMode(): EResamplingMode;
215
+ set resamplingMode(value: EResamplingMode);
216
+ /**
217
+ * resamplingPrecision property is not supported for BaseStackedRenderableSeries
218
+ */
219
+ get resamplingPrecision(): number;
220
+ set resamplingPrecision(value: number);
196
221
  /**
197
222
  * @inheritDoc
198
223
  */
@@ -286,6 +311,15 @@ export declare abstract class BaseStackedRenderableSeries implements IRenderable
286
311
  getSeriesInfo(hitTestInfo: HitTestInfo): SeriesInfo;
287
312
  /** @inheritDoc */
288
313
  toJSON(excludeData?: boolean): TSeriesDefinition;
314
+ /**
315
+ * toPointSeries method is not supported for BaseStackedRenderableSeries
316
+ * @param resamplingParams
317
+ */
318
+ toPointSeries(resamplingParams?: ResamplingParams): IPointSeries;
319
+ /**
320
+ * getCurrentRenderPassData method is not supported for BaseStackedRenderableSeries
321
+ */
322
+ getCurrentRenderPassData(): RenderPassData;
289
323
  /**
290
324
  * drawingProviders property is not supported for BaseStackedRenderableSeries
291
325
  * instead set on the {@link StackedColumnCollection} or {@link StackedMountainCollection}
@@ -26,14 +26,23 @@ var BaseStackedRenderableSeries = /** @class */ (function () {
26
26
  */
27
27
  function BaseStackedRenderableSeries(webAssemblyContext, options) {
28
28
  var _a, _b;
29
+ /** @inheritDoc */
29
30
  this.id = (0, guid_1.generateGuid)();
31
+ /** @inheritDoc */
30
32
  this.isStacked = true;
33
+ /** @inheritDoc */
34
+ this.supportsResampling = false;
35
+ /** @inheritDoc */
31
36
  this.isSpline = false;
32
37
  this.rolloverModifierProps = new RolloverModifierRenderableSeriesProps_1.RolloverModifierRenderableSeriesProps(this);
33
38
  /** @inheritDoc */
34
39
  this.selected = new EventHandler_1.EventHandler();
35
40
  /** @inheritDoc */
36
41
  this.hovered = new EventHandler_1.EventHandler();
42
+ /**
43
+ * When true, enables drawing optimizations on the series for extra performance
44
+ */
45
+ this.enableDrawingOptimisations = true;
37
46
  this.drawNaNAsProperty = WebGlRenderContext2D_1.ELineDrawMode.DiscontinuousLine;
38
47
  this.isVisibleProperty = true;
39
48
  this.strokeThicknessProperty = 2;
@@ -44,8 +53,8 @@ var BaseStackedRenderableSeries = /** @class */ (function () {
44
53
  this.isHoveredProperty = false;
45
54
  this.notifyDataSeriesChanged = this.notifyDataSeriesChanged.bind(this);
46
55
  this.notifyPointMarkerChanged = this.notifyPointMarkerChanged.bind(this);
47
- this.accumulatedValues = new webAssemblyContext.DoubleVector();
48
- this.accumulatedFinalAnimationValues = new webAssemblyContext.DoubleVector();
56
+ this.accumulatedValues = new webAssemblyContext.SCRTDoubleVector();
57
+ this.accumulatedFinalAnimationValues = new webAssemblyContext.SCRTDoubleVector();
49
58
  this.dataSeries = (_a = options === null || options === void 0 ? void 0 : options.dataSeries) !== null && _a !== void 0 ? _a : this.dataSeriesProperty;
50
59
  this.opacityProperty = (_b = options === null || options === void 0 ? void 0 : options.opacity) !== null && _b !== void 0 ? _b : 1;
51
60
  this.webAssemblyContext = webAssemblyContext;
@@ -266,6 +275,36 @@ var BaseStackedRenderableSeries = /** @class */ (function () {
266
275
  enumerable: false,
267
276
  configurable: true
268
277
  });
278
+ /** @inheritDoc */
279
+ BaseStackedRenderableSeries.prototype.getIndicesRange = function (xRange) {
280
+ throw Error("getIndicesRange() method is not supported for BaseStackedRenderableSeries");
281
+ };
282
+ Object.defineProperty(BaseStackedRenderableSeries.prototype, "resamplingMode", {
283
+ /**
284
+ * resamplingMode property is not supported for BaseStackedRenderableSeries
285
+ */
286
+ get: function () {
287
+ throw Error("resamplingMode property is not supported for BaseStackedRenderableSeries");
288
+ },
289
+ set: function (value) {
290
+ throw Error("resamplingMode property is not supported for BaseStackedRenderableSeries");
291
+ },
292
+ enumerable: false,
293
+ configurable: true
294
+ });
295
+ Object.defineProperty(BaseStackedRenderableSeries.prototype, "resamplingPrecision", {
296
+ /**
297
+ * resamplingPrecision property is not supported for BaseStackedRenderableSeries
298
+ */
299
+ get: function () {
300
+ throw Error("resamplingPrecision property is not supported for BaseStackedRenderableSeries");
301
+ },
302
+ set: function (value) {
303
+ throw Error("resamplingPrecision property is not supported for BaseStackedRenderableSeries");
304
+ },
305
+ enumerable: false,
306
+ configurable: true
307
+ });
269
308
  Object.defineProperty(BaseStackedRenderableSeries.prototype, "parentSurface", {
270
309
  // NOT SUPPORTED METHODS END
271
310
  /**
@@ -497,8 +536,20 @@ var BaseStackedRenderableSeries = /** @class */ (function () {
497
536
  return { type: this.type, options: options };
498
537
  }
499
538
  };
539
+ /**
540
+ * toPointSeries method is not supported for BaseStackedRenderableSeries
541
+ * @param resamplingParams
542
+ */
543
+ BaseStackedRenderableSeries.prototype.toPointSeries = function (resamplingParams) {
544
+ throw Error("toPointSeries method is not supported for BaseStackedRenderableSeries");
545
+ };
546
+ /**
547
+ * getCurrentRenderPassData method is not supported for BaseStackedRenderableSeries
548
+ */
549
+ BaseStackedRenderableSeries.prototype.getCurrentRenderPassData = function () {
550
+ throw Error("getCurrentRenderPassData method is not supported for BaseStackedRenderableSeries");
551
+ };
500
552
  Object.defineProperty(BaseStackedRenderableSeries.prototype, "drawingProviders", {
501
- // NOT SUPPORTED PROPERTIES BEGIN
502
553
  /**
503
554
  * drawingProviders property is not supported for BaseStackedRenderableSeries
504
555
  * instead set on the {@link StackedColumnCollection} or {@link StackedMountainCollection}
@@ -1,9 +1,9 @@
1
1
  import { TSciChart } from "../../../../types/TSciChart";
2
2
  import { WebGlRenderContext2D } from "../../../Drawing/WebGlRenderContext2D";
3
3
  import { RenderPassData } from "../../../Services/RenderPassData";
4
+ import { TDpiChangedEventArgs } from "../../TextureManager/DpiHelper";
4
5
  import { BaseBandRenderableSeries } from "../BaseBandRenderableSeries";
5
6
  import { BaseSeriesDrawingProvider } from "./BaseSeriesDrawingProvider";
6
- import { TDpiChangedEventArgs } from "../../TextureManager/DpiHelper";
7
7
  /**
8
8
  * Used internally - a drawing provider performs drawing for a {@link BaseBandRenderableSeries} using
9
9
  * our WebAssembly WebGL rendering engine