PROP_OUTPUTNAME,
PROP_CUSTOM,
PROP_SUBPLUGINS,
- PROP_ACCELERATOR
+ PROP_ACCELERATOR,
+ PROP_UPDATABLE_MODEL,
};
/**
"list of accelerators determines the backend (ignored with false). "
"Example, if GPU, NPU can be used but not CPU - true:(GPU,NPU,!CPU).",
"", G_PARAM_READWRITE));
+ g_object_class_install_property (gobject_class, PROP_UPDATABLE_MODEL,
+ g_param_spec_string ("is-updatable", "Updatable model",
+ "Indicate whether a given model to this tensor filter is "
+ "updatable in runtime. (e.g., with on-device training)",
+ FALSE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
}
/**
break;
}
+ case PROP_UPDATABLE_MODEL:
+ {
+ priv->updatable_model = g_value_get_boolean (value);
+ break;
+ }
default:
return FALSE;
}
g_value_set_string (value, "");
}
break;
+ case PROP_UPDATABLE_MODEL:
+ g_value_set_boolean (value, priv->updatable_model);
+ break;
default:
/* unknown property */
return FALSE;
/* internal properties for tensor-filter */
gboolean silent; /**< Verbose mode if FALSE. int instead of gboolean for non-glib custom plugins */
gboolean configured; /**< True if already successfully configured tensor metadata */
+ gboolean updatable_model; /**< a given model to the filter is updatable if TRUE */
GstTensorsConfig in_config; /**< input tensor info */
GstTensorsConfig out_config; /**< output tensor info */
} GstTensorFilterPrivate;