We are taking the steps to Pulse 3.x
New folder structure changes have been introduced to 2.x that will allow us to move toward our 3.x goals.
This new folder structure will allow us to be more nimble in architecture for supporting multiple languages and engine implementations.
- A more modern CMake structure
- DebugRun and such config files are in data/config
- Scenarios and baselines are in data/human/adult/scenarios
- proto files are in src/schema
- There is now a src folder that has language folders, and everything of that language is in those
- (Previously I have a root/cdm and root/engine and root/test that had to each be separated by language, and that was inconvenient)
The src/cpp has all the same cpp code in it, just organized a little differently. There is a new folder named cpm. CPM stands for the Common Pulse(or physiology) Models. This is the location where physiology models (like the respiratory driver) are located. Currently everything is considered common to our one engine implementation, human adults. We are in the process of creating new engine implementations, such as a pediatric engine. This is where we will keep models common to more than one engine implementation. Unique models will be placed in a specific folder under an impl folder such as impl/human/adult and impl/human/pediatric.
A few changes to note for MSVC users:
- The superbuild solution is now named Pulse.sln (was previously Pulse-Superbuild.sln)
- The resulting Pulse code base solution is in an Innerbuild folder under your chosen cmake build directory (was previously in a Pulse folder under your chosen cmake build directory)
Everything should work and build the same. Please let us know if you have any problems, questions, thoughts.