8#ifndef DBE_MODEL_COMMON_INTERFACE_H_
9#define DBE_MODEL_COMMON_INTERFACE_H_
21#define MODEL_COMMON_INTERFACE_UUID_DEF QUuid const uuid;
22#define MODEL_COMMON_INTERFACE_UUID_DECL uuid(QUuid::createUuid())
24#define MODEL_COMMON_TYPES_TOPLEVEL_DEFINITIONS\
25 typedef QModelIndex type_index;\
26 typedef std::vector<type_index> type_indices;\
27 typedef dbe::tref type_object_ref;\
28 typedef dbe::dref type_object_info;\
29 typedef dunedaq::conffwk::class_t type_class_info;\
97 virtual type_object_ref
getobject ( type_index
const & index )
const = 0;
99 virtual type_class_info
getclass ( type_index
const & index )
const = 0;
123 virtual bool delete_objects ( type_indices::iterator, type_indices::iterator ) = 0;
124 virtual bool update_objects ( type_indices::iterator, type_indices::iterator ) = 0;
125 virtual bool create_objects ( type_indices::iterator, type_indices::iterator ) = 0;
160 type_object_info
const & obj ) = 0;
170 type_object_info
const & obj ) = 0;
179 type_object_info
const & obj ) = 0;
187 virtual type_index
lookup ( type_object_info
const & ) = 0;
224 bool update_objects ( type_indices::iterator, type_indices::iterator )
override;
232 bool create_objects ( type_indices::iterator, type_indices::iterator )
override;
void update_multiple_objects(std::vector< type_object_info > const &)
void model_common_connections()
void remove_object(type_object_info const &)
void rename_object(type_object_info const &)
void update_object(type_object_info const &)
MODEL_COMMON_TYPES_TOPLEVEL_DEFINITIONS model_common_async_operations()
void create_object(type_object_info const &)
bool create_objects(type_indices::iterator, type_indices::iterator) override
bool delete_objects(type_indices::iterator, type_indices::iterator) override
bool update_objects(type_indices::iterator, type_indices::iterator) override
virtual void remove_deleted_object(type_index const &index)=0
virtual void rename_contained_object(type_index const &index, type_object_info const &obj)=0
virtual type_index lookup(type_object_info const &)=0
virtual void update_contained_object(type_index const &index, type_object_info const &obj)=0
virtual ~model_common_interface()=default
virtual void create_contained_object(type_index const &index, type_object_info const &obj)=0
virtual void slot_rename_object(QString const &, dref const &)=0
virtual void slot_update_object(QString const &, dref const &)=0
virtual ~model_common_slots()=default
virtual void slot_remove_object(QString const &, dref const &)=0
virtual void slot_create_object(QString const &, dref const &)=0
virtual bool delete_objects(type_indices::iterator, type_indices::iterator)=0
virtual bool create_objects(type_indices::iterator, type_indices::iterator)=0
virtual ~model_initiate_actions_interface()=default
virtual bool update_objects(type_indices::iterator, type_indices::iterator)=0
#define MODEL_COMMON_TYPES_TOPLEVEL_DEFINITIONS
#define MODEL_COMMON_INTERFACE_UUID_DEF
virtual ~model_common_data_access_interface()=default
virtual type_class_info getclass(type_index const &index) const =0
virtual type_object_ref getobject(type_index const &index) const =0
virtual QAbstractItemModel * ReturnSourceModel() const =0