If the class is not an QObject it is not possible to send the class as an argument to singleShot
The slot may be a private slot thats not a problem but maybe try:
QTimer::singleShot(3000, this, SLOT(DieselSwitchOff_2()));
What version of Qt are you using
Qt3 doesn't have the singleShot function (it uses timer->start(int,bool) the bool is for singleshot)
Qt4 does have it
Bookmarks