コード例 #1
0
ファイル: LinearGradient.cs プロジェクト: zhouweiaccp/XobotOS
 private System.IntPtr nativePostCreate1(android.graphics.Shader.NativeShader native_shader
                                         , float x0, float y0, float x1, float y1, int[] colors, float[] positions, int tileMode
                                         )
 {
     Sharpen.INativeHandle colors_handle    = null;
     Sharpen.INativeHandle positions_handle = null;
     try
     {
         colors_handle    = XobotOS.Runtime.MarshalGlue.Array_int_Helper.GetPinnedPtr(colors);
         positions_handle = XobotOS.Runtime.MarshalGlue.Array_float_Helper.GetPinnedPtr(positions
                                                                                        );
         return(libxobotos_LinearGradient_LinearGradient_postCreate(native_shader, x0, y0,
                                                                    x1, y1, colors_handle.Address, positions_handle != null ? positions_handle.Address
                                  : System.IntPtr.Zero, tileMode));
     }
     finally
     {
         if (colors_handle != null)
         {
             colors_handle.Free();
         }
         if (positions_handle != null)
         {
             positions_handle.Free();
         }
     }
 }
コード例 #2
0
 private static void nativeDraw(android.graphics.Canvas.NativeCanvas canvas_instance
                                , android.graphics.Rect loc, android.graphics.Bitmap.NativeBitmap bitmap_instance
                                , byte[] c, android.graphics.Paint.NativePaint paint_instance_or_null, int destDensity
                                , int srcDensity)
 {
     System.IntPtr         loc_ptr  = System.IntPtr.Zero;
     Sharpen.INativeHandle c_handle = null;
     try
     {
         loc_ptr  = android.graphics.Rect.Rect_Helper.ManagedToNative(loc);
         c_handle = XobotOS.Runtime.MarshalGlue.Array_byte_Helper.GetPinnedPtr(c);
         libxobotos_NinePatch_drawI(canvas_instance, loc_ptr, bitmap_instance, c_handle.Address
                                    , paint_instance_or_null != null ? paint_instance_or_null : android.graphics.Paint.NativePaint
                                    .Zero, destDensity, srcDensity);
         android.graphics.Rect.Rect_Helper.MarshalOut(loc_ptr, loc);
     }
     finally
     {
         android.graphics.Rect.Rect_Helper.FreeManagedPtr(loc_ptr);
         if (c_handle != null)
         {
             c_handle.Free();
         }
     }
 }
コード例 #3
0
ファイル: Interpolator.cs プロジェクト: zhouweiaccp/XobotOS
 private static void nativeSetKeyFrame(android.graphics.Interpolator.NativeInterpolator
                                       native_instance, int index, int msec, float[] values, float[] blend)
 {
     Sharpen.INativeHandle values_handle = null;
     Sharpen.INativeHandle blend_handle  = null;
     try
     {
         values_handle = XobotOS.Runtime.MarshalGlue.Array_float_Helper.GetPinnedPtr(values
                                                                                     );
         blend_handle = XobotOS.Runtime.MarshalGlue.Array_float_Helper.GetPinnedPtr(blend);
         libxobotos_Interpolator_setKeyFrame(native_instance, index, msec, values_handle.Address
                                             , blend_handle != null ? blend_handle.Address : System.IntPtr.Zero);
     }
     finally
     {
         if (values_handle != null)
         {
             values_handle.Free();
         }
         if (blend_handle != null)
         {
             blend_handle.Free();
         }
     }
 }
