2525#include "internal/chafa-batch.h"
2626#include "internal/chafa-bitfield.h"
2727#include "internal/chafa-indexed-image.h"
28- #include "internal/chafa-iterm2-canvas .h"
28+ #include "internal/chafa-iterm2-renderer .h"
2929#include "internal/chafa-math-util.h"
3030#include "internal/chafa-string-util.h"
3131
@@ -100,62 +100,62 @@ TiffTag;
100100
101101typedef struct
102102{
103- ChafaIterm2Canvas * iterm2_canvas ;
103+ ChafaIterm2Renderer * iterm2_renderer ;
104104 GString * out_str ;
105105}
106106BuildCtx ;
107107
108108typedef struct
109109{
110- ChafaIterm2Canvas * iterm2_canvas ;
110+ ChafaIterm2Renderer * iterm2_renderer ;
111111 SmolScaleCtx * scale_ctx ;
112112}
113113DrawCtx ;
114114
115- ChafaIterm2Canvas *
116- chafa_iterm2_canvas_new (gint width , gint height )
115+ ChafaIterm2Renderer *
116+ chafa_iterm2_renderer_new (gint width , gint height )
117117{
118- ChafaIterm2Canvas * iterm2_canvas ;
118+ ChafaIterm2Renderer * iterm2_renderer ;
119119
120- iterm2_canvas = g_new (ChafaIterm2Canvas , 1 );
121- iterm2_canvas -> width = width ;
122- iterm2_canvas -> height = height ;
123- iterm2_canvas -> rgba_image = g_malloc (width * height * sizeof (guint32 ));
120+ iterm2_renderer = g_new (ChafaIterm2Renderer , 1 );
121+ iterm2_renderer -> width = width ;
122+ iterm2_renderer -> height = height ;
123+ iterm2_renderer -> rgba_image = g_malloc (width * height * sizeof (guint32 ));
124124
125- return iterm2_canvas ;
125+ return iterm2_renderer ;
126126}
127127
128128void
129- chafa_iterm2_canvas_destroy ( ChafaIterm2Canvas * iterm2_canvas )
129+ chafa_iterm2_renderer_destroy ( ChafaIterm2Renderer * iterm2_renderer )
130130{
131- g_free (iterm2_canvas -> rgba_image );
132- g_free (iterm2_canvas );
131+ g_free (iterm2_renderer -> rgba_image );
132+ g_free (iterm2_renderer );
133133}
134134
135135static void
136136draw_pixels_worker (ChafaBatchInfo * batch , const DrawCtx * ctx )
137137{
138138 smol_scale_batch_full (ctx -> scale_ctx ,
139- ((guint32 * ) ctx -> iterm2_canvas -> rgba_image ) + (ctx -> iterm2_canvas -> width * batch -> first_row ),
139+ ((guint32 * ) ctx -> iterm2_renderer -> rgba_image ) + (ctx -> iterm2_renderer -> width * batch -> first_row ),
140140 batch -> first_row ,
141141 batch -> n_rows );
142142}
143143
144144void
145- chafa_iterm2_canvas_draw_all_pixels ( ChafaIterm2Canvas * iterm2_canvas , ChafaPixelType src_pixel_type ,
146- gconstpointer src_pixels ,
147- gint src_width , gint src_height , gint src_rowstride ,
148- ChafaColor bg_color ,
149- ChafaAlign halign , ChafaAlign valign ,
150- ChafaTuck tuck )
145+ chafa_iterm2_renderer_draw_all_pixels ( ChafaIterm2Renderer * iterm2_renderer , ChafaPixelType src_pixel_type ,
146+ gconstpointer src_pixels ,
147+ gint src_width , gint src_height , gint src_rowstride ,
148+ ChafaColor bg_color ,
149+ ChafaAlign halign , ChafaAlign valign ,
150+ ChafaTuck tuck )
151151{
152152 uint8_t bg_color_rgba [4 ];
153153 DrawCtx ctx ;
154154 gboolean flatten_alpha ;
155155 gint placement_x , placement_y ;
156156 gint placement_width , placement_height ;
157157
158- g_return_if_fail (iterm2_canvas != NULL );
158+ g_return_if_fail (iterm2_renderer != NULL );
159159 g_return_if_fail (src_pixel_type < CHAFA_PIXEL_MAX );
160160 g_return_if_fail (src_pixels != NULL );
161161 g_return_if_fail (src_width >= 0 );
@@ -169,13 +169,13 @@ chafa_iterm2_canvas_draw_all_pixels (ChafaIterm2Canvas *iterm2_canvas, ChafaPixe
169169 chafa_color8_store_to_rgba8 (bg_color , bg_color_rgba );
170170
171171 chafa_tuck_and_align (src_width , src_height ,
172- iterm2_canvas -> width , iterm2_canvas -> height ,
172+ iterm2_renderer -> width , iterm2_renderer -> height ,
173173 halign , valign ,
174174 tuck ,
175175 & placement_x , & placement_y ,
176176 & placement_width , & placement_height );
177177
178- ctx .iterm2_canvas = iterm2_canvas ;
178+ ctx .iterm2_renderer = iterm2_renderer ;
179179 ctx .scale_ctx = smol_scale_new_full (/* Source */
180180 (const guint32 * ) src_pixels ,
181181 (SmolPixelType ) src_pixel_type ,
@@ -188,9 +188,9 @@ chafa_iterm2_canvas_draw_all_pixels (ChafaIterm2Canvas *iterm2_canvas, ChafaPixe
188188 /* Destination */
189189 NULL ,
190190 SMOL_PIXEL_RGBA8_UNASSOCIATED , /* FIXME: Premul? */
191- iterm2_canvas -> width ,
192- iterm2_canvas -> height ,
193- iterm2_canvas -> width * sizeof (guint32 ),
191+ iterm2_renderer -> width ,
192+ iterm2_renderer -> height ,
193+ iterm2_renderer -> width * sizeof (guint32 ),
194194 /* Placement */
195195 placement_x * SMOL_SUBPIXEL_MUL ,
196196 placement_y * SMOL_SUBPIXEL_MUL ,
@@ -205,7 +205,7 @@ chafa_iterm2_canvas_draw_all_pixels (ChafaIterm2Canvas *iterm2_canvas, ChafaPixe
205205 chafa_process_batches (& ctx ,
206206 (GFunc ) draw_pixels_worker ,
207207 NULL ,
208- iterm2_canvas -> height ,
208+ iterm2_renderer -> height ,
209209 chafa_get_n_actual_threads (),
210210 1 );
211211
@@ -233,7 +233,7 @@ generate_tag (ChafaBase64 *base64, GString *gs,
233233}
234234
235235void
236- chafa_iterm2_canvas_build_ansi ( ChafaIterm2Canvas * iterm2_canvas , ChafaTermInfo * term_info , GString * out_str , gint width_cells , gint height_cells )
236+ chafa_iterm2_renderer_build_ansi ( ChafaIterm2Renderer * iterm2_renderer , ChafaTermInfo * term_info , GString * out_str , gint width_cells , gint height_cells )
237237{
238238 gchar seq [CHAFA_TERM_SEQ_LENGTH_MAX + 1 ];
239239 ChafaBase64 base64 ;
@@ -249,15 +249,15 @@ chafa_iterm2_canvas_build_ansi (ChafaIterm2Canvas *iterm2_canvas, ChafaTermInfo
249249
250250 u32 = GUINT32_TO_LE (0x002a4949 );
251251 chafa_base64_encode (& base64 , out_str , & u32 , sizeof (u32 ));
252- u32 = GUINT32_TO_LE (iterm2_canvas -> width * iterm2_canvas -> height * sizeof (guint32 )
252+ u32 = GUINT32_TO_LE (iterm2_renderer -> width * iterm2_renderer -> height * sizeof (guint32 )
253253 + sizeof (guint32 ) * 2 );
254254 chafa_base64_encode (& base64 , out_str , & u32 , sizeof (u32 ));
255255
256256 /* Image data */
257257
258258 chafa_base64_encode (& base64 , out_str ,
259- iterm2_canvas -> rgba_image ,
260- iterm2_canvas -> width * iterm2_canvas -> height * sizeof (guint32 ));
259+ iterm2_renderer -> rgba_image ,
260+ iterm2_renderer -> width * iterm2_renderer -> height * sizeof (guint32 ));
261261
262262 /* IFD */
263263
@@ -266,12 +266,12 @@ chafa_iterm2_canvas_build_ansi (ChafaIterm2Canvas *iterm2_canvas, ChafaTermInfo
266266
267267 /* Tags */
268268
269- generate_tag (& base64 , out_str , TIFF_TAG_IMAGE_WIDTH , TIFF_TYPE_LONG , 1 , iterm2_canvas -> width );
270- generate_tag (& base64 , out_str , TIFF_TAG_IMAGE_LENGTH , TIFF_TYPE_LONG , 1 , iterm2_canvas -> height );
269+ generate_tag (& base64 , out_str , TIFF_TAG_IMAGE_WIDTH , TIFF_TYPE_LONG , 1 , iterm2_renderer -> width );
270+ generate_tag (& base64 , out_str , TIFF_TAG_IMAGE_LENGTH , TIFF_TYPE_LONG , 1 , iterm2_renderer -> height );
271271
272272 /* For BitsPerSample, the data field points to external data towards the end of file */
273273 generate_tag (& base64 , out_str , TIFF_TAG_BITS_PER_SAMPLE , TIFF_TYPE_SHORT , 4 ,
274- iterm2_canvas -> width * iterm2_canvas -> height * sizeof (guint32 )
274+ iterm2_renderer -> width * iterm2_renderer -> height * sizeof (guint32 )
275275 + sizeof (guint32 ) * 2
276276 + sizeof (guint16 )
277277 + sizeof (TiffTag ) * 11 /* Tag count */
@@ -281,9 +281,9 @@ chafa_iterm2_canvas_build_ansi (ChafaIterm2Canvas *iterm2_canvas, ChafaTermInfo
281281 generate_tag (& base64 , out_str , TIFF_TAG_STRIP_OFFSETS , TIFF_TYPE_LONG , 1 , sizeof (guint32 ) * 2 );
282282 generate_tag (& base64 , out_str , TIFF_TAG_ORIENTATION , TIFF_TYPE_SHORT , 1 , TIFF_ORIENTATION_TOPLEFT );
283283 generate_tag (& base64 , out_str , TIFF_TAG_SAMPLES_PER_PIXEL , TIFF_TYPE_SHORT , 1 , 4 );
284- generate_tag (& base64 , out_str , TIFF_TAG_ROWS_PER_STRIP , TIFF_TYPE_LONG , 1 , iterm2_canvas -> height );
284+ generate_tag (& base64 , out_str , TIFF_TAG_ROWS_PER_STRIP , TIFF_TYPE_LONG , 1 , iterm2_renderer -> height );
285285 generate_tag (& base64 , out_str , TIFF_TAG_STRIP_BYTE_COUNTS , TIFF_TYPE_LONG , 1 ,
286- iterm2_canvas -> width * iterm2_canvas -> height * 4 );
286+ iterm2_renderer -> width * iterm2_renderer -> height * 4 );
287287 generate_tag (& base64 , out_str , TIFF_TAG_PLANAR_CONFIGURATION , TIFF_TYPE_SHORT , 1 , TIFF_PLANAR_CONFIGURATION_CONTIGUOUS );
288288 generate_tag (& base64 , out_str , TIFF_TAG_EXTRA_SAMPLES , TIFF_TYPE_SHORT , 1 , TIFF_EXTRA_SAMPLE_UNASSOC_ALPHA );
289289
0 commit comments