LotSizingDataModel.Solver 2.0.1
Solver-independent modeling, execution, monitoring and adapter infrastructure.
Loading...
Searching...
No Matches
ISolverAdapter.cs
Go to the documentation of this file.
1using System.Collections.Generic;
3
5
6/// <summary>
7/// Defines the metadata and capabilities exposed by a solver
8/// adapter plugin.
9/// </summary>
10/// <remarks>
11/// A solver adapter is responsible for connecting the generic
12/// solver layer to one native optimization engine such as
13/// CPLEX, Gurobi, FICO Xpress, or COIN-OR CBC.
14/// </remarks>
15public interface ISolverAdapter :
17{
18 /// <summary>
19 /// Gets the unique adapter identifier.
20 /// </summary>
21 string AdapterId
22 {
23 get;
24 }
25
26 /// <summary>
27 /// Gets the adapter display name.
28 /// </summary>
30 {
31 get;
32 }
33
34 /// <summary>
35 /// Gets the adapter implementation version.
36 /// </summary>
38 {
39 get;
40 }
41
42 /// <summary>
43 /// Gets the minimum supported solver version, when one is
44 /// defined.
45 /// </summary>
47 {
48 get;
49 }
50
51 /// <summary>
52 /// Gets the solver capabilities implemented by this
53 /// adapter.
54 /// </summary>
55 IReadOnlyCollection<SolverCapability> Capabilities
56 {
57 get;
58 }
59
60 /// <summary>
61 /// Gets a value indicating whether this adapter supports
62 /// the specified capability.
63 /// </summary>
64 /// <param name="capability">
65 /// Capability to test.
66 /// </param>
67 /// <returns>
68 /// <see langword="true"/> when the capability is supported;
69 /// otherwise, <see langword="false"/>.
70 /// </returns>
72 SolverCapability capability);
73}
Defines the common contract implemented by every lot-sizing solver adapter.
Defines the metadata and capabilities exposed by a solver adapter plugin.
string MinimumSupportedSolverVersion
Gets the minimum supported solver version, when one is defined.
bool SupportsCapability(SolverCapability capability)
Gets a value indicating whether this adapter supports the specified capability.
string AdapterVersion
Gets the adapter implementation version.
IReadOnlyCollection< SolverCapability > Capabilities
Gets the solver capabilities implemented by this adapter.
string AdapterId
Gets the unique adapter identifier.
string AdapterName
Gets the adapter display name.
SolverCapability
Identifies an optional capability implemented by a solver adapter.