コード例 #4
0
ファイル: SweepGradient.cs プロジェクト: zhouweiaccp/XobotOS
 private static System.IntPtr nativePostCreate1(android.graphics.Shader.NativeShader
                                                native_shader, float cx, float cy, int[] colors, float[] positions)
 {
     Sharpen.INativeHandle colors_handle    = null;
     Sharpen.INativeHandle positions_handle = null;
     try
     {
         colors_handle    = XobotOS.Runtime.MarshalGlue.Array_int_Helper.GetPinnedPtr(colors);
         positions_handle = XobotOS.Runtime.MarshalGlue.Array_float_Helper.GetPinnedPtr(positions
                                                                                        );
         return(libxobotos_SweepGradient_SweepGradient_postCreate(native_shader, cx, cy, colors_handle
                                                                  .Address, positions_handle != null ? positions_handle.Address : System.IntPtr.Zero
                                                                  ));
     }
     finally
     {
         if (colors_handle != null)
         {
             colors_handle.Free();
         }
         if (positions_handle != null)
         {
             positions_handle.Free();
         }
     }
 }
コード例 #5
0
ファイル: RadialGradient.cs プロジェクト: zhouweiaccp/XobotOS
 private static android.graphics.Shader.NativeShader nativeCreate1(float x, float
                                                                   y, float radius, int[] colors, float[] positions, int tileMode)
 {
     Sharpen.INativeHandle colors_handle    = null;
     Sharpen.INativeHandle positions_handle = null;
     try
     {
         colors_handle    = XobotOS.Runtime.MarshalGlue.Array_int_Helper.GetPinnedPtr(colors);
         positions_handle = XobotOS.Runtime.MarshalGlue.Array_float_Helper.GetPinnedPtr(positions
                                                                                        );
         return(libxobotos_RadialGradient_RadialGradient_create(x, y, radius, colors_handle
                                                                .Address, positions_handle != null ? positions_handle.Address : System.IntPtr.Zero
                                                                , tileMode));
     }
     finally
     {
         if (colors_handle != null)
         {
             colors_handle.Free();
         }
         if (positions_handle != null)
         {
             positions_handle.Free();
         }
     }
 }
コード例 #6
0
 private static bool native_getPosTan(android.graphics.PathMeasure.NativePathMeasure
                                      native_instance, float distance, float[] pos, float[] tan)
 {
     Sharpen.INativeHandle pos_handle = null;
     Sharpen.INativeHandle tan_handle = null;
     try
     {
         pos_handle = XobotOS.Runtime.MarshalGlue.Array_float_Helper.GetPinnedPtr(pos);
         tan_handle = XobotOS.Runtime.MarshalGlue.Array_float_Helper.GetPinnedPtr(tan);
         return(libxobotos_PathMeasure_getPosTan(native_instance, distance, pos_handle !=
                                                 null ? pos_handle.Address : System.IntPtr.Zero, tan_handle != null ? tan_handle.
                                                 Address : System.IntPtr.Zero));
     }
     finally
     {
         if (pos_handle != null)
         {
             pos_handle.Free();
         }
         if (tan_handle != null)
         {
             tan_handle.Free();
         }
     }
 }
コード例 #7
0
ファイル: Test.cs プロジェクト: DevExperience/XobotOS
 internal static void hello(int[] a)
 {
     Sharpen.INativeHandle a_handle = null;
     try
     {
         a_handle = XobotOS.Runtime.MarshalGlue.Array_int_Helper.GetPinnedPtr(a);
         libxobotos_Test_hello(a_handle.Address);
     }
     finally
     {
         if (a_handle != null)
         {
             a_handle.Free();
         }
     }
 }
コード例 #8
0
ファイル: Color.cs プロジェクト: zhouweiaccp/XobotOS
 private static void nativeRGBToHSV(int red_1, int greed, int blue_1, float[] hsv)
 {
     Sharpen.INativeHandle hsv_handle = null;
     try
     {
         hsv_handle = XobotOS.Runtime.MarshalGlue.Array_float_Helper.GetPinnedPtr(hsv);
         libxobotos_Color_Color_RGBToHSV(red_1, greed, blue_1, hsv_handle.Address);
     }
     finally
     {
         if (hsv_handle != null)
         {
             hsv_handle.Free();
         }
     }
 }
