public static void set_page_ranges(cef_print_settings_t *self, UIntPtr rangesCount, cef_range_t *ranges)
        {
            set_page_ranges_delegate d;
            var p = self->_set_page_ranges;

            if (p == _pd)
            {
                d = _dd;
            }
            else
            {
                d = (set_page_ranges_delegate)Marshal.GetDelegateForFunctionPointer(p, typeof(set_page_ranges_delegate));
                if (_pd == IntPtr.Zero)
                {
                    _dd = d; _pd = p;
                }
            }
            d(self, rangesCount, ranges);
        }
 public static void set_page_ranges(cef_print_settings_t* self, UIntPtr rangesCount, cef_page_range_t* ranges)
 {
     set_page_ranges_delegate d;
     var p = self->_set_page_ranges;
     if (p == _pd) { d = _dd; }
     else
     {
         d = (set_page_ranges_delegate)Marshal.GetDelegateForFunctionPointer(p, typeof(set_page_ranges_delegate));
         if (_pd == IntPtr.Zero) { _dd = d; _pd = p; }
     }
     d(self, rangesCount, ranges);
 }