Max 5 API Reference
00001 /* 00002 * jit.charset.h 00003 * JitterAPI 00004 * 00005 * Created by Jeremy Bernstein on 24.05.06. 00006 * Copyright 2006 Cycling '74. All rights reserved. 00007 * 00008 */ 00009 00010 00011 #ifndef __JIT_CHARSET_H__ 00012 #define __JIT_CHARSET_H__ 00013 00014 /* USAGE //////////////////////////////////////////// 00015 00016 t_jit_charset_converter *conv = jit_object_new(gensym("jit_charset_converter"), ps_macroman, ps_ms_ansi); 00017 char *cstr = "Text to convert"; 00018 char *cvtbuffer = NULL; // to-be-allocated data buffer 00019 long cvtbuflen = 0; // length of buffer on output 00020 00021 if (conv) { 00022 // note that it isn't necessary to send in a 0-terminated string, although we do so here 00023 if (jit_object_method(conv, gensym("convert"), cstr, strlen(cstr) + 1, &cvtbuffer, &cvtbuflen) == JIT_ERR_NONE) { 00024 // do something with the converted buffer 00025 sysmem_freeptr(cvtbuffer); // free newly allocated data buffer 00026 } 00027 jit_object_free(conv); // free converter 00028 } 00029 00030 */ ////////////////////////////////////////////////// 00031 00032 typedef struct _jit_charset_converter 00033 { 00034 t_object ob; 00035 void *conv; 00036 void *src_encoding; 00037 void *dst_encoding; 00038 } t_jit_charset_converter; 00039 00040 // currently supported character encodings 00041 extern t_symbol *ps_utf_8; // utf-8, no bom 00042 extern t_symbol *ps_utf_16; // utf-16, big-endian 00043 extern t_symbol *ps_utf_16be; // utf-16, big-endian 00044 extern t_symbol *ps_utf_16le; // utf-16, little-endian 00045 extern t_symbol *ps_iso_8859_1; // iso-8859-1 (latin-1) 00046 extern t_symbol *ps_us_ascii; // us-ascii 7-bit 00047 extern t_symbol *ps_ms_ansi; // ms-ansi (microsoft code page 1252) 00048 extern t_symbol *ps_macroman; // mac roman 00049 00050 extern t_symbol *ps_jit_charset_converter; 00051 extern t_symbol *ps_convert; 00052 00053 #endif // __JIT_CHARSET_H__
Copyright © 2008, Cycling '74