Sim, é possível.
O que você precisa fazer é criar um plugin. Isso permitirá que você importe um objeto C ++ (e apenas objetos!) Para o seu namespace QML. Desde que você quer uma função C ++, você terá que fazer um objeto "fictício" com um método que apenas chama a função C ++ que você deseja.
Para fazer isso, você precisará criar duas classes. Uma será uma aula para o objeto fictício mencionado acima. O segundo herdará de QQmlExtensionPlugin
e deverá chamar qmlRegisterType
para a primeira classe.
Esta foi apenas uma visão geral - para mais detalhes, consulte a documentação do Qt . Eu também escrevi e exemplo de um plugin QML para ler um arquivo , que deve estar bem próximo do que você precisa.