- Информация о материале
- Автор: Vsevolod V Gromov
- Категория: Programming
- Просмотров: 1404
A brief article on C++ reflection approach implemented in ESFWX framework
- Информация о материале
- Автор: Vsevolod V Gromov
- Категория: Programming
- Просмотров: 1605
When using boost framework, which I usually try to avoid, if possible, I further avoid using its binary libraries. Mainly because it's required to build these, and it's not as easy as it may seem.
First, you should build the boost build engine itself. My most recent attempt was with boost 1.66 + MSVC 2017. Needless to say, that I ran into quite usual showstopper. Boost could not compile b2 because it could not find a few C++ headers, and libraries. Following are necessary steps to perform to avoid these obstacles.
- Информация о материале
- Автор: Vsevolod V Gromov
- Категория: Programming
- Просмотров: 1751
I started ESP8266 project, the first step was to support SDMMC over SPI. I have implemented SDMMC SPI interface years ago. The main challenge was to adapt it to new MCU core. After many attempts, it was up and running. Below are lessons learned.
- Информация о материале
- Автор: Vsevolod V Gromov
- Категория: Programming
- Просмотров: 2141
Recently I've implemented lightweight header library to encapsulate interfacing with FTDI EVE chip, namely, FT800, in templated OO manner. It should compile in modern embedded x86/ARM toolchains, like ones Keil or C++ Builder have.
The idea is as follows - while your core framework provides standard IO bus interface, like mine esfwxe, via EseChannel templated abstract facade, the rest is done in modular manner by EVE library classes.
- Информация о материале
- Автор: Vsevolod V Gromov
- Категория: Utilities
- Просмотров: 1874
For the recent mobile FMX application development, I had a challenge, do not use any service from my full-featured cross-platform framework, to minimize application bloat, besides, FMX framework itself is rather big piece of cake.
One of the cornerstones is a I18N support which in my framework is based upon custom implementation of gettext. In current case, I decided to wrap I18N manager coode around FMX's TLang. As far as TLang may use, besides its binary stoarage, the plain text files as well, formatted as key=value pair.
- Информация о материале
- Автор: Vsevolod V Gromov
- Категория: Libraries
- Просмотров: 2566
ExacTsoft C++ framework is kind of creature, that was born back in 2000s, when I realized, that products, I developed back there, need common functional codebase.
What was needed (click to unfold)
- Strict separation of non-visual, and visual (GUI) areas of functionality
- Some generic cross-platform implementations, for file primitives, for instance
- Extendability
- String class + its satellites, like I18N, locale, misc encoding converters, tokenizer, RegEx
- File, Path, etc. primitives
- Streams
- Basic XML support
- Math, advanced math
- Communications
- Reflection
- Scripting
- Информация о материале
- Автор: Vsevolod V Gromov
- Категория: Libraries
- Просмотров: 3526
About couple years ago, I've faced neccessity to add Auto-update functionality to my software. There were several restrictions, to which this tool should comply.
- Freeware, open source.
- Intuitive programming interface.
- Final binary should be independent of any external libraries.
- Easy to integrate with a product
- Информация о материале
- Автор: Vsevolod V Gromov
- Категория: ES scripting framework
- Просмотров: 684
"ess-console command-line usage:\n"
"ess-console.exe [options] [switches]\nOptions:\n"
"-f - input script file <filename>.<ess|cess|cesse>\n"
"-o - script compiled output directory or file <filename>.<cess|cesse>\n"
"-i - optional script include path(s), semicolon-separated\n"
"-l - optional script binary link path(s), semicolon-separated\n"
"-e - script execution entry point, optionally followed by parameter values, semicolon-separated\n"
" example: -e <someFunction>[;\"param 0\";\"param 1\";\"param 2\"]\n"
"Switches:\n"
"-m - start console application window minimized\n"
"-d - preserve debug information in compiled script\n"
"-c - encrypt the compiled binary file\n"
"-r - run loaded script file\n"
"-x - exit console upon successfull operation completion\n"
"-n - export translatable strings to the *.pot file alongside compiled script binary when saving the latter\n"
"-? - show this information\n"
"-h - alias of -?\n"
- ESS script to convert UTF-8 into C escaped hex
- Example of changes to the new version of esscript
- ES Script example of I2C interfacing to OPT3001 lighting sensor
- ES Script example of communicating with AD-7732 UART camera
- ES Script example of FTDI MPSSE controlling 28BYJ-48 stepper motor
- NXP MCU ISP excerpt from ES Script codebase
- ES script object dynamic layout
- NMEA parser extension for MTK 3333