8.4.1. 属性存取

读取或修改属性的API列表

函数

MDOgetattrinfo()

按名称检索属性信息

MDOgetintattr()

按其名称检索整数值属性

MDOsetintattr()

按其名称设置整数值属性

MDOgetintattrelement()

通过其名称和索引检索整数值属性

MDOsetintattrelement()

按其名称和索引设置整数值数组属性的单个值

MDOgetintattrarray()

按其名称和范围检索整数值数组属性的值

MDOsetintattrarray()

按其名称和范围设置整数值数组属性的值

MDOgetintattrlist()

按名称和索引检索整数值数组属性的值

MDOsetintattrlist()

按名称和索引设置整数值数组属性的值

MDOgetdblattr()

通过其名称检索double属性

MDOsetdblattr()

按其名称设置double属性

MDOgetdblattrelement()

通过其名称和索引检索double属性

MDOsetdblattrelement()

按名称和索引设置double数组属性中的元素

MDOgetdblattrarray()

按其名称和范围检索double数组属性的值

MDOsetdblattrarray()

按其名称和范围设置double数组属性的值

MDOgetdblattrlist()

通过其名称和索引检索double数组属性的值

MDOsetdblattrlist()

按其名称和索引设置double数组属性的值

MDOgetcharattrelement()

通过其名称和索引检索char值属性

MDOsetcharattrelement()

按名称和索引设置值为char的数组属性中的元素

MDOgetcharattrarray()

按名称和范围检索char值数组属性的值

MDOsetcharattrarray()

按其名称和范围设置char值数组属性的值

MDOgetcharattrlist()

通过其名称和索引检索char值数组属性的值

MDOsetcharattrlist()

按名称和索引设置char值数组属性的值

MDOgetstrattr()

按其名称检索字符串值属性

MDOsetstrattr()

按其名称设置字符串值属性

MDOgetstrattrelement()

通过其名称和索引检索字符串值属性的单个值

MDOsetstrattrelement()

按名称和索引设置字符串值数组属性中的单个值

MDOgetstrattrarray()

按名称和范围检索字符串值数组属性的值

MDOsetstrattrarray()

按名称和范围设置字符串值数组属性的值

MDOgetstrattrlist()

按名称和索引检索字符串值数组属性的值

MDOsetstrattrlist()

按名称和索引设置字符串值数组属性的值

MDOgetmatattrelement()

通过其名称和索引检索矩阵值属性

MDOsetmatattrelement()

按名称和索引设置矩阵值数组属性中的单个值

MDOgetmatattrarray()

按其名称和范围检索矩阵值数组属性的值

MDOsetmatattrarray()

按其名称和范围设置矩阵值数组属性的值

MDOgetmatattrlist()

通过其名称和索引检索矩阵值数组属性的值

MDOsetmatattrlist()

按其名称和索引设置矩阵值数组属性的值

int MDOgetattrinfo(MDOmodel *model, const char *attrname, int *datatypeP, int *attrtypeP, int *settableP)

按名称检索属性信息。

Parameters:
  • model (MDOmodel*) – [in] 模型对象。

  • attrname (const char*) – [in] 属性名称。

  • datatypeP (int*) –

    [out] 保存属性值类型的位置。 属性数据类型包括:

    • 0表示char,

    • 1表示int,

    • 2表示double,

    • 3为字符串,

    • 和4为矩阵。

  • attrtypeP (int*) –

    [out] 存放位置属性类型。 属性类型包括:

    • 0表示模型属性,

    • 1表示变量属性,

    • 2表示线性约束属性,

    • 3表示sos约束属性,

    • 4表示二次约束属性,

    • 5表示一般约束属性,

    • 6表示psd变量属性,

    • 7表示psd约束属性

  • settableP (int*) – [out] 保存一个bool值以指示属性是否可设置的位置。

Returns:

指定函数状态的响应代码。

int MDOgetintattr(MDOmodel *model, const char *attrname, int *valueP)

按其名称检索整数值属性。

Parameters:
  • model (MDOmodel*) – [in] 模型对象。

  • attrname (const char*) – [in] 属性名称。

  • valueP (int*) – [out] 保存属性值的位置。

Returns:

指定函数状态的响应代码。

int MDOsetintattr(MDOmodel *model, const char *attrname, int newvalue)

按其名称设置整数值属性。

Parameters:
  • model (MDOmodel*) – [in] 模型对象。

  • attrname (const char*) – [in] 属性名称。

  • newvalue (int) – [in] 新的属性值。

