smt
所属分类:Linux/Unix编程
开发工具:C/C++
文件大小:272KB
下载次数:1
上传日期:2020-07-26 11:56:43
上 传 者:
yxgi5
说明: 一个c语言的HSM框架和例子,事件发布-订阅
(A HSM framework and example of C language)
文件列表:
smt\CMakeLists.txt (572, 2020-07-12)
smt\LICENSE.md (1066, 2020-07-12)
smt\build\libsmt.so (21440, )
smt\build\cmake_install.cmake (2433, )
smt\build\Makefile (6387, )
smt\build\CMakeCache.txt (11671, )
smt\include\smt.h (6444, 2020-07-12)
smt\include\smt_user_defs.h (391, 2020-07-12)
smt\include\smt_defs.h (520, 2020-07-12)
smt\src\smt.c (23766, 2020-07-12)
smt\img\2CmLgW11.png (56089, 2020-07-12)
smt\build\CMakeFiles\feature_tests.bin (9408, )
smt\build\CMakeFiles\Makefile.cmake (6309, )
smt\build\CMakeFiles\Makefile2 (3059, )
smt\build\CMakeFiles\progress.marks (2, )
smt\build\CMakeFiles\TargetDirectories.txt (439, )
smt\build\CMakeFiles\CMakeDirectoryInformation.cmake (637, )
smt\build\CMakeFiles\cmake.check_cache (85, )
smt\build\CMakeFiles\feature_tests.cxx (10011, )
smt\build\CMakeFiles\feature_tests.c (688, )
smt\build\CMakeFiles\CMakeOutput.log (40935, )
smt\sample\hello_world\helloworld.c (2963, )
smt\sample\hello_world\helloworld.h (1132, 2020-07-12)
smt\sample\hello_world\smt_user_defs.c (201, 2020-07-12)
smt\sample\hello_world\CMakeLists.txt (475, 2020-07-12)
smt\build\CMakeFiles\smt.dir\C.includecache (490, )
smt\build\CMakeFiles\smt.dir\depend.internal (239, )
smt\build\CMakeFiles\smt.dir\depend.make (307, )
smt\build\CMakeFiles\smt.dir\progress.make (43, )
smt\build\CMakeFiles\smt.dir\DependInfo.cmake (579, )
smt\build\CMakeFiles\smt.dir\cmake_clean.cmake (234, )
smt\build\CMakeFiles\smt.dir\link.txt (98, )
smt\build\CMakeFiles\smt.dir\flags.make (231, )
smt\build\CMakeFiles\smt.dir\build.make (4171, )
smt\build\CMakeFiles\3.6.2\CMakeDetermineCompilerABI_CXX.bin (7448, )
smt\build\CMakeFiles\3.6.2\CMakeDetermineCompilerABI_C.bin (7392, )
... ...
# State Machine Tool
SMT is a implementation of HSM (Hierachical State Machine) in c language.
## Features
* Unlimited statemachine hierarchies
* Deep history
* App defined Entry/Exit function on states
* App defined Guard/Action function on transitions
* statemachine destroy hook
* App defined context be passed through to all Entry/Exit/Guard/Action/Destroy hooks
* App defined method to allocate and free memory
* Easy to define events, states and transitions
## Build SMT
SMT use [CMake](https://cmake.org/) as default build system. Once you cloned the [smt repo](https://github.com/greenlaw110/smt), you can follow these steps to build SMT:
```
cd
mkdir build
cd build
cmake ..
make
make install
```
This will install the libsmt.so into your `/usr/lib` dir
## Sample Apps
* [Helloworld](sample/hello_world/README.md)
* [Microwave](sample/microwave/README.md)
近期下载者:
相关文件:
收藏者: