00002__源代码模板

00002__源代码模板

一、简介

在编写C代码的时候,有时候几个头文件或者源文件都差不多的,可以采用模板的方式

二、代码如下:
  1. lcd_mem_h.tmpl代码如下:
#ifndef TK_LCD_MEM_{FMT}_H
#define TK_LCD_MEM_{FMT}_H

#include "lcd/lcd_mem.h"

BEGIN_C_DECLS

lcd_t* lcd_mem_{fmt}_create(wh_t w, wh_t h, bool_t alloc);
lcd_t* lcd_mem_{fmt}_create_single_fb(wh_t w, wh_t h, uint8_t* fbuff);
lcd_t* lcd_mem_{fmt}_create_double_fb(wh_t w, wh_t h, uint8_t* online_fb, uint8_t* offline_fb);
lcd_t* lcd_mem_{fmt}_create_three_fb(wh_t w, wh_t h, uint8_t* online_fb, uint8_t* offline_fb,
                                      uint8_t* next_fb);

END_C_DECLS

#endif /*TK_LCD_MEM_{FMT}_H*/

  1. gen.sh脚本如下:
#!/bin/bash

DATE=`date "+%Y-%m-%d"`

function gen() {
  fmt=$1
  FMT=`echo $fmt | tr a-z A-Z`
  echo "generating $fmt $FMT $DATE"

  sed -e "s/{fmt}/$fmt/" -e "s/{FMT}/$FMT/" -e "s/{date}/$DATE/" lcd_mem_h.tmpl > lcd_mem_$fmt.h
}

#supproted formats: rgb565 bgr565 rgb888 bgr888 rgba8888 abgr8888 bgra8888 argb8888
for fmt in rgb565 bgr565 bgr888 bgra8888 rgba8888
do
  gen $fmt
done
  1. gen.sh是bash脚本,Windows下可在git bash下运行.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值