Returns:

指定函数状态的响应代码。

int MDOgetintattrelement(MDOmodel *model, const char *attrname, int element, int *valueP)

通过其名称和索引检索整数值属性。

Parameters:
  • model (MDOmodel*) – [in] 模型对象。

  • attrname (const char*) – [in] 属性名称。

  • element (int) – [in] 属性索引。

  • valueP (int*) – [out] 保存属性值的位置。

Returns:

指定函数状态的响应代码。

int MDOsetintattrelement(MDOmodel *model, const char *attrname, int element, int newvalue)

按其名称和索引设置整数值数组属性的单个值。

Parameters:
  • model (MDOmodel*) – [in] 模型对象。

  • attrname (const char*) – [in] 属性名称。

  • element (int) – [in] 属性索引。

  • newvalue (int) – [in] 新的属性值。

Returns:

指定函数状态的响应代码。

int MDOgetintattrarray(MDOmodel *model, const char *attrname, int start, int len, int *values)

按其名称和范围检索整数值数组属性的值。

Parameters:
  • model (MDOmodel*) – [in] 模型对象。

  • attrname (const char*) – [in] 属性名称。

  • start (int) – [in] 范围开始。

  • len (int) – [in] 范围的长度。

  • values (int*) – [out] 保存值的地方。

Returns:

指定函数状态的响应代码。

int MDOsetintattrarray(MDOmodel *model, const char *attrname, int start, int len, int *values)

按其名称和范围设置整数值数组属性的值。

Parameters:
  • model (MDOmodel*) – [in] 模型对象。

  • attrname (const char*) – [in] 属性名称。

  • start (int) – [in] 范围开始。

  • len (int) – [in] 范围的长度。

  • values (int*) – [in] 要保存新值的数组。

Returns:

指定函数状态的响应代码。

int MDOgetintattrlist(MDOmodel *model, const char *attrname, int len, int *ind, int *values)

按名称和索引检索整数值数组属性的值。

Parameters:
  • model (MDOmodel*) – [in] 模型对象。

  • attrname (const char*) – [in] 属性名称。

  • len (int) – [in] ind 的长度。

  • ind (int*) – [in] 要获取值的索引。

  • values (int*) – [out] 保存值的位置。

Returns:

指定函数状态的响应代码。

int MDOsetintattrlist(MDOmodel *model, const char *attrname, int len, int *ind, int *values)

按名称和索引设置整数值数组属性的值。

Parameters:
  • model (MDOmodel*) – [in] 模型对象。

  • attrname (const char*) – [in] 属性名称。

  • len (int) – [in] ‘ind’ 的长度。

  • ind (int*) – [in] 要设置值的索引。

  • values (int*) – [in] 要保存新值的数组。

Returns:

指定函数状态的响应代码。

int MDOgetdblattr(MDOmodel *model, const char *attrname, double *valueP)

通过其名称检索double属性。

Parameters:
  • model (MDOmodel*) – [in] 模型对象。

  • attrname (const char*) – [in] 属性名称。

  • valueP (double*) – [out] 保存属性值的位置。

Returns:

指定函数状态的响应代码。

int MDOsetdblattr(MDOmodel *model, const char *attrname, double newvalue)

按其名称设置double属性。

Parameters:
  • model (MDOmodel*) – [in] 模型对象。

  • attrname (const char*) – [in] 属性名称。

  • newvalue (double) – [in] 新的属性值。

Returns:

指定函数状态的响应代码。

int MDOgetdblattrelement(MDOmodel *model, const char *attrname, int element, double *valueP)

通过其名称和索引检索double属性。

Parameters:
  • model (MDOmodel*) – [in] 模型对象。

  • attrname (const char*) – [in] 属性名称。

  • element (int) – [in] 属性索引。

  • valueP (double*) – [out] 保存属性值的位置。

Returns:

指定函数状态的响应代码。

int MDOsetdblattrelement(MDOmodel *model, const char *attrname, int element, double newvalue)

按名称和索引设置double数组属性中的元素。

Parameters:
  • model (MDOmodel*) – [in] 模型对象。

  • attrname (const char*) – [in] 属性名称。

  • element (int) – [in] 属性索引。

  • newvalue (double) – [in] 新的属性值。

Returns:

指定函数状态的响应代码。

int MDOgetdblattrarray(MDOmodel *model, const char *attrname, int start, int len, double *values)

按其名称和范围检索double数组属性的值。

