override public bool EinaRwSliceOut(ref Eina.RwSlice slice) { rw_slice_out_flag = true; rw_slice_out_seq = (byte[])BaseSequence.Values(); rw_slice_out_pinned = GCHandle.Alloc(rw_slice_out_seq, GCHandleType.Pinned); IntPtr ptr = rw_slice_out_pinned.AddrOfPinnedObject(); slice.Mem = ptr; slice.Len = (UIntPtr)rw_slice_out_seq.Length; return(true); }
private static Eina.Error read(System.IntPtr obj, System.IntPtr pd, ref Eina.RwSlice rw_slice) { Eina.Log.Debug("function efl_io_reader_read was called"); Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd); if (wrapper != null) { Eina.Error _ret_var = default(Eina.Error); try { _ret_var = ((IReader)wrapper).Read(ref rw_slice); } catch (Exception e) { Eina.Log.Warning($"Callback error: {e.ToString()}"); Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION); } return(_ret_var); } else { return(efl_io_reader_read_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)), ref rw_slice)); } }
override public bool EinaRwSliceIn(Eina.RwSlice slice) { rw_slice_in_flag = true; return(slice.GetBytes().SequenceEqual(BaseSequence.Values())); }