The IPIData2 interface is a secondary interface supported by the PIData object. The interface has several methods that provide enhancements to the PIData functionality.
The Summaries2 and InterpolatedValues2 methods in IPIData2 differ from the corresponding methods Summaries and InterpolatedValue in PIData only in the specification of the interval. In the PIData methods, the caller specifies the number of interval and the SDK computes the interval length based on the start time and the end time. The interval length is constant throughout the requested period.
In the Summaries2 and InterpolatedValues2 methods in IPIData2, user specifies the interval length as a variant. SDK computes the number of interval and override the end time if necessary. In addition, if the interval length is specified as a string, SDK handles interval length changes within the requested period. There are two types of interval length changes, changes due to DST change (like 23 hour day and 25 hour day at the DST change day) and changes due to different number of days in a month. By default, intervals specified as seconds, minutes and hours are assumed to be constant and not affected by DST. Hence, user can use "24h" to distinguish from "1d" if constant interval is desired. Interval length specified as numeric type is considered to be constant throughout the request period.
Therefore, the Summaries2 and InterpolatedValues2 methods in IPIData2 are most useful for applicants supporting user inputting interval length as string.