예제 #1
0
        internal IntPtr ToNative(PinCollection pinCollection)
        {
            var nativeTimeRange = new NativeTypes.FABRIC_CHAOS_SCHEDULE_TIME_RANGE_UTC
            {
                StartTime = this.StartTime.ToNative(pinCollection),
                EndTime   = this.EndTime.ToNative(pinCollection),
            };

            return(pinCollection.AddBlittable(nativeTimeRange));
        }
예제 #2
0
        internal static unsafe IntPtr ToNativeList(PinCollection pinCollection, List <ChaosScheduleTimeRangeUtc> times)
        {
            var timesArray = new NativeTypes.FABRIC_CHAOS_SCHEDULE_TIME_RANGE_UTC[times.Count];

            for (int i = 0; i < times.Count; i++)
            {
                timesArray[i].StartTime = times[i].StartTime.ToNative(pinCollection);
                timesArray[i].EndTime   = times[i].EndTime.ToNative(pinCollection);
            }

            var nativeTimeRangeList = new NativeTypes.FABRIC_CHAOS_SCHEDULE_TIME_RANGE_UTC_LIST
            {
                Count = (uint)times.Count,
                Items = pinCollection.AddBlittable(timesArray)
            };

            return(pinCollection.AddBlittable(nativeTimeRangeList));
        }