gklingler / sharedlibsdemo Goto Github PK
View Code? Open in Web Editor NEWMinimal "portable" cmake project that builds and links a shared library. Builds on various operating systems with various compilers.
Minimal "portable" cmake project that builds and links a shared library. Builds on various operating systems with various compilers.
I just found your repo about the OS portable shared libraries and it looks great.
I have a project where not only does it have to be OS portable, the main codebase has a architecture where there is the main control code, which then given a specific variant would need to call that variant's state machine.
At the source level, it would be a matter of having a data structure with the function pointers for each of the state machine functions. However, I cannot know all the possible variants upfront and I would like it to be forward compatible with statemachine plugins.
Not sure how best to do this...
I was thinking that the baseline code could be calling a shared library that somehow is configured to "bind" to a specific statemachine plugin. then the adding of the new statemachine can be done at the system level.
Alternatively, each statemachine could be a separate executable that registers with the baseline codebase using IPC, but this runs into runtime OS compatibility issues.
Any advice is much appreciated!
To summarize, we have an OS portable codebase (in C) that is calling a standardized statemachine through a predefined set of interface functions. There will be many different statemachine variants, and the exact type (name) of all the future statemachines is unknown.
Some sane way to create the set of OS portable statemachines that all are called by the OS portable baseline code is needed.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.