コード例 #9
0
ファイル: Color.cs プロジェクト: zhouweiaccp/XobotOS
 private static int nativeHSVToColor(int alpha_1, float[] hsv)
 {
     Sharpen.INativeHandle hsv_handle = null;
     try
     {
         hsv_handle = XobotOS.Runtime.MarshalGlue.Array_float_Helper.GetPinnedPtr(hsv);
         return(libxobotos_Color_Color_HSVToColor(alpha_1, hsv_handle.Address));
     }
     finally
     {
         if (hsv_handle != null)
         {
             hsv_handle.Free();
         }
     }
 }
コード例 #10
0
 public static bool isNinePatchChunk(byte[] chunk)
 {
     Sharpen.INativeHandle chunk_handle = null;
     try
     {
         chunk_handle = XobotOS.Runtime.MarshalGlue.Array_byte_Helper.GetPinnedPtr(chunk);
         return(libxobotos_NinePatch_isNinePatchChunk(chunk_handle != null ? chunk_handle.
                                                      Address : System.IntPtr.Zero));
     }
     finally
     {
         if (chunk_handle != null)
         {
             chunk_handle.Free();
         }
     }
 }
コード例 #11
0
 private static android.graphics.MaskFilter.NativeFilter nativeNewTable(byte[] table
                                                                        )
 {
     Sharpen.INativeHandle table_handle = null;
     try
     {
         table_handle = XobotOS.Runtime.MarshalGlue.Array_byte_Helper.GetPinnedPtr(table);
         return(libxobotos_TableMaskFilter_newTable(table_handle.Address));
     }
     finally
     {
         if (table_handle != null)
         {
             table_handle.Free();
         }
     }
 }
コード例 #12
0
 private static void validateNinePatchChunk(android.graphics.Bitmap.NativeBitmap bitmap
                                            , byte[] chunk)
 {
     Sharpen.INativeHandle chunk_handle = null;
     try
     {
         chunk_handle = XobotOS.Runtime.MarshalGlue.Array_byte_Helper.GetPinnedPtr(chunk);
         libxobotos_NinePatch_validateNinePatchChunk(bitmap, chunk_handle.Address);
     }
     finally
     {
         if (chunk_handle != null)
         {
             chunk_handle.Free();
         }
     }
 }
コード例 #13
0
 private static System.IntPtr nColorMatrixFilter(android.graphics.ColorFilter.NativeFilter
                                                 nativeFilter, float[] array)
 {
     Sharpen.INativeHandle array_handle = null;
     try
     {
         array_handle = XobotOS.Runtime.MarshalGlue.Array_float_Helper.GetPinnedPtr(array);
         return(libxobotos_ColorMatrixColorFilter_ColorMatrixFilter_postCreate(nativeFilter
                                                                               , array_handle.Address));
     }
     finally
     {
         if (array_handle != null)
         {
             array_handle.Free();
         }
     }
 }
コード例 #14
0
 private static android.graphics.DashPathEffect.NativePathEffect nativeCreate(float
                                                                              [] intervals, float phase)
 {
     Sharpen.INativeHandle intervals_handle = null;
     try
     {
         intervals_handle = XobotOS.Runtime.MarshalGlue.Array_float_Helper.GetPinnedPtr(intervals
                                                                                        );
         return(libxobotos_DashPathEffect_Dash_constructor(intervals_handle.Address, phase
                                                           ));
     }
     finally
     {
         if (intervals_handle != null)
         {
             intervals_handle.Free();
         }
     }
 }
コード例 #15
0
 private static android.graphics.MaskFilter.NativeFilter nativeConstructor(float[]
                                                                           direction, float ambient, float specular, float blurRadius)
 {
     Sharpen.INativeHandle direction_handle = null;
     try
     {
         direction_handle = XobotOS.Runtime.MarshalGlue.Array_float_Helper.GetPinnedPtr(direction
                                                                                        );
         return(libxobotos_EmbossMaskFilter_constructor(direction_handle.Address, ambient,
                                                        specular, blurRadius));
     }
     finally
     {
         if (direction_handle != null)
         {
             direction_handle.Free();
         }
     }
 }
