Skip to content

OpAttrDef

功能说明

定义算子属性。

函数原型

Text
class OpAttrDef {
public:
  explicit OpAttrDef(const char *name);
  OpAttrDef(const OpAttrDef &attr_def);
  ~OpAttrDef();
  OpAttrDef &operator=(const OpAttrDef &attr_def);
  OpAttrDef &AttrType(Option attr_type);
  OpAttrDef &Bool(void);
  OpAttrDef &Bool(bool value);
  OpAttrDef &Float(void);
  OpAttrDef &Float(float value);
  OpAttrDef &Int(void);
  OpAttrDef &Int(int64_t value);
  OpAttrDef &String(void);
  OpAttrDef &String(const char *value);
  OpAttrDef &ListBool(void);
  OpAttrDef &ListBool(std::vector<bool> value);
  OpAttrDef &ListFloat(void);
  OpAttrDef &ListFloat(std::vector<float> value);
  OpAttrDef &ListInt(void);
  OpAttrDef &ListInt(std::vector<int64_t> value);
  OpAttrDef &ListListInt(void);
  OpAttrDef &ListListInt(std::vector<std::vector<int64_t>> value);
  OpAttrDef &Version(uint32_t version);
  ge::AscendString &GetName(void) const;
  bool IsRequired(void);
private:
  ...
};

函数说明

表1 OpAttrDef类成员函数说明

函数名称入参说明功能说明
OpAttrDefname: 算子属性名称。构造算子属性定义OpAttrDef,并设置属性名称。
OpAttrDefattr_def: 已构造完成的算子属性OpAttrDef。拷贝构造OpAttrDef,复制被拷贝对象的属性名称、属性数据类型、属性类型、默认值、版本号和注释等配置。
AttrTypeattr_type: 属性类型设置算子属性类型,取值为:OPTIONAL(可选)、REQUIRED(必选)。
Bool设置算子属性数据类型为Bool
Boolvalue设置算子属性数据类型为Bool,并设置属性默认值为value。属性类型设置为OPTIONAL时必须调用该类接口设置默认值。
Float设置算子属性数据类型为Float
Floatvalue设置算子属性数据类型为Float,并设置属性默认值为value。属性类型设置为OPTIONAL时必须调用该类接口设置默认值。
Int设置算子属性数据类型为Int
Intvalue设置算子属性数据类型为Int,并设置属性默认值为value。属性类型设置为OPTIONAL时必须调用该类接口设置默认值。
String设置算子属性数据类型为String
Stringvalue设置算子属性数据类型为String,并设置属性默认值为value。属性类型设置为OPTIONAL时必须调用该类接口设置默认值。
ListBool设置算子属性数据类型为ListBool
ListBoolvalue设置算子属性数据类型为ListBool,并设置属性默认值为value。属性类型设置为OPTIONAL时必须调用该类接口设置默认值。
ListFloat设置算子属性数据类型为ListFloat
ListFloatvalue设置算子属性数据类型为ListFloat,并设置属性默认值为value。属性类型设置为OPTIONAL时必须调用该类接口设置默认值。
ListInt设置算子属性数据类型为ListInt
ListIntvalue设置算子属性数据类型为ListInt,并设置属性默认值为value。属性类型设置为OPTIONAL时必须调用该类接口设置默认值。
ListListInt设置算子属性数据类型为ListListInt
ListListIntvalue设置算子属性数据类型为ListListInt,并设置属性默认值为value。属性类型设置为OPTIONAL时必须调用该类接口设置默认值。
Versionversion:配置的版本号新增可选属性时,为了保持原有单算子API(aclnnxxx)接口的兼容性,可以通过Version接口配置aclnn接口的版本号,版本号需要从1开始配,且应该连续配置(和可选输入统一编号)。配置后,自动生成的aclnn接口会携带版本号。高版本号的接口会包含低版本号接口的所有参数。
GetName获取属性名称。
IsRequired判断算子属性是否为必选,必选返回true,可选返回false。

免责声明:本站内容由 asc-devkit 仓 master 分支自动编译生成,属于持续开发版本,可能存在缺陷,仅供预览与参考。如需稳定及商用资料,请查阅官方 昇腾社区