Parameters:
  • model (MDOmodel*) – [in] 模型对象。

  • attrname (const char*) – [in] 属性名称。

  • start (int) – [in] 范围开始。

  • len (int) – [in] 范围的长度。

  • values (double*) – [out] 保存值的位置。

Returns:

指定函数状态的响应代码。

int MDOsetdblattrarray(MDOmodel *model, const char *attrname, int start, int len, double *values)

按其名称和范围设置double数组属性的值。

Parameters:
  • model (MDOmodel*) – [in] 模型对象。

  • attrname (const char*) – [in] 属性名称。

  • start (int) – [in] 范围开始。

  • len (int) – [in] 范围的长度。

  • values (double*) – [in] 保存新值的数组。

Returns:

指定函数状态的响应代码。

int MDOgetdblattrlist(MDOmodel *model, const char *attrname, int len, int *ind, double *values)

通过其名称和索引检索double数组属性的值。

Parameters:
  • model (MDOmodel*) – [in] 模型对象。

  • attrname (const char*) – [in] 属性名称。

  • len (int) – [in] ind 的长度。

  • ind (int*) – [in] 要获取值的索引。

  • values (double*) – [out] 保存值的位置。

Returns:

指定函数状态的响应代码。

int MDOsetdblattrlist(MDOmodel *model, const char *attrname, int len, int *ind, double *values)

按其名称和索引设置double数组属性的值。

Parameters:
  • model (MDOmodel*) – [in] 模型对象。

  • attrname (const char*) – [in] 属性名称。

  • len (int) – [in] ‘ind’ 的长度。

  • ind (int*) – [in] 要设置值的索引。

  • values (double*) – [in] 保存新值的数组。

Returns:

指定函数状态的响应代码。

int MDOgetcharattrelement(MDOmodel *model, const char *attrname, int element, char *valueP)

通过其名称和索引检索char值属性。

Parameters:
  • model (MDOmodel*) – [in] 模型对象。

  • attrname (const char*) – [in] 属性名称。

  • element (int) – [in] 属性索引。

  • valueP (char*) – [out] 保存属性值的位置。

Returns:

指定函数状态的响应代码。

int MDOsetcharattrelement(MDOmodel *model, const char *attrname, int element, char newvalue)

按名称和索引设置值为char的数组属性中的元素。

Parameters:
  • model (MDOmodel*) – [in] 模型对象。

  • attrname (const char*) – [in] 属性名称。

  • element (int) – [in] 属性索引。

  • newvalue (char) – [in] 新的属性值。

Returns:

指定函数状态的响应代码。

int MDOgetcharattrarray(MDOmodel *model, const char *attrname, int start, int len, char *values)

按名称和范围检索char值数组属性的值。

Parameters:
  • model (MDOmodel*) – [in] 模型对象。

  • attrname (const char*) – [in] 属性名称。

  • start (int) – [in] 范围开始。

  • len (int) – [in] 范围的长度。

  • values (char*) – [out] 保存值的地方。

Returns:

指定函数状态的响应代码。

int MDOsetcharattrarray(MDOmodel *model, const char *attrname, int start, int len, char *values)

按其名称和范围设置char值数组属性的值。

Parameters:
  • model (MDOmodel*) – [in] 模型对象。

  • attrname (const char*) – [in] 属性名称。

  • start (int) – [in] 范围开始。

  • len (int) – [in] 范围的长度。

  • values (char*) – [in] 保存新值的数组。

Returns:

指定函数状态的响应代码。

int MDOgetcharattrlist(MDOmodel *model, const char *attrname, int len, int *ind, char *values)

通过其名称和索引检索char值数组属性的值。

Parameters:
  • model (MDOmodel*) – [in] 模型对象。

  • attrname (const char*) – [in] 属性名称。

  • len (int) – [in] ‘ind’ 的长度。

  • ind (int*) – [in] 要获取值的索引。

  • values (char*) – [out] 保存值的地方。

Returns:

指定函数状态的响应代码。

int MDOsetcharattrlist(MDOmodel *model, const char *attrname, int len, int *ind, char *values)

按名称和索引设置char值数组属性的值。

Parameters:
  • model (MDOmodel*) – [in] 模型对象。

  • attrname (const char*) – [in] 属性名称。

  • len (int) – [in] ind 的长度。

  • ind (int*) – [in] 要设置值的索引。

  • values (char*) – [in] 保存新值的数组。

Returns:

指定函数状态的响应代码。

int MDOgetstrattr(MDOmodel *model, const char *attrname, char **valueP)

