Initializing help system before first use

ColumnArray4Builder

Build a 4-dimensional array of columns. More...

Public Member Functions

  ColumnArray4Builder (C1 dim1, C2 dim2, C3 dim3, C4 dim4, xpress::XPRSProblem *prob)
  Create a builder that will create a 4-dimensional array of columns with the specified dimensions.
 
auto  toArray () -> std::vector< std::vector< std::vector< std::vector< int > > > >
  Create columns as specified by this builder.
 
template<typename I , typename Func_makeResult , typename Action_addResult , is-invocable(Func_makeResult, I) , is-invocable(Action_addResult, void, I, C1, C2, C3, C4, int) >
auto  toArray (Func_makeResult makeResult, Action_addResult addResult) -> I
  Create columns as specified by this builder.
 
auto  withLB (double newLb) -> ColumnArray4Builder< C1, C2, C3, C4, C1IsIntegral, C2IsIntegral, C3IsIntegral, C4IsIntegral > &
  Set a constant lower bound for all columns.
 
template<typename Func_newLb , is-invocable(Func_newLb, double, C1, C2, C3, C4) >
auto  withLB (Func_newLb newLb) -> ColumnArray4Builder< C1, C2, C3, C4, C1IsIntegral, C2IsIntegral, C3IsIntegral, C4IsIntegral > &
  Set a lower bound that depends on the index.
 
auto  withLimit (double newLimit) -> ColumnArray4Builder< C1, C2, C3, C4, C1IsIntegral, C2IsIntegral, C3IsIntegral, C4IsIntegral > &
  Set a constant limit for all columns.
 
template<typename Func_newLimit , is-invocable(Func_newLimit, double, C1, C2, C3, C4) >
auto  withLimit (Func_newLimit newLimit) -> ColumnArray4Builder< C1, C2, C3, C4, C1IsIntegral, C2IsIntegral, C3IsIntegral, C4IsIntegral > &
  Set a limit that depends on the index.
 
template<typename Func_newName , is-invocable(Func_newName, std::optional< std::string >, C1, C2, C3, C4) >
auto  withName (Func_newName newName) -> ColumnArray4Builder< C1, C2, C3, C4, C1IsIntegral, C2IsIntegral, C3IsIntegral, C4IsIntegral > &
  Set a name that depends on the index.
 
auto  withName (std::optional< std::string > newName) -> ColumnArray4Builder< C1, C2, C3, C4, C1IsIntegral, C2IsIntegral, C3IsIntegral, C4IsIntegral > &
  Set a constant name for all columns.
 
auto  withType (ColumnType newType) -> ColumnArray4Builder< C1, C2, C3, C4, C1IsIntegral, C2IsIntegral, C3IsIntegral, C4IsIntegral > &
  Set the type for all columns.
 
template<typename Func_newType , is-invocable(Func_newType, xpress::ColumnType, C1, C2, C3, C4) >
auto  withType (Func_newType newType) -> ColumnArray4Builder< C1, C2, C3, C4, C1IsIntegral, C2IsIntegral, C3IsIntegral, C4IsIntegral > &
  Set a type that depends on the index.
 
auto  withUB (double newUb) -> ColumnArray4Builder< C1, C2, C3, C4, C1IsIntegral, C2IsIntegral, C3IsIntegral, C4IsIntegral > &
  Set a constant upper bound for all columns.
 
template<typename Func_newUb , is-invocable(Func_newUb, double, C1, C2, C3, C4) >
auto  withUB (Func_newUb newUb) -> ColumnArray4Builder< C1, C2, C3, C4, C1IsIntegral, C2IsIntegral, C3IsIntegral, C4IsIntegral > &
  Set a upper bound that depends on the index.
 

Detailed Description

template<typename C1, typename C2, typename C3, typename C4, is-integral(C1), is-integral(C2), is-integral(C3), is-integral(C4)>
class xpress::VariableBuilder::ColumnArray4Builder< C1, C2, C3, C4,,,, >

Build a 4-dimensional array of columns.

Since
44.00

Constructor & Destructor Documentation

ColumnArray4Builder()

template<typename C1 , typename C2 , typename C3 , typename C4 , is-integral(C1) , is-integral(C2) , is-integral(C3) , is-integral(C4) >
xpress::VariableBuilder::ColumnArray4Builder< C1, C2, C3, C4, C1IsIntegral, C2IsIntegral, C3IsIntegral, C4IsIntegral >::ColumnArray4Builder ( C1 dim1,
C2 dim2,
C3 dim3,
C4 dim4,
xpress::XPRSProblem * prob )
inline

Create a builder that will create a 4-dimensional array of columns with the specified dimensions.

Parameters
dim1 Dimension 1.
dim2 Dimension 2.
dim3 Dimension 3.
dim4 Dimension 4.
prob The problem for which to create columns.
Since
44.00

Member Function Documentation

toArray() [1/2]

toArray() [2/2]

