admin
2025-01-22 7e31442f0e9b07764e9c6a9680d3d4aeba5fe1de
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Quintiq file version 2.0
#parent: #root
MethodOverride DoExecuteReactive (Algorithm algorithm, LibOpt_Task task) as stream[JSON]
{
  TextBody:
  [*
    if( this.AutoRegisterTypeDescriptors() )
    {
      program := algorithm.astype( MathematicalProgram );
      // Register type descriptors if the program hasn't been executed before and the suboptimizer is configured to do so.
      if( program.ExecutionCounter() = 0 )
      {
        this.RegisterTypeDescriptors( program );
      }
      program.GenerateNames();
    }
    
    execute := algorithm->LibOpt_SuboptimizerMP::ExecuteAlgorithm();
    return execute->|this->DoHandleResultCall( algorithm, task );
  *]
}