コード例 #16
0
ファイル: Interpolator.cs プロジェクト: zhouweiaccp/XobotOS
 private static int nativeTimeToValues(android.graphics.Interpolator.NativeInterpolator
                                       native_instance, int msec, float[] values)
 {
     Sharpen.INativeHandle values_handle = null;
     try
     {
         values_handle = XobotOS.Runtime.MarshalGlue.Array_float_Helper.GetPinnedPtr(values
                                                                                     );
         return(libxobotos_Interpolator_timeToValues(native_instance, msec, values_handle
                                                     != null ? values_handle.Address : System.IntPtr.Zero));
     }
     finally
     {
         if (values_handle != null)
         {
             values_handle.Free();
         }
     }
 }
コード例 #17
0
 private static android.graphics.Region.NativeRegion nativeGetTransparentRegion(android.graphics.Bitmap.NativeBitmap
                                                                                bitmap, byte[] chunk, android.graphics.Rect location)
 {
     Sharpen.INativeHandle chunk_handle = null;
     System.IntPtr         location_ptr = System.IntPtr.Zero;
     try
     {
         chunk_handle = XobotOS.Runtime.MarshalGlue.Array_byte_Helper.GetPinnedPtr(chunk);
         location_ptr = android.graphics.Rect.Rect_Helper.ManagedToNative(location);
         return(libxobotos_NinePatch_getTransparentRegion(bitmap, chunk_handle.Address, location_ptr
                                                          ));
     }
     finally
     {
         if (chunk_handle != null)
         {
             chunk_handle.Free();
         }
         android.graphics.Rect.Rect_Helper.FreeManagedPtr(location_ptr);
     }
 }
コード例 #18
0
 private static bool matchesImpl(java.util.regex.Matcher.NativeRegexMatcher addr,
                                 string s, int[] offsets)
 {
     System.IntPtr         s_ptr          = System.IntPtr.Zero;
     Sharpen.INativeHandle offsets_handle = null;
     try
     {
         s_ptr          = XobotOS.Runtime.MarshalGlue.String_Helper.ManagedToNative(s);
         offsets_handle = XobotOS.Runtime.MarshalGlue.Array_int_Helper.GetPinnedPtr(offsets
                                                                                    );
         return(libxobotos_Matcher_matches(addr, s_ptr, offsets_handle != null ? offsets_handle
                                           .Address : System.IntPtr.Zero));
     }
     finally
     {
         XobotOS.Runtime.MarshalGlue.String_Helper.FreeManagedPtr(s_ptr);
         if (offsets_handle != null)
         {
             offsets_handle.Free();
         }
     }
 }
コード例 #19
0
 private static android.graphics.Bitmap nativeDecodeByteArray(byte[] data, int offset
                                                              , int length, android.graphics.BitmapFactory.Options opts)
 {
     Sharpen.INativeHandle data_handle = null;
     System.IntPtr         opts_ptr    = System.IntPtr.Zero;
     try
     {
         data_handle = XobotOS.Runtime.MarshalGlue.Array_byte_Helper.GetPinnedPtr(data);
         opts_ptr    = android.graphics.BitmapFactory.Options.Options_Helper.ManagedToNative(
             opts);
         android.graphics.Bitmap _retval = new android.graphics.Bitmap(libxobotos_BitmapFactory_decodeByteArray
                                                                           (data_handle.Address, offset, length, opts_ptr));
         android.graphics.BitmapFactory.Options.Options_Helper.MarshalOut(opts_ptr, opts);
         return(_retval);
     }
     finally
     {
         if (data_handle != null)
         {
             data_handle.Free();
         }
         android.graphics.BitmapFactory.Options.Options_Helper.FreeManagedPtr(opts_ptr);
     }
 }