template<typename C1 , typename C2 , typename C3 , typename C4 , is-integral(C1) , is-integral(C2) , is-integral(C3) , is-integral(C4) >
template<typename I , typename Func_makeResult , typename Action_addResult , is-invocable(Func_makeResult, I) , is-invocable(Action_addResult, void, I, C1, C2, C3, C4, int) >
auto xpress::VariableBuilder::ColumnArray4Builder< C1, C2, C3, C4, C1IsIntegral, C2IsIntegral, C3IsIntegral, C4IsIntegral >::toArray ( Func_makeResult makeResult,
Action_addResult addResult ) -> I
inline

Create columns as specified by this builder.

Examples using toArray:

Parameters
makeResult A function to create the (empty) return value.
addResult A function to add a value to the result.
Template Parameters
I Type of return value.
Func_makeResult auto () -> I: Maps () to I.
Action_addResult auto (I,C1,C2,C3,C4,int) -> void: Maps (I,C1,C2,C3,C4,int) to void.
Returns
The array of columns.
Since
44.00

withLB() [1/2]

template<typename C1 , typename C2 , typename C3 , typename C4 , is-integral(C1) , is-integral(C2) , is-integral(C3) , is-integral(C4) >
auto xpress::VariableBuilder::ColumnArray4Builder< C1, C2, C3, C4, C1IsIntegral, C2IsIntegral, C3IsIntegral, C4IsIntegral >::withLB ( double newLb ) -> ColumnArray4Builder<C1,C2,C3,C4,C1IsIntegral,C2IsIntegral,C3IsIntegral,C4IsIntegral>&
inline

Set a constant lower bound for all columns.

Examples using withLB:

Parameters
newLb The lower bound for all columns created by this builder.
Returns
Always returns this instance.
Since
44.00

withLB() [2/2]

template<typename C1 , typename C2 , typename C3 , typename C4 , is-integral(C1) , is-integral(C2) , is-integral(C3) , is-integral(C4) >
template<typename Func_newLb , is-invocable(Func_newLb, double, C1, C2, C3, C4) >
auto xpress::VariableBuilder::ColumnArray4Builder< C1, C2, C3, C4, C1IsIntegral, C2IsIntegral, C3IsIntegral, C4IsIntegral >::withLB ( Func_newLb newLb ) -> ColumnArray4Builder<C1,C2,C3,C4,C1IsIntegral,C2IsIntegral,C3IsIntegral,C4IsIntegral>&
inline

Set a lower bound that depends on the index.

Examples using withLB:

Parameters
newLb The lower bound for all columns created by this builder.
Template Parameters
Func_newLb auto (C1,C2,C3,C4) -> double: Maps (C1,C2,C3,C4) to double.
Returns
Always returns this instance.
Since
44.00

withLimit() [1/2]

template<typename C1 , typename C2 , typename C3 , typename C4 , is-integral(C1) , is-integral(C2) , is-integral(C3) , is-integral(C4) >
auto xpress::VariableBuilder::ColumnArray4Builder< C1, C2, C3, C4, C1IsIntegral, C2IsIntegral, C3IsIntegral, C4IsIntegral >::withLimit ( double newLimit ) -> ColumnArray4Builder<C1,C2,C3,C4,C1IsIntegral,C2IsIntegral,C3IsIntegral,C4IsIntegral>&
inline

Set a constant limit for all columns.

A limit specifies the bounds for semi-continuous/integer columns and the limit for partial integer columns. It does not apply to columns of other types.

Examples using withLimit:

Parameters
newLimit The limit for all columns created by this builder.
Returns
Always returns this instance.
Since
44.00

withLimit() [2/2]

template<typename C1 , typename C2 , typename C3 , typename C4 , is-integral(C1) , is-integral(C2) , is-integral(C3) , is-integral(C4) >
template<typename Func_newLimit , is-invocable(Func_newLimit, double, C1, C2, C3, C4) >
auto xpress::VariableBuilder::ColumnArray4Builder< C1, C2, C3, C4, C1IsIntegral, C2IsIntegral, C3IsIntegral, C4IsIntegral >::withLimit ( Func_newLimit newLimit ) -> ColumnArray4Builder<C1,C2,C3,C4,C1IsIntegral,C2IsIntegral,C3IsIntegral,C4IsIntegral>&
inline

Set a limit that depends on the index.

A limit specifies the bounds for semi-continuous/integer columns and the limit for partial integer columns. It does not apply to columns of other types.

Examples using withLimit:

Parameters
newLimit The limit for all columns created by this builder.
Template Parameters
Func_newLimit auto (C1,C2,C3,C4) -> double: Maps (C1,C2,C3,C4) to double.
Returns
Always returns this instance.
Since
44.00

withName() [1/2]

