Пример #1
0
        public static void glk_put_string_stream_uni(strid_t str, string s)
        {
            IntPtr buf = StrToUTF32(s);

            try { glk_put_string_stream_uni(str, buf); }
            finally { Marshal.FreeHGlobal(buf); }
        }
Пример #2
0
 protected override void Dispose(bool disposing)
 {
     if (!gstr.IsNull)
     {
         stream_result_t dummy;
         Glk.glk_stream_close(gstr, out dummy);
         gstr = strid_t.Null;
     }
 }
Пример #3
0
        public GlkStream(strid_t gstr)
        {
            if (gstr.IsNull)
            {
                throw new ArgumentNullException("gstr");
            }

            this.gstr = gstr;
        }
Пример #4
0
        public static uint glk_get_line_stream_uni(strid_t str, StringBuilder sb)
        {
            int    len = sb.Capacity;
            IntPtr buf = Marshal.AllocHGlobal(len * 4);

            try
            {
                uint result = glk_get_line_stream_uni(str, buf, (uint)len * 4);
                StrFromUTF32(buf, sb);
                return(result);
            }
            finally
            {
                Marshal.FreeHGlobal(buf);
            }
        }
Пример #5
0
        private Stream OpenStream(frefid_t fileref, FileMode mode)
        {
            if (fileref.IsNull)
            {
                return(null);
            }

            strid_t gstr = Glk.glk_stream_open_file(fileref, mode, 0);

            if (gstr.IsNull)
            {
                return(null);
            }

            return(new GlkStream(gstr));
        }
Пример #6
0
 public static extern void glk_put_buffer_stream(strid_t str, [In] byte[] buf, uint len);
Пример #7
0
 private static extern void glk_put_string_stream_uni(strid_t str, IntPtr s);
Пример #8
0
 public static extern uint glk_get_buffer_stream_uni(strid_t str, [Out] uint[] buf, uint len);
Пример #9
0
 public static extern int glk_get_char_stream_uni(strid_t str);
Пример #10
0
 public static extern void glk_stream_set_position(strid_t str, int pos, SeekMode seekmode);
Пример #11
0
 public static extern uint glk_stream_get_rock(strid_t str);
Пример #12
0
 public static extern strid_t glk_stream_iterate(strid_t str, out uint rockptr);
Пример #13
0
 public static extern void glk_stream_close(strid_t str, out stream_result_t result);
Пример #14
0
 public static extern void glk_window_set_echo_stream(winid_t win, strid_t str);
Пример #15
0
 public static extern void glk_put_buffer_stream_uni(strid_t str, [In] uint[] buf, uint len);
Пример #16
0
 public static extern void glk_set_style_stream(strid_t str, Style styl);
Пример #17
0
 public static extern uint glk_stream_get_position(strid_t str);
Пример #18
0
 private static extern uint glk_get_line_stream_uni(strid_t str, IntPtr buf, uint len);
Пример #19
0
 public static extern void glk_stream_set_current(strid_t str);
Пример #20
0
 public static extern uint glk_get_buffer_stream(strid_t str, [Out] byte[] buf, uint len);
Пример #21
0
 public static extern void glk_put_char_stream(strid_t str, byte ch);
Пример #22
0
 public static extern BlorbError giblorb_set_resource_map(strid_t file);
Пример #23
0
 public static extern void glk_put_char_stream_uni(strid_t str, uint ch);