のねのBlog

パソコンの問題や、ソフトウェアの開発で起きた問題など書いていきます。よろしくお願いします^^。

Pango

get_shaper_and_font

1257 static gboolean 1258 get_shaper_and_font (ItemizeState *state, 1259 gunichar wc, 1260 PangoEngineShape **shape_engine, 1261 PangoFont **font) 1262 { 1263 GetShaperFontInfo info; 1264 1265 /* We'd need a separate cache when fallback is…

make fribidi_tab_char_type_n.i

44 #error You have no fribidi_tab_char_type_*.i file, please first make one by \ 45 make fribidi_tab_char_type_n.i which n is the compress level, a digit \ 46 between 2 and 9, or simply run make fribidi_tab_char_type_small, \ 47 retry to m…

pango_find_base_dir

946 PangoDirection 947 pango_find_base_dir (const gchar *text, 948 gint length) 949 { 950 PangoDirection dir = PANGO_DIRECTION_NEUTRAL; 951 const gchar *p; 952 953 g_return_val_if_fail (text != NULL || length == 0, PANGO_DIRECTION_NEUTRAL)…

pango_layout_check_lines

3898 3899 static void 3900 pango_layout_check_lines (PangoLayout *layout) 3901 { 3902 const char *start; 3903 gboolean done = FALSE; 3904 int start_offset; 3905 PangoAttrList *attrs; 3906 PangoAttrList *no_shape_attrs; 3907 PangoAttrIterat…

pango_find_map

152 PangoMap * 153 pango_find_map (PangoLanguage *language, 154 guint engine_type_id, 155 guint render_type_id) 156 { 157 GList *tmp_list; 158 PangoMapInfo *map_info = NULL; 159 gboolean found_earlier = FALSE; 160 161 G_LOCK (maps); 162 16…

pango_script_iter_next

251 gboolean 252 pango_script_iter_next (PangoScriptIter *iter) 253 { 254 int start_sp; 255 256 if (iter->script_end == iter->text_end) 257 return FALSE; 258 259 start_sp = iter->paren_sp; 260 iter->script_code = PANGO_SCRIPT_COMMON; 261 i…

pango_script_for_unichar

89 pango_script_for_unichar (gunichar ch) 90 { 91 return g_unichar_get_script (ch); 92 } 93 g_unichar_get_script?() GUnicodeScript g_unichar_get_script (gunichar ch); Looks up the GUnicodeScript for a particular character (as defined by Un…

itemize_state_process_run

pango-view Default [C/C++ Application] pango-view [62093] [cores: 0] Thread #1 [pango-view] 62093 [core: 0] (Suspended : Step) itemize_state_process_run() at pango-context.c:1,482 0x7ffff7ba7d5f pango_itemize_with_base_dir() at pango-conte…

pango_layout_get_pixel_extents

2801 void 2802 pango_layout_get_pixel_extents (PangoLayout *layout, 2803 PangoRectangle *ink_rect, 2804 PangoRectangle *logical_rect) 2805 { 2806 g_return_if_fail (PANGO_IS_LAYOUT (layout)); 2807 2808 pango_layout_get_extents (layout, ink_…

/pango/pango-layout.c

706pango_layout_set_font_description (PangoLayout *layout, 707 const PangoFontDescription *desc) 708{ 709 g_return_if_fail (layout != NULL); 710 711 if (desc != layout->font_desc && 712 (!desc || !layout->font_desc || !pango_font_descripti…

PangoFontDescription

1092PangoFontDescription * 1093pango_font_description_from_string (const char *str) 1094{ 1095 PangoFontDescription *desc; 1096 const char *p, *last; 1097 size_t len, wordlen; 1098 1099 g_return_val_if_fail (str != NULL, NULL); 1100 1101 d…

pango_layout_set_text

89 static PangoLayout * 90 make_layout(PangoContext *context, 91 const char *text, 92 double size) 93 { 94 static PangoFontDescription *font_description; 95 PangoAlignment align; 96 PangoLayout *layout; 97 98 layout = pango_layout_new (con…

get_option_group

749 for (viewer = viewers; *viewer; viewer++) 750 if ((*viewer)->get_option_group) 751 { 752 GOptionGroup *group = (*viewer)->get_option_group (*viewer); 753 if (group) 754 g_option_context_add_group (context, group); 755 } 413 static GOpt…

viewers

9 const PangoViewer *viewers[] = { 10 #ifdef HAVE_CAIRO 11 &pangocairo_viewer, 12 #endif 13 #ifdef HAVE_XFT 14 &pangoxft_viewer, 15 #endif 16 #ifdef HAVE_FREETYPE 17 &pangoft2_viewer, 18 #endif 19 #ifdef HAVE_X 20 &pangox_viewer, 21 #endif…

PangoContext

50 struct _PangoContext 51 { 52 GObject parent_instance; 53 guint serial; 54 guint fontmap_serial; 55 56 PangoLanguage *set_language; 57 PangoLanguage *language; 58 PangoDirection base_dir; 59 PangoGravity base_gravity; 60 PangoGravity res…

pango_fc_hb_font_get_glyph_extents

183 static hb_bool_t 184 pango_fc_hb_font_get_glyph_extents ( hb_font_t *font, void *font_data, 185 hb_codepoint_t glyph, 186 hb_glyph_extents_t *extents, 187 void *user_data G_GNUC_UNUSED) 188 { 189 PangoFcHbContext *context = (PangoFcHbC…

pango_fc_get_hb_font_funcs

279 static hb_font_funcs_t * 280 pango_fc_get_hb_font_funcs (void) 281 { 282 static hb_font_funcs_t *funcs; 283 284 if (G_UNLIKELY (!funcs)) { 285 funcs = hb_font_funcs_create (); 286 hb_font_funcs_set_glyph_func ( funcs, pango_fc_hb_font_…

get_coverageへ関数をセット

165 static void 166 pango_core_text_font_class_init (PangoCoreTextFontClass *class) 167 { 168 GObjectClass *object_class = G_OBJECT_CLASS (class); 169 PangoFontClass *font_class = PANGO_FONT_CLASS (class); 170 171 object_class->finalize = …

pango_cairo_show_layout

1132 pango_cairo_show_layout (cairo_t *cr, 1133 PangoLayout *layout) 1134 { 1135 g_return_if_fail (cr != NULL); 1136 g_return_if_fail (PANGO_IS_LAYOUT (layout)); 1137 1138 _pango_cairo_do_layout (cr, layout, FALSE); 1139 } 1140 999 _pango_…

valgrind

u01@vm01:~/layout/oss/pango-1.36.8/pango-view/.libs$ valgrind --tool=callgrind pango-view --font="Garuda 50" ~/layout/text/test-thai_kigen.txt --output=pv_kigen.png --runs=1000 ==34153== Callgrind, a call-graph generating cache profiler ==…

valgrind

1352 valgrind --tool=callgrind pango-view --font="Garuda 50" ~/layout/text/test-thai_kigen.txt --output=pv_kigen.png 1353 ls 1354 callgrind_annotate --auto=yes callgrind/out.31057 1355 callgrind_annotate --auto=yes ./callgrind/out.31057 13…

perf report

1344 perf record -g pango-view --font="Garuda 50" ~/layout/text/test-thai_kigen.txt --output=pv_kigen.png --runs=10000 1345 perf report --comm=pango-view --call-graph | cat -n > aaa.txt 1346 less aaa.txt 1347 perf report --comm=pango-view …

error: no sample files found: profile specification too strict ?

u01@vm01:~/layout/oss/pango-1.36.8/pango-view/.libs$ opreport Xorg Using /var/lib/oprofile/samples/ for samples directory. WARNING! The OProfile kernel driver reports sample buffer overflows. Such overflows can result in incorrect sample a…

opcontrol

$ sudo opcontrol --no-vmlinux --callgraph 10000000$ sudo opcontrol --reset $ sudo opcontrol --start && pango-view --font="Garuda 50" ~/layout/text/test-thai_kigen.txt --output=pv_kigen.png ; sudo opcontrol --stop $ sudo opcontrol --dump

opcontrol --start

u01@vm01:~/layout/oss/pango-1.36.8/pango-view/.libs$ sudo opcontrol --no-vmlinux --start ATTENTION: Use of opcontrol is discouraged. Please see the man page for operf. Using default event: CPU_CLK_UNHALTED:100000:0:1:1 Error: counter 0 not…

oprofile

u01@vm01:~/layout/oss/pango-1.36.8/pango-view$ sudo opcontrol --no-vmlinux --help opcontrol: usage: -l/--list-events list event types and unit masks -?/--help this message -v/--version show version --init loads the oprofile module and opro…

sprof

-rw-rw-r-- 1 u01 u01 59 11月 11 15:17 test-thai_kigen.txt -rw-rw-r-- 1 u01 u01 24576 11月 11 15:52 typescript u01@vm01:~/layout/oss/pango-1.36.8/pango-view/.libs$ export LD_PROFILE u01@vm01:~/layout/oss/pango-1.36.8/pango-view/.libs$ expor…

メイクのコンパイルオプションを表示する。make V=1

u01@vm01:~/layout/oss/pango-1.36.8/pango-view$ make V=1 cp ./../modules/pangorc pangorc make all-am make[1]: Entering directory `/home/u01/layout/oss/pango-1.36.8/pango-view' gcc -DHAVE_CONFIG_H -I. -I.. -I.. -DG_DISABLE_CAST_CHECKS -pthre…

do_output

239 void 240 do_output (PangoContext *context, 241 RenderCallback render_cb, 242 TransformCallback transform_cb, 243 gpointer cb_context, 244 gpointer cb_data, 245 int *width_out, 246 int *height_out) 247{ 248 PangoLayout *layout; 249 Pang…

do_output

239void 240 do_output (PangoContext *context, 241 RenderCallback render_cb, 242 TransformCallback transform_cb, 243 gpointer cb_context, 244 gpointer cb_data, 245 int *width_out, 246 int *height_out) 247 { 248 PangoLayout *layout; 249 Pang…