this quite sizable commit does several things, but is primarily focussed on building a toolkit that can run simultaneous simulations/analyses within a shared memory space. Versions <=2.1 use a long list of global variables that prevent multiple instantiations on linux systems without resorting to compilation tricks (like duplicate binaries or similar via static linkage). This version uses a single "Project" pointer to encapsulate the network and analysis data. There are no changes to existing algo implementations other than to accomodate dereferencing of the passed-in pointers. A more detailed list of major changes below: - mirrors all “ENxxxx” function calls with “EN_xxxx” versions (note the underscore) that take an extra first parameter: a pointer to an EN_Project struct, which contains all network, hydraulic, quality, and associated data. - tweaks some code formatting to make it more readable - removes some deprecated/commented code that was sufficiently old - fixes implicit type-cast warnings * Added ENaddnode and ENaddlink functions * More memory reallocations * Added ENInit, ENsetheadcurveindex * Added ENdeletelink and ENdeletenode * restored default behavior for float types * fixed type * Added docstrings for ENinit * cleanup change * moves global rule variables to vars.h * migrates rule structs to typedefs for better readability * char types to proper enums fixes #93 * Change some variable declarations for compatibility Changes to keep compatibility with C89 compilers: variables must be declared at the top of the functions. Remove the use of EN_LinkType in function call as it is not compatible with ENgetnodetype. * Moved declaration of idstodelete to top of function * Updated ENinit function and headers Updated header files with new functions Updated def file with new functions For ENinit changes names of parameters #98 Added enum for headloss formula * Missed these files in 1a033fc * migrates char types to enums fixes #93, supports unified link/node type enums, rather than public/private redefinitions * removing links in reverse-index order maintains proper indexing fixes #96 * style * clarifies curve getter units issue (dox) closes #95 * fixes link/node confusion in ENsetlinktype partially reverts a3bce95dc330a5a297634a303d438e2e1bc41cc9 * partial compilation fix * fixes dox issue * fixes allocation issues with enums - updates style in various places - introduces FlowDirection enum - use snprintf to prevent overflow * fixes enum type cast * updated mac project settings * Use of _snprintf on Windows and remove DLLEXPORT from mempool.h snprintf it not compatible on Windows so we use _snprintf mempool gave starnge compilation errors while removing DLLEXPORT worked. Not sure why these functions needed to be exposed in the DLL? * Revert "Use of _snprintf on Windows and remove DLLEXPORT from mempool.h" This reverts commit 6238f77d47fa0feaabe5836043c006937de433a2. * use of _snprintf instead of snprintf on Windows and removed DLLEXPORT from mempool.h Had compilation errors on mempool.h. Removed DLLEXPORT so solve it. Not sure why there was a need to expose these functions? * Shift indices for Links in ENaddnode Need to shift indices for Links not just Pipes since a pump could be connected directly to a reservoir. Also set the defult base demand to zero (was 5). * Set defualts for madatory link properties in ENaddlink and small fix for ENsetheadcurveindex Relates to #102 and closes #103 * wraps globals into structs, duplicates api functions with objective versions * parse and serialize Comment field for network elements related to #47 * adds getter for head/efficiency curve in EN_getlinkvalue * adds getter for event node index … to return the index of the junction (tank) that triggered the event. * fixes edge case in parsing … where inp files without demands in [JUNCTIONS] and without any [DEMAND] categories will fail. * adds freeing function for project pointer * removes redundant string literals, fixes overrun issue in error message getter function * check for hydraulics already closed * moving error definitions to data file * deprecates ENR err message getter (unused) * updates location of errors data file also begins to expose blind structs to curves and patterns, anticipating buildout of APIs for those. * updates CLI output to reflect executable name as invoked relates to #109 * Feature nrtest (#131) * Initial commit EPANET testing tools. * Initial commit for epanet-nrtestsuite * SWIG wrapper for EPANET outputapi (#118) * Removed pervious version of outputapi and wrapper * SWIG wrapper for EPANET outputapi * Patching cmake build script fixed target for outputapi * Build failing on deprecated test script * Minor changes. Responding to review comments. * Feature nrtest (#121) * Configured python setup to automatically build nrtest tools. * Working on build / testing automation * Adding EPANET 2.0.12 benchmark * Updated Travis yml to run nrtest * Fixing InsecurePlatformWarning * Fixing InsecurePlatformWarning again * Fixing InsecurePlatformWarning * Fixing InsecurePlatformWarning * Fixing InsecurePlatformWarning * Update .travis.yml * Update .travis.yml * Update .travis.yml * Update .travis.yml * Working on configuring python environment and building test tools under Travis CI. * Making gen-config.sh and run-nrtest.sh executable * Debugging .travis.yml * Debugging .travis.yml * Debugging .travis.yml again * Debugging .travis.yml again * debugging travis setup * debugging Travis setup * debugging Travis setup * debugging Travis setup * debugging Travis setup * debugging Travis setup * debugging Travis setup * debugging Travis setup * debugging Travis setup * debugging Travis setup * debugging Travis setup * Fixing bug with __strncpy_chk destlen < len * nrtesting clean up * re-implements fixes from:5eead5ae403c788567a4* removes extraneous build files, moves cmake and updates travis * mirror of 9b37035560f9683f1514b439f7586a5c17bca5bf * Move some variable declarations * More variable declarations * Fix TmpDir * Allocate _defaultModel * Fix EN_addcurve funcrion * Fix for inpfile * Fix writeRuleinInp call * Set MAXMSG to 79 chars * Fix for flow direction * Refactoring testing related python packages and SWIG wrapper bug fix (#139) * Eliminated epanet-reader package. Removed numpy dependency from epanet-output. Fixed reference counting bug in SWIG wrapper. Added error checking to run_nrtest.sh. Added nrtest package to requirements file. * changing buildhome directory * Fixing bug related to preprocessor definition of PI
222 lines
2.7 KiB
Plaintext
Executable File
222 lines
2.7 KiB
Plaintext
Executable File
# Compiled Object files
|
|
*.slo
|
|
*.lo
|
|
*.o
|
|
*.map
|
|
*.exp
|
|
*.lib
|
|
|
|
# Compiled Dynamic libraries and executables
|
|
*.so
|
|
*.dll
|
|
*.exe
|
|
|
|
# Compiled Static libraries
|
|
*.lai
|
|
*.la
|
|
*.a
|
|
|
|
# Doxygen output
|
|
doxygen_out/
|
|
|
|
# OS X Finder
|
|
.DS_Store
|
|
|
|
# Xcode per-user config
|
|
*.mode1
|
|
*.mode1v3
|
|
*.mode2v3
|
|
*.perspective
|
|
*.perspectivev3
|
|
*.pbxuser
|
|
*.xcworkspace
|
|
xcuserdata
|
|
|
|
# Build products
|
|
*.o
|
|
*.LinkFileList
|
|
*.hmap
|
|
|
|
# Automatic backup files
|
|
*~.nib/
|
|
*.swp
|
|
*~
|
|
*.dep
|
|
|
|
*.xcodeproj/
|
|
!*.xcodeproj/project.pbxproj
|
|
|
|
|
|
|
|
## Ignore Visual Studio temporary files, build results, and
|
|
## files generated by popular Visual Studio add-ons.
|
|
|
|
# User-specific files
|
|
*.suo
|
|
*.user
|
|
*.sln.docstates
|
|
|
|
# Build results
|
|
|
|
[Dd]ebug/
|
|
[Rr]elease/
|
|
x64/
|
|
#build/
|
|
[Bb]in/
|
|
[Oo]bj/
|
|
|
|
# MSTest test Results
|
|
[Tt]est[Rr]esult*/
|
|
[Bb]uild[Ll]og.*
|
|
|
|
*_i.c
|
|
*_p.c
|
|
*.ilk
|
|
*.meta
|
|
*.obj
|
|
*.pch
|
|
*.pdb
|
|
*.pgc
|
|
*.pgd
|
|
*.rsp
|
|
*.sbr
|
|
*.tlb
|
|
*.tli
|
|
*.tlh
|
|
*.tmp
|
|
*.tmp_proj
|
|
*.log
|
|
*.vspscc
|
|
*.vssscc
|
|
.builds
|
|
*.pidb
|
|
*.log
|
|
*.scc
|
|
|
|
# Visual C++ cache files
|
|
ipch/
|
|
*.aps
|
|
*.ncb
|
|
*.opensdf
|
|
*.sdf
|
|
*.cachefile
|
|
|
|
# Visual Studio profiler
|
|
*.psess
|
|
*.vsp
|
|
*.vspx
|
|
*.idb
|
|
|
|
# Guidance Automation Toolkit
|
|
*.gpState
|
|
|
|
# ReSharper is a .NET coding add-in
|
|
_ReSharper*/
|
|
*.[Rr]e[Ss]harper
|
|
|
|
# TeamCity is a build add-in
|
|
_TeamCity*
|
|
|
|
# DotCover is a Code Coverage Tool
|
|
*.dotCover
|
|
|
|
# NCrunch
|
|
*.ncrunch*
|
|
.*crunch*.local.xml
|
|
|
|
# Installshield output folder
|
|
[Ee]xpress/
|
|
|
|
# DocProject is a documentation generator add-in
|
|
DocProject/buildhelp/
|
|
DocProject/Help/*.HxT
|
|
DocProject/Help/*.HxC
|
|
DocProject/Help/*.hhc
|
|
DocProject/Help/*.hhk
|
|
DocProject/Help/*.hhp
|
|
DocProject/Help/Html2
|
|
DocProject/Help/html
|
|
|
|
# Click-Once directory
|
|
publish/
|
|
|
|
# Publish Web Output
|
|
*.Publish.xml
|
|
*.pubxml
|
|
|
|
# NuGet Packages Directory
|
|
## TODO: If you have NuGet Package Restore enabled, uncomment the next line
|
|
#packages/
|
|
|
|
# Windows Azure Build Output
|
|
csx
|
|
*.build.csdef
|
|
|
|
# Windows Store app package directory
|
|
AppPackages/
|
|
|
|
# Others
|
|
sql/
|
|
*.Cache
|
|
ClientBin/
|
|
[Ss]tyle[Cc]op.*
|
|
~$*
|
|
*~
|
|
*.dbmdl
|
|
*.[Pp]ublish.xml
|
|
*.pfx
|
|
*.publishsettings
|
|
|
|
# RIA/Silverlight projects
|
|
Generated_Code/
|
|
|
|
# Backup & report files from converting an old project file to a newer
|
|
# Visual Studio version. Backup files are not needed, because we have git ;-)
|
|
_UpgradeReport_Files/
|
|
Backup*/
|
|
UpgradeLog*.XML
|
|
UpgradeLog*.htm
|
|
|
|
# SQL Server files
|
|
App_Data/*.mdf
|
|
App_Data/*.ldf
|
|
|
|
# =========================
|
|
# Windows detritus
|
|
# =========================
|
|
|
|
# Windows image file caches
|
|
Thumbs.db
|
|
ehthumbs.db
|
|
|
|
# Folder config file
|
|
Desktop.ini
|
|
|
|
# Recycle Bin used on file shares
|
|
$RECYCLE.BIN/
|
|
|
|
|
|
*.xcuserstate
|
|
|
|
# WindSDK compiled folders
|
|
build/WinSDK/32bit/
|
|
build/WinSDK/64bit/
|
|
=======
|
|
|
|
|
|
# Python compiler files
|
|
*.py[c]
|
|
|
|
# Python distribution and packaging
|
|
dist/
|
|
temp/
|
|
*.cfg
|
|
*.egg-info/
|
|
|
|
# Eclipse Stuff
|
|
.metadata/
|
|
.settings/
|
|
.project
|
|
.cproject
|
|
.pydevproject
|