You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

36 lines
898 B

#ifndef USMETADATABAG_H
#define USMETADATABAG_H
#include <QObject>
#include <QVariant>
#include "model/ultrasoundModule/metadata/UsBaseMetadata.h"
/*************************************************************************************************/
/**
* @brief This class acts as the holder of all metadata for a given type
* @author Hessamoddin Hediyehloo(H-4nd-H)
* @date 2020/10/04(1399/7/13)
*/
/*************************************************************************************************/
class UsMetadataBag
{
private:
QList<QVariant> _metadataList;
public:
UsMetadataBag();
template<typename T>
void appendMetadata(const QVariant& metadata);
template<typename T>
T getMetadata() const;
template<typename T>
bool hasMetadata() const;
QList<QVariant> getAllMetadata() const;
template<typename T>
void deleteMetadata();
void clear();
};
#endif //USMETADATABAG_H