вам нужно объявить где-нибудь в файле .h
следующее:
Q_DECLARE_METATYPE(MyStruct)
и тогда вы можете просто использовать:
MyStruct s;
QVariant var;
var.setValue(s); // copy s into the variant
// retrieve the value
MyStruct s2 = var.value<MyStruct>();
см. Документы здесь