Пример #1
0
        internal unsafe IntPtr ToNative(PinCollection pin, ref NativeTypes.FABRIC_SERVICE_PLACEMENT_POLICY_DESCRIPTION nativePolicy)
        {
            NativeTypes.FABRIC_PLACEMENT_POLICY_TYPE type;

            nativePolicy.Value = this.ToNative(pin, out type);
            nativePolicy.Type  = type;

            return(pin.AddBlittable(nativePolicy));
        }
Пример #2
0
        internal Tuple <uint, IntPtr> ToNativePolicies(PinCollection pin)
        {
            if (this.PlacementPolicies.Count == 0)
            {
                return(Tuple.Create((uint)0, IntPtr.Zero));
            }

            var policyArray = new NativeTypes.FABRIC_SERVICE_PLACEMENT_POLICY_DESCRIPTION[this.PlacementPolicies.Count];

            for (int i = 0; i < this.PlacementPolicies.Count; i++)
            {
                this.PlacementPolicies[i].ToNative(pin, ref policyArray[i]);
            }

            return(Tuple.Create((uint)this.PlacementPolicies.Count, pin.AddBlittable(policyArray)));
        }