Added C# bindings through SWIG #57
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Purpose
Hello, I am the developer of WUI-NITY (https://www.nfpa.org/education-and-research/research/fire-protection-research-foundation/projects-and-reports/wunity-a-platform-for-the-simulation-of-wildland-urban-interface-fire-evacuation) and am using Behave for spread rate calculations for various tasks.
I previously converted all of Behave into C# (a few years back) to make use of it, but it makes more sense to add C# bindings in order to keep up with any changes to Behave. As such I have used SWIG to create bindings and glue code, as well as adding a compile target for a DLL version of Behave.
If this is not in line with how you see Behave being used that's fine, just ignore and close the pull request, but I figured there might be someone else who might have similar needs (e.g. generate python bindings which just requires an additional config file).
Related Issues
No related issue
Submission Checklist
Code compiles are passing (
make compile)It does compile, I had to fix safeSeperationDistanceCalculatior.cpp as that was not compiling from the latest commit.
Tests are passing (
make test)Did not touch main code at all so did not run tests, but ran some tests of the generated DLL in a C# project and can generate FuelModels and run through
doSurfaceRunInDirectionOfMaxSpread() for all 256 fuels (some of course come back with a 0).
Testing