按其名称检索字符串值属性。 请注意,所有返回字符串值属性的函数都返回指向内部模型数据结构的指针。

Parameters:
  • model (MDOmodel*) – [in] 模型对象。

  • attrname (const char*) – [in] 属性名称。

  • valueP (char**) – [out] 保存属性值的位置。

Returns:

指定函数状态的响应代码。

int MDOsetstrattr(MDOmodel *model, const char *attrname, const char *newvalue)

按其名称设置字符串值属性。

Parameters:
  • model (MDOmodel*) – [in] 模型对象。

  • attrname (const char*) – [in] 属性名称。

  • newvalue (const char*) – [in] 新的属性值。

Returns:

指定函数状态的响应代码。

int MDOgetstrattrelement(MDOmodel *model, const char *attrname, int element, char **valueP)

通过其名称和索引检索字符串值属性的单个值。 请注意,所有返回字符串值属性的函数都返回指向内部模型数据结构的指针。

Parameters:
  • model (MDOmodel*) – [in] 模型对象。

  • attrname (const char*) – [in] 属性名称。

  • element (int) – [in] 属性索引。

  • valueP (char**) – [out] 保存属性值的位置,每个元素的值都是对模型内部数据的引用。

Returns:

指定函数状态的响应代码。

int MDOsetstrattrelement(MDOmodel *model, const char *attrname, int element, char *newvalue)

按名称和索引设置字符串值数组属性中的单个值。

Parameters:
  • model (MDOmodel*) – [in] 模型对象。

  • attrname (const char*) – [in] 属性名称。

  • element (int) – [in] 属性索引。

  • newvalue (char*) – [in] 新的属性值。

Returns:

指定函数状态的响应代码。

int MDOgetstrattrarray(MDOmodel *model, const char *attrname, int start, int len, char **values)

按名称和范围检索字符串值数组属性的值。 请注意,所有返回字符串值属性的函数都返回指向内部模型数据结构的指针。

Parameters:
  • model (MDOmodel*) – [in] 模型对象。

  • attrname (const char*) – [in] 属性名称。

  • start (int) – [in] 范围开始。

  • len (int) – [in] 范围的长度。

  • values (char**) – [out] 保存值的位置。

Returns:

指定函数状态的响应代码。

int MDOsetstrattrarray(MDOmodel *model, const char *attrname, int start, int len, char **values)

按名称和范围设置字符串值数组属性的值。

Parameters:
  • model (MDOmodel*) – [in] 模型对象。

  • attrname (const char*) – [in] 属性名称。

  • start (int) – [in] 范围开始。

  • len (int) – [in] 范围的长度。

  • values (char**) – [in] 要保存新值的数组。

Returns:

指定函数状态的响应代码。

int MDOgetstrattrlist(MDOmodel *model, const char *attrname, int len, int *ind, char **values)

按名称和索引检索字符串值数组属性的值。 请注意,所有返回字符串值属性的函数都返回指向内部模型数据结构的指针。

Parameters:
  • model (MDOmodel*) – [in] 模型对象。

  • attrname (const char*) – [in] 属性名称。

  • len (int) – [in] ‘ind’ 的长度。

  • ind (int*) – [in] 要获取值的索引。

  • values (char**) – [out] 保存值的位置。

Returns:

指定函数状态的响应代码。

int MDOsetstrattrlist(MDOmodel *model, const char *attrname, int len, int *ind, char **values)

按名称和索引设置字符串值数组属性的值。

Parameters:
  • model (MDOmodel*) – [in] 模型对象。

  • attrname (const char*) – [in] 属性名称。

  • len (int) – [in] ‘ind’ 的长度。

  • ind (int*) – [in] 要设置值的索引。

  • values (char**) – [in] 保存新值的数组。

Returns:

指定函数状态的响应代码。

int MDOgetmatattrelement(MDOmodel *model, const char *attrname, int element, int *nummatnz, int *rows, int *cols, int *indices, double *values)

通过其名称和索引检索矩阵值属性。

Parameters:
  • model (MDOmodel*) – [in] 模型对象。

  • attrname (const char*) – [in] 属性名称。

  • element (int) – [in] 属性索引。

  • nummatnz (int*) – [out] 保存矩阵非零条目数量的位置。

  • rows (int*) – [out] 保存矩阵行数的位置。

  • cols (int*) – [out] 保存矩阵的列数的位置。

  • indices (int*) – [out] 保存矩阵条目索引的位置。

  • values (double*) – [out] 保存矩阵项的值的位置。

Returns:

