BlueM.Opt Development: Difference between revisions

From BlueM
Jump to navigation Jump to search
(migration to GitHub, general page cleanup)
(update and add some explanations)
Line 3: Line 3:


==Source code==
==Source code==
BlueM.Opt is written in VB.NET and C#. The source code and issues are managed on GitHub: https://github.com/bluemodel/
BlueM.Opt is written in VB.NET and C#. The source code and issues are managed on GitHub: https://github.com/bluemodel/BlueM.Opt


[[BlueM.Sim]] and [[BlueM.DLLAdapter]] as well as [[TALSIM|Talsim-NG]] and [[SWMM]] are included in the repository as precompiled binaries, but [[BlueM.Wave]] needs to be checked out in a parallel folder.
[[BlueM.Sim]] and [[BlueM.DLLAdapter]] as well as [[TALSIM|Talsim-NG]] and [[SWMM]] are included in the repository as precompiled binaries, and [[BlueM.Wave]] is included as a submodule.


The individual components of BlueM.Opt are configured to build to a common parent output folder <code>..\bin\<Platform>\<Configuration></code>. The recommended folder structure is thus as follows:
When compiling BlueM.Opt and BlueM.Wave, a [https://www.steema.com/product/net TeeChart .NET] Pro license is required.
 
For testing purposes, you can use the evaluation version of TeeChart by removing the file <code>My Project\TeeChart.licenses</code> from the project within Visual Studio or by adding an empty file in its place. This will allow you to compile, but any charts will be displayed with a watermark.
 
==Compilation==
To compile, open the solution file <code>BlueM.Opt.sln</code> in Visual Studio and just build it.


<pre>
<div class="info">
BlueM
'''Note:'''
- BlueM.Opt
- BlueM.Wave
</pre>
This also ensures that references to Wave work out of the box.


When compiling BlueM.Opt and BlueM.Wave, a [https://www.steema.com/product/net TeeChart .NET] Pro license is required.
BlueM.Wave is set up to be output to a subdirectory <code>BlueM.Wave</code>. For this to work, the following settings have been made:
* set <code><probing privatePath="BlueM.Wave"/></code> in <code>app.config</code>
* set the "Copy Local" property of all project references to Wave to False (corresponds to <code><Private>False</Private></code> in the project files).
* the main Wave assembly output is copied to the subdirectory in the post-build event
* additional assemblies used by Wave that are unfortunately automatically output to the main output folder (no idea why?) are moved to the subdirectory individually, also in the post-build event


For testing purposes, you can use the evaluation version of TeeChart by removing the file <code>My Project\TeeChart.licenses</code> from the project within Visual Studio. This will allow you to compile, but any charts will be displayed with a watermark.
This could probably be done better, but that's the way it is right now.
</div>


===Documentation===
===Documentation===

Revision as of 11:10, 11 February 2024

EVO.png BlueM.Opt | Usage | Development

Source code

BlueM.Opt is written in VB.NET and C#. The source code and issues are managed on GitHub: https://github.com/bluemodel/BlueM.Opt

BlueM.Sim and BlueM.DLLAdapter as well as Talsim-NG and SWMM are included in the repository as precompiled binaries, and BlueM.Wave is included as a submodule.

When compiling BlueM.Opt and BlueM.Wave, a TeeChart .NET Pro license is required.

For testing purposes, you can use the evaluation version of TeeChart by removing the file My Project\TeeChart.licenses from the project within Visual Studio or by adding an empty file in its place. This will allow you to compile, but any charts will be displayed with a watermark.

Compilation

To compile, open the solution file BlueM.Opt.sln in Visual Studio and just build it.

Note:

BlueM.Wave is set up to be output to a subdirectory BlueM.Wave. For this to work, the following settings have been made:

  • set <probing privatePath="BlueM.Wave"/> in app.config
  • set the "Copy Local" property of all project references to Wave to False (corresponds to <Private>False</Private> in the project files).
  • the main Wave assembly output is copied to the subdirectory in the post-build event
  • additional assemblies used by Wave that are unfortunately automatically output to the main output folder (no idea why?) are moved to the subdirectory individually, also in the post-build event

This could probably be done better, but that's the way it is right now.

Documentation