Quintiq file version 2.0
|
#parent: #root
|
Method CopyAlgorithm (Algorithm algorithm) as owning Algorithm
|
{
|
Description: 'Create a copy of an `Algorithm`. This makes sure that the messages stored in it are also duplicated.'
|
TextBody:
|
[*
|
result := LibOpt_Utility::ConstructMathematicalProgramWithoutAnalysis()
|
count_real := algorithm.RetrieveReal( LibOpt_Channel::Algorithm_Count() );
|
count := RealToNumber::ISOConverter().Convert( algorithm.RetrieveReal( LibOpt_Channel::Algorithm_Count() ) );
|
|
for( i := 0; i < count; i++ )
|
{
|
index := LibOpt_Channel::Algorithm_Index( i );
|
result.StoreString( index, algorithm.RetrieveString( index ) );
|
}
|
result.StoreReal( LibOpt_Channel::Algorithm_Count(), count_real );
|
|
return & result;
|
*]
|
InterfaceProperties { Accessibility: 'Module' }
|
}
|