template<typename C1 , typename C2 , typename C3 , typename C4 , is-integral(C1) , is-integral(C2) , is-integral(C3) , is-integral(C4) >
template<typename Func_newName , is-invocable(Func_newName, std::optional< std::string >, C1, C2, C3, C4) >
auto xpress::VariableBuilder::ColumnArray4Builder< C1, C2, C3, C4, C1IsIntegral, C2IsIntegral, C3IsIntegral, C4IsIntegral >::withName ( Func_newName newName ) -> ColumnArray4Builder<C1,C2,C3,C4,C1IsIntegral,C2IsIntegral,C3IsIntegral,C4IsIntegral>&
inline

withName() [2/2]

template<typename C1 , typename C2 , typename C3 , typename C4 , is-integral(C1) , is-integral(C2) , is-integral(C3) , is-integral(C4) >
auto xpress::VariableBuilder::ColumnArray4Builder< C1, C2, C3, C4, C1IsIntegral, C2IsIntegral, C3IsIntegral, C4IsIntegral >::withName ( std::optional< std::string > newName ) -> ColumnArray4Builder<C1,C2,C3,C4,C1IsIntegral,C2IsIntegral,C3IsIntegral,C4IsIntegral>&
inline

withType() [1/2]

template<typename C1 , typename C2 , typename C3 , typename C4 , is-integral(C1) , is-integral(C2) , is-integral(C3) , is-integral(C4) >
auto xpress::VariableBuilder::ColumnArray4Builder< C1, C2, C3, C4, C1IsIntegral, C2IsIntegral, C3IsIntegral, C4IsIntegral >::withType ( ColumnType newType ) -> ColumnArray4Builder<C1,C2,C3,C4,C1IsIntegral,C2IsIntegral,C3IsIntegral,C4IsIntegral>&
inline

withType() [2/2]

template<typename C1 , typename C2 , typename C3 , typename C4 , is-integral(C1) , is-integral(C2) , is-integral(C3) , is-integral(C4) >
template<typename Func_newType , is-invocable(Func_newType, xpress::ColumnType, C1, C2, C3, C4) >
auto xpress::VariableBuilder::ColumnArray4Builder< C1, C2, C3, C4, C1IsIntegral, C2IsIntegral, C3IsIntegral, C4IsIntegral >::withType ( Func_newType newType ) -> ColumnArray4Builder<C1,C2,C3,C4,C1IsIntegral,C2IsIntegral,C3IsIntegral,C4IsIntegral>&
inline

Set a type that depends on the index.

Examples using withType:

Parameters
newType The type for all columns created by this builder.
Template Parameters
Func_newType auto (C1,C2,C3,C4) -> xpress::ColumnType: Maps (C1,C2,C3,C4) to xpress::ColumnType.
Returns
Always returns this instance.
Since
44.00

withUB() [1/2]

template<typename C1 , typename C2 , typename C3 , typename C4 , is-integral(C1) , is-integral(C2) , is-integral(C3) , is-integral(C4) >
auto xpress::VariableBuilder::ColumnArray4Builder< C1, C2, C3, C4, C1IsIntegral, C2IsIntegral, C3IsIntegral, C4IsIntegral >::withUB ( double newUb ) -> ColumnArray4Builder<C1,C2,C3,C4,C1IsIntegral,C2IsIntegral,C3IsIntegral,C4IsIntegral>&
inline

Set a constant upper bound for all columns.

Examples using withUB:

Parameters
newUb The upper bound for all columns created by this builder.
Returns
Always returns this instance.
Since
44.00

withUB() [2/2]

template<typename C1 , typename C2 , typename C3 , typename C4 , is-integral(C1) , is-integral(C2) , is-integral(C3) , is-integral(C4) >
template<typename Func_newUb , is-invocable(Func_newUb, double, C1, C2, C3, C4) >
auto xpress::VariableBuilder::ColumnArray4Builder< C1, C2, C3, C4, C1IsIntegral, C2IsIntegral, C3IsIntegral, C4IsIntegral >::withUB ( Func_newUb newUb ) -> ColumnArray4Builder<C1,C2,C3,C4,C1IsIntegral,C2IsIntegral,C3IsIntegral,C4IsIntegral>&
inline

Set a upper bound that depends on the index.

Examples using withUB:

Parameters
newUb The upper bound for all columns created by this builder.
Template Parameters
Func_newUb auto (C1,C2,C3,C4) -> double: Maps (C1,C2,C3,C4) to double.
Returns
Always returns this instance.
Since
44.00

The documentation for this class was generated from the following file:
  • xpress.hpp

© 2001-2025 Fair Isaac Corporation. All rights reserved. This documentation is the property of Fair Isaac Corporation (“FICO”). Receipt or possession of this documentation does not convey rights to disclose, reproduce, make derivative works, use, or allow others to use it except solely for internal evaluation purposes to determine whether to purchase a license to the software described in this documentation, or as otherwise set forth in a written software license agreement between you and FICO (or a FICO affiliate). Use of this documentation and the software described in it must conform strictly to the foregoing permitted uses, and no other use is permitted.