mirror of
https://gitee.com/Lamdonn/varch.git
synced 2025-12-06 08:46:42 +08:00
8.0 KiB
8.0 KiB
varch
介绍
varch(we-architecture,意为我们的框架库)是嵌入式C语言常用代码模块库,包含了嵌入式中常用的算法库, 数据结构(容器)库, 解析器库, 独立C语言std库, 工具库等等。
具有简单, 通用, 高效的特点,目的为了学习以及在开发中拿来就用,提高开发效率以及代码可靠稳定性。
内容
| module | version | usage | path | describe |
|---|---|---|---|---|
| overall | 00.01.01 | link | ./ | Overall |
| init | 01.00.00 | link | ./source/00_application | Initialize export module |
| console | 01.00.00 | link | ./source/00_application/console | Console command input, combined with the 'command' module, parsing commands entered in the console |
| arg | 01.00.00 | link | ./source/01_general | Indefinite parameters, obtain the number of indefinite parameters and specified parameters |
| calculate | 01.00.00 | link | ./source/01_general | Calculation module, input calculation expression to obtain calculation result |
| command | 01.00.00 | link | ./source/01_general | Command parsing module, input string commands (similar to shell commands), execute corresponding command functions |
| cPatten | 01.00.00 | link | ./source/01_general | Artistic character patterns |
| cQueue | 01.00.00 | link | ./source/01_general | Universal queue controller |
| dList | 01.00.00 | link | ./source/01_general | Universal double-link list controller |
| fsm | 01.00.00 | link | ./source/01_general | Universal finite state machine module |
| kern | 01.00.00 | link | ./source/01_general | The kernel module for scheduling periodic tasks is mostly used in varch testing |
| oscp | 01.00.00 | link | ./source/01_general | Analog oscilloscope module, can easily monitor the waveform of variable changes |
| sList | 01.00.00 | link | ./source/01_general | Universal single-link list controller |
| tool | 01.00.00 | link | ./source/01_general | General tools code |
| valloc | 01.00.00 | link | ./source/01_general | Dynamic memory usage testing tool |
| vlog | 01.01.00 | link | ./source/01_general | Log output module |
| vctype | 01.00.00 | link | ./source/02_vstd | Similar to the C standard library ctype |
| vmath | 01.00.00 | link | ./source/02_vstd | Similar to the C standard library math |
| vmem | 01.00.00 | link | ./source/02_vstd | Simple implementation of memory pool |
| vstddef | 01.00.00 | link | ./source/02_vstd | Similar to the C standard library stddef |
| vstdint | 01.00.00 | link | ./source/02_vstd | Similar to the C standard library stdint |
| vstdlib | 01.00.00 | link | ./source/02_vstd | Similar to the C standard library stdlib |
| vstring | 01.00.00 | link | ./source/02_vstd | Similar to the C standard library string |
| deque | 01.00.00 | link | ./source/03_container | Universal double-end queue container |
| dict | 01.00.00 | link | ./source/03_container | Universal dictionarie container, implementation based on hash table |
| heap | 01.00.00 | link | ./source/03_container | Universal heap container |
| list | 01.00.00 | link | ./source/03_container | Universal list container, single-link and internal iteration |
| map | 01.00.00 | link | ./source/03_container | Universal map container, implementation based on RB-tree |
| queue | 01.00.00 | link | ./source/03_container | Universal queue container |
| set | 01.00.00 | link | ./source/03_container | Universal set container, implementation based on RB-tree |
| stack | 01.00.00 | link | ./source/03_container | Universal stack container |
| str | 01.00.00 | link | ./source/03_container | String class |
| tree | 01.00.00 | link | ./source/03_container | Universal tree container |
| vector | 01.00.00 | link | ./source/03_container | Universal vector(array) container |
| check | 01.00.00 | link | ./source/04_algorithm | Verification algorithm, sum check, parity check, XOR check, LRC check |
| crc | 01.00.00 | link | ./source/04_algorithm | Universal and standard CRC algorithms |
| encrypt | 01.00.00 | link | ./source/04_algorithm | Encryption and decryption algorithms |
| filter | 01.00.00 | link | ./source/04_algorithm | Filter algorithms, median, kalman, average |
| hash | 01.00.00 | link | ./source/04_algorithm | Hash algorithms, bkdr, ap, djb, js, rs, sdbm, pjw, elf, dek, bp, fnv, jdk6 |
| pid | 01.00.00 | link | ./source/04_algorithm | PID control algorithm calculator |
| search | 01.00.00 | link | ./source/04_algorithm | Universal search algorithms, linear, binary |
| sort | 01.00.00 | link | ./source/04_algorithm | Universal sorting algorithms (various data structures), bubble, select, insert, hill, quick, heap |
| csv | 01.00.00 | link | ./source/05_parser | CSV file parsing generator |
| ini | 01.00.00 | link | ./source/05_parser | INI configuration file parsing generator |
| json | 01.00.00 | link | ./source/05_parser | JSON file parsing generator |
| txls | 01.00.00 | link | ./source/05_parser | TXLS file parsing generator |
| xml | 01.00.00 | link | ./source/05_parser | XML file parsing generator |
使用说明
代码在linux环境下编写编译测试,在built目录下的makefile配置需要编译的文件进行编译即可,也可以直接运行run.sh文件编译加运行。varch模块尽可能的保持独立,为了减少对其他模块的依赖,大部分的文件是可以直接单独拎出来就可以直接使用。如果编译存在对其他模块的依赖解决依赖问题,只是数据类型依赖的问题,完全可以参考定义所需类型即可。
开源协议
GNU GENERAL PUBLIC LICENSE
Version 2, June 1991
