diff options
Diffstat (limited to 'lang/qt/src/job_p.h')
-rw-r--r-- | lang/qt/src/job_p.h | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/lang/qt/src/job_p.h b/lang/qt/src/job_p.h index 7d0f9952..43063dd1 100644 --- a/lang/qt/src/job_p.h +++ b/lang/qt/src/job_p.h @@ -56,10 +56,18 @@ public: // BCI: Add a real d-pointer to Job void setJobPrivate(const Job *job, std::unique_ptr<JobPrivate> d); -JobPrivate *getJobPrivate(const Job *job); +const JobPrivate *getJobPrivate(const Job *job); + +JobPrivate *getJobPrivate(Job *job); + +template <typename T> +static const T *jobPrivate(const Job *job) { + auto d = getJobPrivate(job); + return dynamic_cast<const T *>(d); +} template <typename T> -static T *jobPrivate(const Job *job) { +static T *jobPrivate(Job *job) { auto d = getJobPrivate(job); return dynamic_cast<T *>(d); } |