指定函数状态的响应代码。

int MDOsetmatattrelement(MDOmodel *model, const char *attrname, int element, int nummatnz, int rows, int cols, int *indices, double *values)

按名称和索引设置矩阵值数组属性中的单个值。

Parameters:
  • model (MDOmodel*) – [in] 模型对象。

  • attrname (const char*) – [in] 属性名称。

  • element (int) – [in] 属性索引。

  • nummatnz (int) – [in] 矩阵条目的数量。

  • rows (int) – [in] matrix的行数。

  • cols (int) – [in] matrix的列数。

  • indices (int*) – [in] 矩阵条目的索引。

  • values (double*) – [in] 矩阵项的值。

Returns:

指定函数状态的响应代码。

int MDOgetmatattrarray(MDOmodel *model, const char *attrname, int start, int len, int *nummatnz, int *mbgn, int *rows, int *cols, int *indices, double *values)

按其名称和范围检索矩阵值数组属性的值。

Parameters:
  • model (MDOmodel*) – [in] 模型对象。

  • attrname (const char*) – [in] 属性名称。

  • start (int) – [in] 范围开始。

  • len (int) – [in] 范围的长度。

  • nummatnz (int*) – [out] 矩阵条目的数量。

  • mbgn (int*) – [out] 保存每个元素的起始索引的位置。可以为NULL。

  • rows (int*) – [out] 保存每个矩阵的行数的位置。可以为NULL。

  • cols (int*) – [out] 保存每个矩阵的列数的位置。可以为NULL。

  • indices (int*) – [out] 保存矩阵条目的索引的位置。可以为NULL。

  • values (double*) – [out] 保存矩阵项的值的位置。可以为NULL。

Returns:

指定函数状态的响应代码。

int MDOsetmatattrarray(MDOmodel *model, const char *attrname, int start, int len, int nummatnz, int *mbgn, int *rows, int *cols, int *indices, double *values)

按其名称和范围设置矩阵值数组属性的值。

Parameters:
  • model (MDOmodel*) – [in] 模型对象。

  • attrname (const char*) – [in] 属性名称。

  • start (int) – [in] 范围开始。

  • len (int) – [in] 范围的长度。

  • nummatnz (int) – [in] 矩阵条目的数量。

  • mbgn (int*) – [in] 每个元素的起始索引。

  • rows (int*) – [in] 每个矩阵的行数。

  • cols (int*) – [in] 每个矩阵的列数。

  • indices (int*) – [in] 矩阵条目的索引。

  • values (double*) – [in] 矩阵项的值。

Returns:

指定函数状态的响应代码。

int MDOgetmatattrlist(MDOmodel *model, const char *attrname, int len, int *mind, int *nummatnz, int *mbgn, int *rows, int *cols, int *indices, double *values)

通过其名称和索引检索矩阵值数组属性的值。

Parameters:
  • model (MDOmodel*) – [in] 模型对象。

  • attrname (const char*) – [in] 属性名称。

  • len (int) – [in] mind 的长度。

  • mind (int*) – [in] 要获取值的索引。

  • nummatnz (int*) – [out] 保存矩阵条目数量的位置。

  • mbgn (int*) – [out] 保存每个元素的起始索引的位置。可以为NULL。

  • rows (int*) – [out] 保存每个矩阵的行数的位置。可以为NULL。

  • cols (int*) – [out] 保存每个矩阵的列数的位置。可以为NULL。

  • indices (int*) – [out] 保存矩阵条目的索引的位置。可以为NULL。

  • values (double*) – [out] 保存矩阵项的值的位置。可以为NULL。

Returns:

指定函数状态的响应代码。

int MDOsetmatattrlist(MDOmodel *model, const char *attrname, int len, int *mind, int nummatnz, int *mbgn, int *rows, int *cols, int *indices, double *values)

按其名称和索引设置矩阵值数组属性的值。

Parameters:
  • model (MDOmodel*) – [in] 模型对象。

  • attrname (const char*) – [in] 属性名称。

  • len (int) – [in] “头脑” 的长度。

  • mind (int*) – [in] 要获取值的索引。

  • nummatnz (int) – [in] 矩阵条目的数量。

  • mbgn (int*) – [in] 每个元素的起始索引。

  • rows (int*) – [in] 每个矩阵的行数。

  • cols (int*) – [in] 每个矩阵的列数。

  • indices (int*) – [in] 矩阵条目的索引。

  • values (double*) – [in] 矩阵项的值。

Returns:

指定函数状态的响应代码。