123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308 |
- /****************************************************************************
- **
- ** Copyright (C) 2016 The Qt Company Ltd.
- ** Contact: https://www.qt.io/licensing/
- **
- ** This file is part of the QtCore module of the Qt Toolkit.
- **
- ** $QT_BEGIN_LICENSE:LGPL$
- ** Commercial License Usage
- ** Licensees holding valid commercial Qt licenses may use this file in
- ** accordance with the commercial license agreement provided with the
- ** Software or, alternatively, in accordance with the terms contained in
- ** a written agreement between you and The Qt Company. For licensing terms
- ** and conditions see https://www.qt.io/terms-conditions. For further
- ** information use the contact form at https://www.qt.io/contact-us.
- **
- ** GNU Lesser General Public License Usage
- ** Alternatively, this file may be used under the terms of the GNU Lesser
- ** General Public License version 3 as published by the Free Software
- ** Foundation and appearing in the file LICENSE.LGPL3 included in the
- ** packaging of this file. Please review the following information to
- ** ensure the GNU Lesser General Public License version 3 requirements
- ** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
- **
- ** GNU General Public License Usage
- ** Alternatively, this file may be used under the terms of the GNU
- ** General Public License version 2.0 or (at your option) the GNU General
- ** Public license version 3 or any later version approved by the KDE Free
- ** Qt Foundation. The licenses are as published by the Free Software
- ** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
- ** included in the packaging of this file. Please review the following
- ** information to ensure the GNU General Public License requirements will
- ** be met: https://www.gnu.org/licenses/gpl-2.0.html and
- ** https://www.gnu.org/licenses/gpl-3.0.html.
- **
- ** $QT_END_LICENSE$
- **
- ****************************************************************************/
- // Generated code, do not edit! Use generator at tools/qtconcurrent/generaterun/
- #ifndef QTCONCURRENT_STOREDFUNCTIONCALL_H
- #define QTCONCURRENT_STOREDFUNCTIONCALL_H
- #include <QtConcurrent/qtconcurrent_global.h>
- #ifndef QT_NO_CONCURRENT
- #include <QtConcurrent/qtconcurrentrunbase.h>
- QT_BEGIN_NAMESPACE
- #ifndef Q_QDOC
- namespace QtConcurrent {
- template <typename T, typename FunctionPointer>
- struct StoredFunctorCall0: public RunFunctionTask<T>
- {
- inline StoredFunctorCall0(FunctionPointer _function)
- : function(_function) {}
- void runFunctor() { this->result = function(); }
- FunctionPointer function;
- };
- template <typename FunctionPointer>
- struct StoredFunctorCall0<void, FunctionPointer>: public RunFunctionTask<void>
- {
- inline StoredFunctorCall0(FunctionPointer _function)
- : function(_function) {}
- void runFunctor() { function(); }
- FunctionPointer function;
- };
- template <typename T, typename FunctionPointer>
- struct StoredFunctorPointerCall0: public RunFunctionTask<T>
- {
- inline StoredFunctorPointerCall0(FunctionPointer * _function)
- : function(_function) {}
- void runFunctor() { this->result =(*function)(); }
- FunctionPointer * function;
- };
- template <typename T, typename FunctionPointer>
- struct VoidStoredFunctorPointerCall0: public RunFunctionTask<T>
- {
- inline VoidStoredFunctorPointerCall0(FunctionPointer * _function)
- : function(_function) {}
- void runFunctor() {(*function)(); }
- FunctionPointer * function;
- };
- template <typename T, typename FunctionPointer>
- struct SelectStoredFunctorPointerCall0
- {
- typedef typename SelectSpecialization<T>::template
- Type<StoredFunctorPointerCall0 <T, FunctionPointer>,
- VoidStoredFunctorPointerCall0<T, FunctionPointer> >::type type;
- };
- template <typename T, typename Class>
- class StoredMemberFunctionCall0 : public RunFunctionTask<T>
- {
- public:
- StoredMemberFunctionCall0(T (Class::*_fn)() , const Class &_object)
- : fn(_fn), object(_object){ }
- void runFunctor()
- {
- this->result = (object.*fn)();
- }
- private:
- T (Class::*fn)();
- Class object;
- };
- template <typename T, typename Class>
- class VoidStoredMemberFunctionCall0 : public RunFunctionTask<T>
- {
- public:
- VoidStoredMemberFunctionCall0(T (Class::*_fn)() , const Class &_object)
- : fn(_fn), object(_object){ }
- void runFunctor()
- {
- (object.*fn)();
- }
- private:
- T (Class::*fn)();
- Class object;
- };
- template <typename T, typename Class>
- struct SelectStoredMemberFunctionCall0
- {
- typedef typename SelectSpecialization<T>::template
- Type<StoredMemberFunctionCall0 <T, Class>,
- VoidStoredMemberFunctionCall0<T, Class> >::type type;
- };
- template <typename T, typename Class>
- class StoredConstMemberFunctionCall0 : public RunFunctionTask<T>
- {
- public:
- StoredConstMemberFunctionCall0(T (Class::*_fn)() const, const Class &_object)
- : fn(_fn), object(_object){ }
- void runFunctor()
- {
- this->result = (object.*fn)();
- }
- private:
- T (Class::*fn)()const;
- const Class object;
- };
- template <typename T, typename Class>
- class VoidStoredConstMemberFunctionCall0 : public RunFunctionTask<T>
- {
- public:
- VoidStoredConstMemberFunctionCall0(T (Class::*_fn)() const, const Class &_object)
- : fn(_fn), object(_object){ }
- void runFunctor()
- {
- (object.*fn)();
- }
- private:
- T (Class::*fn)()const;
- const Class object;
- };
- template <typename T, typename Class>
- struct SelectStoredConstMemberFunctionCall0
- {
- typedef typename SelectSpecialization<T>::template
- Type<StoredConstMemberFunctionCall0 <T, Class>,
- VoidStoredConstMemberFunctionCall0<T, Class> >::type type;
- };
- template <typename T, typename Class>
- class StoredMemberFunctionPointerCall0 : public RunFunctionTask<T>
- {
- public:
- StoredMemberFunctionPointerCall0(T (Class::*_fn)() , Class *_object)
- : fn(_fn), object(_object){ }
- void runFunctor()
- {
- this->result = (object->*fn)();
- }
- private:
- T (Class::*fn)();
- Class *object;
- };
- template <typename T, typename Class>
- class VoidStoredMemberFunctionPointerCall0 : public RunFunctionTask<T>
- {
- public:
- VoidStoredMemberFunctionPointerCall0(T (Class::*_fn)() , Class *_object)
- : fn(_fn), object(_object){ }
- void runFunctor()
- {
- (object->*fn)();
- }
- private:
- T (Class::*fn)();
- Class *object;
- };
- template <typename T, typename Class>
- struct SelectStoredMemberFunctionPointerCall0
- {
- typedef typename SelectSpecialization<T>::template
- Type<StoredMemberFunctionPointerCall0 <T, Class>,
- VoidStoredMemberFunctionPointerCall0<T, Class> >::type type;
- };
- template <typename T, typename Class>
- class StoredConstMemberFunctionPointerCall0 : public RunFunctionTask<T>
- {
- public:
- StoredConstMemberFunctionPointerCall0(T (Class::*_fn)() const, Class const *_object)
- : fn(_fn), object(_object){ }
- void runFunctor()
- {
- this->result = (object->*fn)();
- }
- private:
- T (Class::*fn)()const;
- Class const *object;
- };
- template <typename T, typename Class>
- class VoidStoredConstMemberFunctionPointerCall0 : public RunFunctionTask<T>
- {
- public:
- VoidStoredConstMemberFunctionPointerCall0(T (Class::*_fn)() const, Class const *_object)
- : fn(_fn), object(_object){ }
- void runFunctor()
- {
- (object->*fn)();
- }
- private:
- T (Class::*fn)()const;
- Class const *object;
- };
- template <typename T, typename Class>
- struct SelectStoredConstMemberFunctionPointerCall0
- {
- typedef typename SelectSpecialization<T>::template
- Type<StoredConstMemberFunctionPointerCall0 <T, Class>,
- VoidStoredConstMemberFunctionPointerCall0<T, Class> >::type type;
- };
- template <typename T, typename FunctionPointer, typename Arg1>
- struct StoredFunctorCall1: public RunFunctionTask<T>
- {
- inline StoredFunctorCall1(FunctionPointer _function, const Arg1 &_arg1)
- : function(_function), arg1(_arg1) {}
- void runFunctor() { this->result = function(arg1); }
- FunctionPointer function;
- Arg1 arg1;
- };
- template <typename FunctionPointer, typename Arg1>
- struct StoredFunctorCall1<void, FunctionPointer, Arg1>: public RunFunctionTask<void>
- {
- inline StoredFunctorCall1(FunctionPointer _function, const Arg1 &_arg1)
- : function(_function), arg1(_arg1) {}
- void runFunctor() { function(arg1); }
- FunctionPointer function;
- Arg1 arg1;
- };
- template <typename T, typename FunctionPointer, typename Arg1>
- struct StoredFunctorPointerCall1: public RunFunctionTask<T>
- {
- inline StoredFunctorPointerCall1(FunctionPointer * _function, const Arg1 &_arg1)
- : function(_function), arg1(_arg1) {}
- void runFunctor() { this->result =(*function)(arg1); }
- FunctionPointer * function;
- Arg1 arg1;
- };
- template <typename T, typename FunctionPointer, typename Arg1>
- struct VoidStoredFunctorPointerCall1: public RunFunctionTask<T>
- {
- inline VoidStoredFunctorPointerCall1(FunctionPointer * _function, const Arg1 &_arg1)
- : function(_function), arg1(_arg1) {}
- void runFunctor() {(*function)(arg1); }
- FunctionPointer * function;
- Arg1 arg1;
- };
- template <typename T, typename FunctionPointer, typename Arg1>
- struct SelectStoredFunctorPointerCall1
- {
- typedef typename SelectSpecialization<T>::template
- Type<StoredFunctorPointerCall1 <T, FunctionPointer, Arg1>,
- VoidStoredFunctorPointerCall1<T, FunctionPointer, Arg1> >::type type;
- };
- template <typename T, typename Class, typename Param1, typename Arg1>
- class StoredMemberFunctionCall1 : public RunFunctionTask<T>
- {
- public:
- StoredMemberFunctionCall1(T (Class::*_fn)(Param1) , const Class &_object, const Arg1 &_arg1)
- : fn(_fn), object(_object), arg1(_arg1){ }
- void runFunctor()
- {
- this->result = (object.*fn)(arg1);
- }
- private:
- T (Class::*fn)(Param1);
- Class object;
- Arg1 arg1;
- };
- template <typename T, typename Class, typename Param1, typename Arg1>
- class VoidStoredMemberFunctionCall1 : public RunFunctionTask<T>
- {
- public:
- VoidStoredMemberFunctionCall1(T (Class::*_fn)(Param1) , const Class &_object, const Arg1 &_arg1)
- : fn(_fn), object(_object), arg1(_arg1){ }
- void runFunctor()
- {
- (object.*fn)(arg1);
- }
- private:
- T (Class::*fn)(Param1);
- Class object;
- Arg1 arg1;
- };
- template <typename T, typename Class, typename Param1, typename Arg1>
- struct SelectStoredMemberFunctionCall1
- {
- typedef typename SelectSpecialization<T>::template
- Type<StoredMemberFunctionCall1 <T, Class, Param1, Arg1>,
- VoidStoredMemberFunctionCall1<T, Class, Param1, Arg1> >::type type;
- };
- template <typename T, typename Class, typename Param1, typename Arg1>
- class StoredConstMemberFunctionCall1 : public RunFunctionTask<T>
- {
- public:
- StoredConstMemberFunctionCall1(T (Class::*_fn)(Param1) const, const Class &_object, const Arg1 &_arg1)
- : fn(_fn), object(_object), arg1(_arg1){ }
- void runFunctor()
- {
- this->result = (object.*fn)(arg1);
- }
- private:
- T (Class::*fn)(Param1)const;
- const Class object;
- Arg1 arg1;
- };
- template <typename T, typename Class, typename Param1, typename Arg1>
- class VoidStoredConstMemberFunctionCall1 : public RunFunctionTask<T>
- {
- public:
- VoidStoredConstMemberFunctionCall1(T (Class::*_fn)(Param1) const, const Class &_object, const Arg1 &_arg1)
- : fn(_fn), object(_object), arg1(_arg1){ }
- void runFunctor()
- {
- (object.*fn)(arg1);
- }
- private:
- T (Class::*fn)(Param1)const;
- const Class object;
- Arg1 arg1;
- };
- template <typename T, typename Class, typename Param1, typename Arg1>
- struct SelectStoredConstMemberFunctionCall1
- {
- typedef typename SelectSpecialization<T>::template
- Type<StoredConstMemberFunctionCall1 <T, Class, Param1, Arg1>,
- VoidStoredConstMemberFunctionCall1<T, Class, Param1, Arg1> >::type type;
- };
- template <typename T, typename Class, typename Param1, typename Arg1>
- class StoredMemberFunctionPointerCall1 : public RunFunctionTask<T>
- {
- public:
- StoredMemberFunctionPointerCall1(T (Class::*_fn)(Param1) , Class *_object, const Arg1 &_arg1)
- : fn(_fn), object(_object), arg1(_arg1){ }
- void runFunctor()
- {
- this->result = (object->*fn)(arg1);
- }
- private:
- T (Class::*fn)(Param1);
- Class *object;
- Arg1 arg1;
- };
- template <typename T, typename Class, typename Param1, typename Arg1>
- class VoidStoredMemberFunctionPointerCall1 : public RunFunctionTask<T>
- {
- public:
- VoidStoredMemberFunctionPointerCall1(T (Class::*_fn)(Param1) , Class *_object, const Arg1 &_arg1)
- : fn(_fn), object(_object), arg1(_arg1){ }
- void runFunctor()
- {
- (object->*fn)(arg1);
- }
- private:
- T (Class::*fn)(Param1);
- Class *object;
- Arg1 arg1;
- };
- template <typename T, typename Class, typename Param1, typename Arg1>
- struct SelectStoredMemberFunctionPointerCall1
- {
- typedef typename SelectSpecialization<T>::template
- Type<StoredMemberFunctionPointerCall1 <T, Class, Param1, Arg1>,
- VoidStoredMemberFunctionPointerCall1<T, Class, Param1, Arg1> >::type type;
- };
- template <typename T, typename Class, typename Param1, typename Arg1>
- class StoredConstMemberFunctionPointerCall1 : public RunFunctionTask<T>
- {
- public:
- StoredConstMemberFunctionPointerCall1(T (Class::*_fn)(Param1) const, Class const *_object, const Arg1 &_arg1)
- : fn(_fn), object(_object), arg1(_arg1){ }
- void runFunctor()
- {
- this->result = (object->*fn)(arg1);
- }
- private:
- T (Class::*fn)(Param1)const;
- Class const *object;
- Arg1 arg1;
- };
- template <typename T, typename Class, typename Param1, typename Arg1>
- class VoidStoredConstMemberFunctionPointerCall1 : public RunFunctionTask<T>
- {
- public:
- VoidStoredConstMemberFunctionPointerCall1(T (Class::*_fn)(Param1) const, Class const *_object, const Arg1 &_arg1)
- : fn(_fn), object(_object), arg1(_arg1){ }
- void runFunctor()
- {
- (object->*fn)(arg1);
- }
- private:
- T (Class::*fn)(Param1)const;
- Class const *object;
- Arg1 arg1;
- };
- template <typename T, typename Class, typename Param1, typename Arg1>
- struct SelectStoredConstMemberFunctionPointerCall1
- {
- typedef typename SelectSpecialization<T>::template
- Type<StoredConstMemberFunctionPointerCall1 <T, Class, Param1, Arg1>,
- VoidStoredConstMemberFunctionPointerCall1<T, Class, Param1, Arg1> >::type type;
- };
- template <typename T, typename FunctionPointer, typename Arg1, typename Arg2>
- struct StoredFunctorCall2: public RunFunctionTask<T>
- {
- inline StoredFunctorCall2(FunctionPointer _function, const Arg1 &_arg1, const Arg2 &_arg2)
- : function(_function), arg1(_arg1), arg2(_arg2) {}
- void runFunctor() { this->result = function(arg1, arg2); }
- FunctionPointer function;
- Arg1 arg1; Arg2 arg2;
- };
- template <typename FunctionPointer, typename Arg1, typename Arg2>
- struct StoredFunctorCall2<void, FunctionPointer, Arg1, Arg2>: public RunFunctionTask<void>
- {
- inline StoredFunctorCall2(FunctionPointer _function, const Arg1 &_arg1, const Arg2 &_arg2)
- : function(_function), arg1(_arg1), arg2(_arg2) {}
- void runFunctor() { function(arg1, arg2); }
- FunctionPointer function;
- Arg1 arg1; Arg2 arg2;
- };
- template <typename T, typename FunctionPointer, typename Arg1, typename Arg2>
- struct StoredFunctorPointerCall2: public RunFunctionTask<T>
- {
- inline StoredFunctorPointerCall2(FunctionPointer * _function, const Arg1 &_arg1, const Arg2 &_arg2)
- : function(_function), arg1(_arg1), arg2(_arg2) {}
- void runFunctor() { this->result =(*function)(arg1, arg2); }
- FunctionPointer * function;
- Arg1 arg1; Arg2 arg2;
- };
- template <typename T, typename FunctionPointer, typename Arg1, typename Arg2>
- struct VoidStoredFunctorPointerCall2: public RunFunctionTask<T>
- {
- inline VoidStoredFunctorPointerCall2(FunctionPointer * _function, const Arg1 &_arg1, const Arg2 &_arg2)
- : function(_function), arg1(_arg1), arg2(_arg2) {}
- void runFunctor() {(*function)(arg1, arg2); }
- FunctionPointer * function;
- Arg1 arg1; Arg2 arg2;
- };
- template <typename T, typename FunctionPointer, typename Arg1, typename Arg2>
- struct SelectStoredFunctorPointerCall2
- {
- typedef typename SelectSpecialization<T>::template
- Type<StoredFunctorPointerCall2 <T, FunctionPointer, Arg1, Arg2>,
- VoidStoredFunctorPointerCall2<T, FunctionPointer, Arg1, Arg2> >::type type;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2>
- class StoredMemberFunctionCall2 : public RunFunctionTask<T>
- {
- public:
- StoredMemberFunctionCall2(T (Class::*_fn)(Param1, Param2) , const Class &_object, const Arg1 &_arg1, const Arg2 &_arg2)
- : fn(_fn), object(_object), arg1(_arg1), arg2(_arg2){ }
- void runFunctor()
- {
- this->result = (object.*fn)(arg1, arg2);
- }
- private:
- T (Class::*fn)(Param1, Param2);
- Class object;
- Arg1 arg1; Arg2 arg2;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2>
- class VoidStoredMemberFunctionCall2 : public RunFunctionTask<T>
- {
- public:
- VoidStoredMemberFunctionCall2(T (Class::*_fn)(Param1, Param2) , const Class &_object, const Arg1 &_arg1, const Arg2 &_arg2)
- : fn(_fn), object(_object), arg1(_arg1), arg2(_arg2){ }
- void runFunctor()
- {
- (object.*fn)(arg1, arg2);
- }
- private:
- T (Class::*fn)(Param1, Param2);
- Class object;
- Arg1 arg1; Arg2 arg2;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2>
- struct SelectStoredMemberFunctionCall2
- {
- typedef typename SelectSpecialization<T>::template
- Type<StoredMemberFunctionCall2 <T, Class, Param1, Arg1, Param2, Arg2>,
- VoidStoredMemberFunctionCall2<T, Class, Param1, Arg1, Param2, Arg2> >::type type;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2>
- class StoredConstMemberFunctionCall2 : public RunFunctionTask<T>
- {
- public:
- StoredConstMemberFunctionCall2(T (Class::*_fn)(Param1, Param2) const, const Class &_object, const Arg1 &_arg1, const Arg2 &_arg2)
- : fn(_fn), object(_object), arg1(_arg1), arg2(_arg2){ }
- void runFunctor()
- {
- this->result = (object.*fn)(arg1, arg2);
- }
- private:
- T (Class::*fn)(Param1, Param2)const;
- const Class object;
- Arg1 arg1; Arg2 arg2;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2>
- class VoidStoredConstMemberFunctionCall2 : public RunFunctionTask<T>
- {
- public:
- VoidStoredConstMemberFunctionCall2(T (Class::*_fn)(Param1, Param2) const, const Class &_object, const Arg1 &_arg1, const Arg2 &_arg2)
- : fn(_fn), object(_object), arg1(_arg1), arg2(_arg2){ }
- void runFunctor()
- {
- (object.*fn)(arg1, arg2);
- }
- private:
- T (Class::*fn)(Param1, Param2)const;
- const Class object;
- Arg1 arg1; Arg2 arg2;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2>
- struct SelectStoredConstMemberFunctionCall2
- {
- typedef typename SelectSpecialization<T>::template
- Type<StoredConstMemberFunctionCall2 <T, Class, Param1, Arg1, Param2, Arg2>,
- VoidStoredConstMemberFunctionCall2<T, Class, Param1, Arg1, Param2, Arg2> >::type type;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2>
- class StoredMemberFunctionPointerCall2 : public RunFunctionTask<T>
- {
- public:
- StoredMemberFunctionPointerCall2(T (Class::*_fn)(Param1, Param2) , Class *_object, const Arg1 &_arg1, const Arg2 &_arg2)
- : fn(_fn), object(_object), arg1(_arg1), arg2(_arg2){ }
- void runFunctor()
- {
- this->result = (object->*fn)(arg1, arg2);
- }
- private:
- T (Class::*fn)(Param1, Param2);
- Class *object;
- Arg1 arg1; Arg2 arg2;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2>
- class VoidStoredMemberFunctionPointerCall2 : public RunFunctionTask<T>
- {
- public:
- VoidStoredMemberFunctionPointerCall2(T (Class::*_fn)(Param1, Param2) , Class *_object, const Arg1 &_arg1, const Arg2 &_arg2)
- : fn(_fn), object(_object), arg1(_arg1), arg2(_arg2){ }
- void runFunctor()
- {
- (object->*fn)(arg1, arg2);
- }
- private:
- T (Class::*fn)(Param1, Param2);
- Class *object;
- Arg1 arg1; Arg2 arg2;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2>
- struct SelectStoredMemberFunctionPointerCall2
- {
- typedef typename SelectSpecialization<T>::template
- Type<StoredMemberFunctionPointerCall2 <T, Class, Param1, Arg1, Param2, Arg2>,
- VoidStoredMemberFunctionPointerCall2<T, Class, Param1, Arg1, Param2, Arg2> >::type type;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2>
- class StoredConstMemberFunctionPointerCall2 : public RunFunctionTask<T>
- {
- public:
- StoredConstMemberFunctionPointerCall2(T (Class::*_fn)(Param1, Param2) const, Class const *_object, const Arg1 &_arg1, const Arg2 &_arg2)
- : fn(_fn), object(_object), arg1(_arg1), arg2(_arg2){ }
- void runFunctor()
- {
- this->result = (object->*fn)(arg1, arg2);
- }
- private:
- T (Class::*fn)(Param1, Param2)const;
- Class const *object;
- Arg1 arg1; Arg2 arg2;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2>
- class VoidStoredConstMemberFunctionPointerCall2 : public RunFunctionTask<T>
- {
- public:
- VoidStoredConstMemberFunctionPointerCall2(T (Class::*_fn)(Param1, Param2) const, Class const *_object, const Arg1 &_arg1, const Arg2 &_arg2)
- : fn(_fn), object(_object), arg1(_arg1), arg2(_arg2){ }
- void runFunctor()
- {
- (object->*fn)(arg1, arg2);
- }
- private:
- T (Class::*fn)(Param1, Param2)const;
- Class const *object;
- Arg1 arg1; Arg2 arg2;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2>
- struct SelectStoredConstMemberFunctionPointerCall2
- {
- typedef typename SelectSpecialization<T>::template
- Type<StoredConstMemberFunctionPointerCall2 <T, Class, Param1, Arg1, Param2, Arg2>,
- VoidStoredConstMemberFunctionPointerCall2<T, Class, Param1, Arg1, Param2, Arg2> >::type type;
- };
- template <typename T, typename FunctionPointer, typename Arg1, typename Arg2, typename Arg3>
- struct StoredFunctorCall3: public RunFunctionTask<T>
- {
- inline StoredFunctorCall3(FunctionPointer _function, const Arg1 &_arg1, const Arg2 &_arg2, const Arg3 &_arg3)
- : function(_function), arg1(_arg1), arg2(_arg2), arg3(_arg3) {}
- void runFunctor() { this->result = function(arg1, arg2, arg3); }
- FunctionPointer function;
- Arg1 arg1; Arg2 arg2; Arg3 arg3;
- };
- template <typename FunctionPointer, typename Arg1, typename Arg2, typename Arg3>
- struct StoredFunctorCall3<void, FunctionPointer, Arg1, Arg2, Arg3>: public RunFunctionTask<void>
- {
- inline StoredFunctorCall3(FunctionPointer _function, const Arg1 &_arg1, const Arg2 &_arg2, const Arg3 &_arg3)
- : function(_function), arg1(_arg1), arg2(_arg2), arg3(_arg3) {}
- void runFunctor() { function(arg1, arg2, arg3); }
- FunctionPointer function;
- Arg1 arg1; Arg2 arg2; Arg3 arg3;
- };
- template <typename T, typename FunctionPointer, typename Arg1, typename Arg2, typename Arg3>
- struct StoredFunctorPointerCall3: public RunFunctionTask<T>
- {
- inline StoredFunctorPointerCall3(FunctionPointer * _function, const Arg1 &_arg1, const Arg2 &_arg2, const Arg3 &_arg3)
- : function(_function), arg1(_arg1), arg2(_arg2), arg3(_arg3) {}
- void runFunctor() { this->result =(*function)(arg1, arg2, arg3); }
- FunctionPointer * function;
- Arg1 arg1; Arg2 arg2; Arg3 arg3;
- };
- template <typename T, typename FunctionPointer, typename Arg1, typename Arg2, typename Arg3>
- struct VoidStoredFunctorPointerCall3: public RunFunctionTask<T>
- {
- inline VoidStoredFunctorPointerCall3(FunctionPointer * _function, const Arg1 &_arg1, const Arg2 &_arg2, const Arg3 &_arg3)
- : function(_function), arg1(_arg1), arg2(_arg2), arg3(_arg3) {}
- void runFunctor() {(*function)(arg1, arg2, arg3); }
- FunctionPointer * function;
- Arg1 arg1; Arg2 arg2; Arg3 arg3;
- };
- template <typename T, typename FunctionPointer, typename Arg1, typename Arg2, typename Arg3>
- struct SelectStoredFunctorPointerCall3
- {
- typedef typename SelectSpecialization<T>::template
- Type<StoredFunctorPointerCall3 <T, FunctionPointer, Arg1, Arg2, Arg3>,
- VoidStoredFunctorPointerCall3<T, FunctionPointer, Arg1, Arg2, Arg3> >::type type;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2, typename Param3, typename Arg3>
- class StoredMemberFunctionCall3 : public RunFunctionTask<T>
- {
- public:
- StoredMemberFunctionCall3(T (Class::*_fn)(Param1, Param2, Param3) , const Class &_object, const Arg1 &_arg1, const Arg2 &_arg2, const Arg3 &_arg3)
- : fn(_fn), object(_object), arg1(_arg1), arg2(_arg2), arg3(_arg3){ }
- void runFunctor()
- {
- this->result = (object.*fn)(arg1, arg2, arg3);
- }
- private:
- T (Class::*fn)(Param1, Param2, Param3);
- Class object;
- Arg1 arg1; Arg2 arg2; Arg3 arg3;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2, typename Param3, typename Arg3>
- class VoidStoredMemberFunctionCall3 : public RunFunctionTask<T>
- {
- public:
- VoidStoredMemberFunctionCall3(T (Class::*_fn)(Param1, Param2, Param3) , const Class &_object, const Arg1 &_arg1, const Arg2 &_arg2, const Arg3 &_arg3)
- : fn(_fn), object(_object), arg1(_arg1), arg2(_arg2), arg3(_arg3){ }
- void runFunctor()
- {
- (object.*fn)(arg1, arg2, arg3);
- }
- private:
- T (Class::*fn)(Param1, Param2, Param3);
- Class object;
- Arg1 arg1; Arg2 arg2; Arg3 arg3;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2, typename Param3, typename Arg3>
- struct SelectStoredMemberFunctionCall3
- {
- typedef typename SelectSpecialization<T>::template
- Type<StoredMemberFunctionCall3 <T, Class, Param1, Arg1, Param2, Arg2, Param3, Arg3>,
- VoidStoredMemberFunctionCall3<T, Class, Param1, Arg1, Param2, Arg2, Param3, Arg3> >::type type;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2, typename Param3, typename Arg3>
- class StoredConstMemberFunctionCall3 : public RunFunctionTask<T>
- {
- public:
- StoredConstMemberFunctionCall3(T (Class::*_fn)(Param1, Param2, Param3) const, const Class &_object, const Arg1 &_arg1, const Arg2 &_arg2, const Arg3 &_arg3)
- : fn(_fn), object(_object), arg1(_arg1), arg2(_arg2), arg3(_arg3){ }
- void runFunctor()
- {
- this->result = (object.*fn)(arg1, arg2, arg3);
- }
- private:
- T (Class::*fn)(Param1, Param2, Param3)const;
- const Class object;
- Arg1 arg1; Arg2 arg2; Arg3 arg3;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2, typename Param3, typename Arg3>
- class VoidStoredConstMemberFunctionCall3 : public RunFunctionTask<T>
- {
- public:
- VoidStoredConstMemberFunctionCall3(T (Class::*_fn)(Param1, Param2, Param3) const, const Class &_object, const Arg1 &_arg1, const Arg2 &_arg2, const Arg3 &_arg3)
- : fn(_fn), object(_object), arg1(_arg1), arg2(_arg2), arg3(_arg3){ }
- void runFunctor()
- {
- (object.*fn)(arg1, arg2, arg3);
- }
- private:
- T (Class::*fn)(Param1, Param2, Param3)const;
- const Class object;
- Arg1 arg1; Arg2 arg2; Arg3 arg3;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2, typename Param3, typename Arg3>
- struct SelectStoredConstMemberFunctionCall3
- {
- typedef typename SelectSpecialization<T>::template
- Type<StoredConstMemberFunctionCall3 <T, Class, Param1, Arg1, Param2, Arg2, Param3, Arg3>,
- VoidStoredConstMemberFunctionCall3<T, Class, Param1, Arg1, Param2, Arg2, Param3, Arg3> >::type type;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2, typename Param3, typename Arg3>
- class StoredMemberFunctionPointerCall3 : public RunFunctionTask<T>
- {
- public:
- StoredMemberFunctionPointerCall3(T (Class::*_fn)(Param1, Param2, Param3) , Class *_object, const Arg1 &_arg1, const Arg2 &_arg2, const Arg3 &_arg3)
- : fn(_fn), object(_object), arg1(_arg1), arg2(_arg2), arg3(_arg3){ }
- void runFunctor()
- {
- this->result = (object->*fn)(arg1, arg2, arg3);
- }
- private:
- T (Class::*fn)(Param1, Param2, Param3);
- Class *object;
- Arg1 arg1; Arg2 arg2; Arg3 arg3;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2, typename Param3, typename Arg3>
- class VoidStoredMemberFunctionPointerCall3 : public RunFunctionTask<T>
- {
- public:
- VoidStoredMemberFunctionPointerCall3(T (Class::*_fn)(Param1, Param2, Param3) , Class *_object, const Arg1 &_arg1, const Arg2 &_arg2, const Arg3 &_arg3)
- : fn(_fn), object(_object), arg1(_arg1), arg2(_arg2), arg3(_arg3){ }
- void runFunctor()
- {
- (object->*fn)(arg1, arg2, arg3);
- }
- private:
- T (Class::*fn)(Param1, Param2, Param3);
- Class *object;
- Arg1 arg1; Arg2 arg2; Arg3 arg3;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2, typename Param3, typename Arg3>
- struct SelectStoredMemberFunctionPointerCall3
- {
- typedef typename SelectSpecialization<T>::template
- Type<StoredMemberFunctionPointerCall3 <T, Class, Param1, Arg1, Param2, Arg2, Param3, Arg3>,
- VoidStoredMemberFunctionPointerCall3<T, Class, Param1, Arg1, Param2, Arg2, Param3, Arg3> >::type type;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2, typename Param3, typename Arg3>
- class StoredConstMemberFunctionPointerCall3 : public RunFunctionTask<T>
- {
- public:
- StoredConstMemberFunctionPointerCall3(T (Class::*_fn)(Param1, Param2, Param3) const, Class const *_object, const Arg1 &_arg1, const Arg2 &_arg2, const Arg3 &_arg3)
- : fn(_fn), object(_object), arg1(_arg1), arg2(_arg2), arg3(_arg3){ }
- void runFunctor()
- {
- this->result = (object->*fn)(arg1, arg2, arg3);
- }
- private:
- T (Class::*fn)(Param1, Param2, Param3)const;
- Class const *object;
- Arg1 arg1; Arg2 arg2; Arg3 arg3;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2, typename Param3, typename Arg3>
- class VoidStoredConstMemberFunctionPointerCall3 : public RunFunctionTask<T>
- {
- public:
- VoidStoredConstMemberFunctionPointerCall3(T (Class::*_fn)(Param1, Param2, Param3) const, Class const *_object, const Arg1 &_arg1, const Arg2 &_arg2, const Arg3 &_arg3)
- : fn(_fn), object(_object), arg1(_arg1), arg2(_arg2), arg3(_arg3){ }
- void runFunctor()
- {
- (object->*fn)(arg1, arg2, arg3);
- }
- private:
- T (Class::*fn)(Param1, Param2, Param3)const;
- Class const *object;
- Arg1 arg1; Arg2 arg2; Arg3 arg3;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2, typename Param3, typename Arg3>
- struct SelectStoredConstMemberFunctionPointerCall3
- {
- typedef typename SelectSpecialization<T>::template
- Type<StoredConstMemberFunctionPointerCall3 <T, Class, Param1, Arg1, Param2, Arg2, Param3, Arg3>,
- VoidStoredConstMemberFunctionPointerCall3<T, Class, Param1, Arg1, Param2, Arg2, Param3, Arg3> >::type type;
- };
- template <typename T, typename FunctionPointer, typename Arg1, typename Arg2, typename Arg3, typename Arg4>
- struct StoredFunctorCall4: public RunFunctionTask<T>
- {
- inline StoredFunctorCall4(FunctionPointer _function, const Arg1 &_arg1, const Arg2 &_arg2, const Arg3 &_arg3, const Arg4 &_arg4)
- : function(_function), arg1(_arg1), arg2(_arg2), arg3(_arg3), arg4(_arg4) {}
- void runFunctor() { this->result = function(arg1, arg2, arg3, arg4); }
- FunctionPointer function;
- Arg1 arg1; Arg2 arg2; Arg3 arg3; Arg4 arg4;
- };
- template <typename FunctionPointer, typename Arg1, typename Arg2, typename Arg3, typename Arg4>
- struct StoredFunctorCall4<void, FunctionPointer, Arg1, Arg2, Arg3, Arg4>: public RunFunctionTask<void>
- {
- inline StoredFunctorCall4(FunctionPointer _function, const Arg1 &_arg1, const Arg2 &_arg2, const Arg3 &_arg3, const Arg4 &_arg4)
- : function(_function), arg1(_arg1), arg2(_arg2), arg3(_arg3), arg4(_arg4) {}
- void runFunctor() { function(arg1, arg2, arg3, arg4); }
- FunctionPointer function;
- Arg1 arg1; Arg2 arg2; Arg3 arg3; Arg4 arg4;
- };
- template <typename T, typename FunctionPointer, typename Arg1, typename Arg2, typename Arg3, typename Arg4>
- struct StoredFunctorPointerCall4: public RunFunctionTask<T>
- {
- inline StoredFunctorPointerCall4(FunctionPointer * _function, const Arg1 &_arg1, const Arg2 &_arg2, const Arg3 &_arg3, const Arg4 &_arg4)
- : function(_function), arg1(_arg1), arg2(_arg2), arg3(_arg3), arg4(_arg4) {}
- void runFunctor() { this->result =(*function)(arg1, arg2, arg3, arg4); }
- FunctionPointer * function;
- Arg1 arg1; Arg2 arg2; Arg3 arg3; Arg4 arg4;
- };
- template <typename T, typename FunctionPointer, typename Arg1, typename Arg2, typename Arg3, typename Arg4>
- struct VoidStoredFunctorPointerCall4: public RunFunctionTask<T>
- {
- inline VoidStoredFunctorPointerCall4(FunctionPointer * _function, const Arg1 &_arg1, const Arg2 &_arg2, const Arg3 &_arg3, const Arg4 &_arg4)
- : function(_function), arg1(_arg1), arg2(_arg2), arg3(_arg3), arg4(_arg4) {}
- void runFunctor() {(*function)(arg1, arg2, arg3, arg4); }
- FunctionPointer * function;
- Arg1 arg1; Arg2 arg2; Arg3 arg3; Arg4 arg4;
- };
- template <typename T, typename FunctionPointer, typename Arg1, typename Arg2, typename Arg3, typename Arg4>
- struct SelectStoredFunctorPointerCall4
- {
- typedef typename SelectSpecialization<T>::template
- Type<StoredFunctorPointerCall4 <T, FunctionPointer, Arg1, Arg2, Arg3, Arg4>,
- VoidStoredFunctorPointerCall4<T, FunctionPointer, Arg1, Arg2, Arg3, Arg4> >::type type;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2, typename Param3, typename Arg3, typename Param4, typename Arg4>
- class StoredMemberFunctionCall4 : public RunFunctionTask<T>
- {
- public:
- StoredMemberFunctionCall4(T (Class::*_fn)(Param1, Param2, Param3, Param4) , const Class &_object, const Arg1 &_arg1, const Arg2 &_arg2, const Arg3 &_arg3, const Arg4 &_arg4)
- : fn(_fn), object(_object), arg1(_arg1), arg2(_arg2), arg3(_arg3), arg4(_arg4){ }
- void runFunctor()
- {
- this->result = (object.*fn)(arg1, arg2, arg3, arg4);
- }
- private:
- T (Class::*fn)(Param1, Param2, Param3, Param4);
- Class object;
- Arg1 arg1; Arg2 arg2; Arg3 arg3; Arg4 arg4;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2, typename Param3, typename Arg3, typename Param4, typename Arg4>
- class VoidStoredMemberFunctionCall4 : public RunFunctionTask<T>
- {
- public:
- VoidStoredMemberFunctionCall4(T (Class::*_fn)(Param1, Param2, Param3, Param4) , const Class &_object, const Arg1 &_arg1, const Arg2 &_arg2, const Arg3 &_arg3, const Arg4 &_arg4)
- : fn(_fn), object(_object), arg1(_arg1), arg2(_arg2), arg3(_arg3), arg4(_arg4){ }
- void runFunctor()
- {
- (object.*fn)(arg1, arg2, arg3, arg4);
- }
- private:
- T (Class::*fn)(Param1, Param2, Param3, Param4);
- Class object;
- Arg1 arg1; Arg2 arg2; Arg3 arg3; Arg4 arg4;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2, typename Param3, typename Arg3, typename Param4, typename Arg4>
- struct SelectStoredMemberFunctionCall4
- {
- typedef typename SelectSpecialization<T>::template
- Type<StoredMemberFunctionCall4 <T, Class, Param1, Arg1, Param2, Arg2, Param3, Arg3, Param4, Arg4>,
- VoidStoredMemberFunctionCall4<T, Class, Param1, Arg1, Param2, Arg2, Param3, Arg3, Param4, Arg4> >::type type;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2, typename Param3, typename Arg3, typename Param4, typename Arg4>
- class StoredConstMemberFunctionCall4 : public RunFunctionTask<T>
- {
- public:
- StoredConstMemberFunctionCall4(T (Class::*_fn)(Param1, Param2, Param3, Param4) const, const Class &_object, const Arg1 &_arg1, const Arg2 &_arg2, const Arg3 &_arg3, const Arg4 &_arg4)
- : fn(_fn), object(_object), arg1(_arg1), arg2(_arg2), arg3(_arg3), arg4(_arg4){ }
- void runFunctor()
- {
- this->result = (object.*fn)(arg1, arg2, arg3, arg4);
- }
- private:
- T (Class::*fn)(Param1, Param2, Param3, Param4)const;
- const Class object;
- Arg1 arg1; Arg2 arg2; Arg3 arg3; Arg4 arg4;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2, typename Param3, typename Arg3, typename Param4, typename Arg4>
- class VoidStoredConstMemberFunctionCall4 : public RunFunctionTask<T>
- {
- public:
- VoidStoredConstMemberFunctionCall4(T (Class::*_fn)(Param1, Param2, Param3, Param4) const, const Class &_object, const Arg1 &_arg1, const Arg2 &_arg2, const Arg3 &_arg3, const Arg4 &_arg4)
- : fn(_fn), object(_object), arg1(_arg1), arg2(_arg2), arg3(_arg3), arg4(_arg4){ }
- void runFunctor()
- {
- (object.*fn)(arg1, arg2, arg3, arg4);
- }
- private:
- T (Class::*fn)(Param1, Param2, Param3, Param4)const;
- const Class object;
- Arg1 arg1; Arg2 arg2; Arg3 arg3; Arg4 arg4;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2, typename Param3, typename Arg3, typename Param4, typename Arg4>
- struct SelectStoredConstMemberFunctionCall4
- {
- typedef typename SelectSpecialization<T>::template
- Type<StoredConstMemberFunctionCall4 <T, Class, Param1, Arg1, Param2, Arg2, Param3, Arg3, Param4, Arg4>,
- VoidStoredConstMemberFunctionCall4<T, Class, Param1, Arg1, Param2, Arg2, Param3, Arg3, Param4, Arg4> >::type type;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2, typename Param3, typename Arg3, typename Param4, typename Arg4>
- class StoredMemberFunctionPointerCall4 : public RunFunctionTask<T>
- {
- public:
- StoredMemberFunctionPointerCall4(T (Class::*_fn)(Param1, Param2, Param3, Param4) , Class *_object, const Arg1 &_arg1, const Arg2 &_arg2, const Arg3 &_arg3, const Arg4 &_arg4)
- : fn(_fn), object(_object), arg1(_arg1), arg2(_arg2), arg3(_arg3), arg4(_arg4){ }
- void runFunctor()
- {
- this->result = (object->*fn)(arg1, arg2, arg3, arg4);
- }
- private:
- T (Class::*fn)(Param1, Param2, Param3, Param4);
- Class *object;
- Arg1 arg1; Arg2 arg2; Arg3 arg3; Arg4 arg4;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2, typename Param3, typename Arg3, typename Param4, typename Arg4>
- class VoidStoredMemberFunctionPointerCall4 : public RunFunctionTask<T>
- {
- public:
- VoidStoredMemberFunctionPointerCall4(T (Class::*_fn)(Param1, Param2, Param3, Param4) , Class *_object, const Arg1 &_arg1, const Arg2 &_arg2, const Arg3 &_arg3, const Arg4 &_arg4)
- : fn(_fn), object(_object), arg1(_arg1), arg2(_arg2), arg3(_arg3), arg4(_arg4){ }
- void runFunctor()
- {
- (object->*fn)(arg1, arg2, arg3, arg4);
- }
- private:
- T (Class::*fn)(Param1, Param2, Param3, Param4);
- Class *object;
- Arg1 arg1; Arg2 arg2; Arg3 arg3; Arg4 arg4;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2, typename Param3, typename Arg3, typename Param4, typename Arg4>
- struct SelectStoredMemberFunctionPointerCall4
- {
- typedef typename SelectSpecialization<T>::template
- Type<StoredMemberFunctionPointerCall4 <T, Class, Param1, Arg1, Param2, Arg2, Param3, Arg3, Param4, Arg4>,
- VoidStoredMemberFunctionPointerCall4<T, Class, Param1, Arg1, Param2, Arg2, Param3, Arg3, Param4, Arg4> >::type type;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2, typename Param3, typename Arg3, typename Param4, typename Arg4>
- class StoredConstMemberFunctionPointerCall4 : public RunFunctionTask<T>
- {
- public:
- StoredConstMemberFunctionPointerCall4(T (Class::*_fn)(Param1, Param2, Param3, Param4) const, Class const *_object, const Arg1 &_arg1, const Arg2 &_arg2, const Arg3 &_arg3, const Arg4 &_arg4)
- : fn(_fn), object(_object), arg1(_arg1), arg2(_arg2), arg3(_arg3), arg4(_arg4){ }
- void runFunctor()
- {
- this->result = (object->*fn)(arg1, arg2, arg3, arg4);
- }
- private:
- T (Class::*fn)(Param1, Param2, Param3, Param4)const;
- Class const *object;
- Arg1 arg1; Arg2 arg2; Arg3 arg3; Arg4 arg4;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2, typename Param3, typename Arg3, typename Param4, typename Arg4>
- class VoidStoredConstMemberFunctionPointerCall4 : public RunFunctionTask<T>
- {
- public:
- VoidStoredConstMemberFunctionPointerCall4(T (Class::*_fn)(Param1, Param2, Param3, Param4) const, Class const *_object, const Arg1 &_arg1, const Arg2 &_arg2, const Arg3 &_arg3, const Arg4 &_arg4)
- : fn(_fn), object(_object), arg1(_arg1), arg2(_arg2), arg3(_arg3), arg4(_arg4){ }
- void runFunctor()
- {
- (object->*fn)(arg1, arg2, arg3, arg4);
- }
- private:
- T (Class::*fn)(Param1, Param2, Param3, Param4)const;
- Class const *object;
- Arg1 arg1; Arg2 arg2; Arg3 arg3; Arg4 arg4;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2, typename Param3, typename Arg3, typename Param4, typename Arg4>
- struct SelectStoredConstMemberFunctionPointerCall4
- {
- typedef typename SelectSpecialization<T>::template
- Type<StoredConstMemberFunctionPointerCall4 <T, Class, Param1, Arg1, Param2, Arg2, Param3, Arg3, Param4, Arg4>,
- VoidStoredConstMemberFunctionPointerCall4<T, Class, Param1, Arg1, Param2, Arg2, Param3, Arg3, Param4, Arg4> >::type type;
- };
- template <typename T, typename FunctionPointer, typename Arg1, typename Arg2, typename Arg3, typename Arg4, typename Arg5>
- struct StoredFunctorCall5: public RunFunctionTask<T>
- {
- inline StoredFunctorCall5(FunctionPointer _function, const Arg1 &_arg1, const Arg2 &_arg2, const Arg3 &_arg3, const Arg4 &_arg4, const Arg5 &_arg5)
- : function(_function), arg1(_arg1), arg2(_arg2), arg3(_arg3), arg4(_arg4), arg5(_arg5) {}
- void runFunctor() { this->result = function(arg1, arg2, arg3, arg4, arg5); }
- FunctionPointer function;
- Arg1 arg1; Arg2 arg2; Arg3 arg3; Arg4 arg4; Arg5 arg5;
- };
- template <typename FunctionPointer, typename Arg1, typename Arg2, typename Arg3, typename Arg4, typename Arg5>
- struct StoredFunctorCall5<void, FunctionPointer, Arg1, Arg2, Arg3, Arg4, Arg5>: public RunFunctionTask<void>
- {
- inline StoredFunctorCall5(FunctionPointer _function, const Arg1 &_arg1, const Arg2 &_arg2, const Arg3 &_arg3, const Arg4 &_arg4, const Arg5 &_arg5)
- : function(_function), arg1(_arg1), arg2(_arg2), arg3(_arg3), arg4(_arg4), arg5(_arg5) {}
- void runFunctor() { function(arg1, arg2, arg3, arg4, arg5); }
- FunctionPointer function;
- Arg1 arg1; Arg2 arg2; Arg3 arg3; Arg4 arg4; Arg5 arg5;
- };
- template <typename T, typename FunctionPointer, typename Arg1, typename Arg2, typename Arg3, typename Arg4, typename Arg5>
- struct StoredFunctorPointerCall5: public RunFunctionTask<T>
- {
- inline StoredFunctorPointerCall5(FunctionPointer * _function, const Arg1 &_arg1, const Arg2 &_arg2, const Arg3 &_arg3, const Arg4 &_arg4, const Arg5 &_arg5)
- : function(_function), arg1(_arg1), arg2(_arg2), arg3(_arg3), arg4(_arg4), arg5(_arg5) {}
- void runFunctor() { this->result =(*function)(arg1, arg2, arg3, arg4, arg5); }
- FunctionPointer * function;
- Arg1 arg1; Arg2 arg2; Arg3 arg3; Arg4 arg4; Arg5 arg5;
- };
- template <typename T, typename FunctionPointer, typename Arg1, typename Arg2, typename Arg3, typename Arg4, typename Arg5>
- struct VoidStoredFunctorPointerCall5: public RunFunctionTask<T>
- {
- inline VoidStoredFunctorPointerCall5(FunctionPointer * _function, const Arg1 &_arg1, const Arg2 &_arg2, const Arg3 &_arg3, const Arg4 &_arg4, const Arg5 &_arg5)
- : function(_function), arg1(_arg1), arg2(_arg2), arg3(_arg3), arg4(_arg4), arg5(_arg5) {}
- void runFunctor() {(*function)(arg1, arg2, arg3, arg4, arg5); }
- FunctionPointer * function;
- Arg1 arg1; Arg2 arg2; Arg3 arg3; Arg4 arg4; Arg5 arg5;
- };
- template <typename T, typename FunctionPointer, typename Arg1, typename Arg2, typename Arg3, typename Arg4, typename Arg5>
- struct SelectStoredFunctorPointerCall5
- {
- typedef typename SelectSpecialization<T>::template
- Type<StoredFunctorPointerCall5 <T, FunctionPointer, Arg1, Arg2, Arg3, Arg4, Arg5>,
- VoidStoredFunctorPointerCall5<T, FunctionPointer, Arg1, Arg2, Arg3, Arg4, Arg5> >::type type;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2, typename Param3, typename Arg3, typename Param4, typename Arg4, typename Param5, typename Arg5>
- class StoredMemberFunctionCall5 : public RunFunctionTask<T>
- {
- public:
- StoredMemberFunctionCall5(T (Class::*_fn)(Param1, Param2, Param3, Param4, Param5) , const Class &_object, const Arg1 &_arg1, const Arg2 &_arg2, const Arg3 &_arg3, const Arg4 &_arg4, const Arg5 &_arg5)
- : fn(_fn), object(_object), arg1(_arg1), arg2(_arg2), arg3(_arg3), arg4(_arg4), arg5(_arg5){ }
- void runFunctor()
- {
- this->result = (object.*fn)(arg1, arg2, arg3, arg4, arg5);
- }
- private:
- T (Class::*fn)(Param1, Param2, Param3, Param4, Param5);
- Class object;
- Arg1 arg1; Arg2 arg2; Arg3 arg3; Arg4 arg4; Arg5 arg5;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2, typename Param3, typename Arg3, typename Param4, typename Arg4, typename Param5, typename Arg5>
- class VoidStoredMemberFunctionCall5 : public RunFunctionTask<T>
- {
- public:
- VoidStoredMemberFunctionCall5(T (Class::*_fn)(Param1, Param2, Param3, Param4, Param5) , const Class &_object, const Arg1 &_arg1, const Arg2 &_arg2, const Arg3 &_arg3, const Arg4 &_arg4, const Arg5 &_arg5)
- : fn(_fn), object(_object), arg1(_arg1), arg2(_arg2), arg3(_arg3), arg4(_arg4), arg5(_arg5){ }
- void runFunctor()
- {
- (object.*fn)(arg1, arg2, arg3, arg4, arg5);
- }
- private:
- T (Class::*fn)(Param1, Param2, Param3, Param4, Param5);
- Class object;
- Arg1 arg1; Arg2 arg2; Arg3 arg3; Arg4 arg4; Arg5 arg5;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2, typename Param3, typename Arg3, typename Param4, typename Arg4, typename Param5, typename Arg5>
- struct SelectStoredMemberFunctionCall5
- {
- typedef typename SelectSpecialization<T>::template
- Type<StoredMemberFunctionCall5 <T, Class, Param1, Arg1, Param2, Arg2, Param3, Arg3, Param4, Arg4, Param5, Arg5>,
- VoidStoredMemberFunctionCall5<T, Class, Param1, Arg1, Param2, Arg2, Param3, Arg3, Param4, Arg4, Param5, Arg5> >::type type;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2, typename Param3, typename Arg3, typename Param4, typename Arg4, typename Param5, typename Arg5>
- class StoredConstMemberFunctionCall5 : public RunFunctionTask<T>
- {
- public:
- StoredConstMemberFunctionCall5(T (Class::*_fn)(Param1, Param2, Param3, Param4, Param5) const, const Class &_object, const Arg1 &_arg1, const Arg2 &_arg2, const Arg3 &_arg3, const Arg4 &_arg4, const Arg5 &_arg5)
- : fn(_fn), object(_object), arg1(_arg1), arg2(_arg2), arg3(_arg3), arg4(_arg4), arg5(_arg5){ }
- void runFunctor()
- {
- this->result = (object.*fn)(arg1, arg2, arg3, arg4, arg5);
- }
- private:
- T (Class::*fn)(Param1, Param2, Param3, Param4, Param5)const;
- const Class object;
- Arg1 arg1; Arg2 arg2; Arg3 arg3; Arg4 arg4; Arg5 arg5;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2, typename Param3, typename Arg3, typename Param4, typename Arg4, typename Param5, typename Arg5>
- class VoidStoredConstMemberFunctionCall5 : public RunFunctionTask<T>
- {
- public:
- VoidStoredConstMemberFunctionCall5(T (Class::*_fn)(Param1, Param2, Param3, Param4, Param5) const, const Class &_object, const Arg1 &_arg1, const Arg2 &_arg2, const Arg3 &_arg3, const Arg4 &_arg4, const Arg5 &_arg5)
- : fn(_fn), object(_object), arg1(_arg1), arg2(_arg2), arg3(_arg3), arg4(_arg4), arg5(_arg5){ }
- void runFunctor()
- {
- (object.*fn)(arg1, arg2, arg3, arg4, arg5);
- }
- private:
- T (Class::*fn)(Param1, Param2, Param3, Param4, Param5)const;
- const Class object;
- Arg1 arg1; Arg2 arg2; Arg3 arg3; Arg4 arg4; Arg5 arg5;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2, typename Param3, typename Arg3, typename Param4, typename Arg4, typename Param5, typename Arg5>
- struct SelectStoredConstMemberFunctionCall5
- {
- typedef typename SelectSpecialization<T>::template
- Type<StoredConstMemberFunctionCall5 <T, Class, Param1, Arg1, Param2, Arg2, Param3, Arg3, Param4, Arg4, Param5, Arg5>,
- VoidStoredConstMemberFunctionCall5<T, Class, Param1, Arg1, Param2, Arg2, Param3, Arg3, Param4, Arg4, Param5, Arg5> >::type type;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2, typename Param3, typename Arg3, typename Param4, typename Arg4, typename Param5, typename Arg5>
- class StoredMemberFunctionPointerCall5 : public RunFunctionTask<T>
- {
- public:
- StoredMemberFunctionPointerCall5(T (Class::*_fn)(Param1, Param2, Param3, Param4, Param5) , Class *_object, const Arg1 &_arg1, const Arg2 &_arg2, const Arg3 &_arg3, const Arg4 &_arg4, const Arg5 &_arg5)
- : fn(_fn), object(_object), arg1(_arg1), arg2(_arg2), arg3(_arg3), arg4(_arg4), arg5(_arg5){ }
- void runFunctor()
- {
- this->result = (object->*fn)(arg1, arg2, arg3, arg4, arg5);
- }
- private:
- T (Class::*fn)(Param1, Param2, Param3, Param4, Param5);
- Class *object;
- Arg1 arg1; Arg2 arg2; Arg3 arg3; Arg4 arg4; Arg5 arg5;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2, typename Param3, typename Arg3, typename Param4, typename Arg4, typename Param5, typename Arg5>
- class VoidStoredMemberFunctionPointerCall5 : public RunFunctionTask<T>
- {
- public:
- VoidStoredMemberFunctionPointerCall5(T (Class::*_fn)(Param1, Param2, Param3, Param4, Param5) , Class *_object, const Arg1 &_arg1, const Arg2 &_arg2, const Arg3 &_arg3, const Arg4 &_arg4, const Arg5 &_arg5)
- : fn(_fn), object(_object), arg1(_arg1), arg2(_arg2), arg3(_arg3), arg4(_arg4), arg5(_arg5){ }
- void runFunctor()
- {
- (object->*fn)(arg1, arg2, arg3, arg4, arg5);
- }
- private:
- T (Class::*fn)(Param1, Param2, Param3, Param4, Param5);
- Class *object;
- Arg1 arg1; Arg2 arg2; Arg3 arg3; Arg4 arg4; Arg5 arg5;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2, typename Param3, typename Arg3, typename Param4, typename Arg4, typename Param5, typename Arg5>
- struct SelectStoredMemberFunctionPointerCall5
- {
- typedef typename SelectSpecialization<T>::template
- Type<StoredMemberFunctionPointerCall5 <T, Class, Param1, Arg1, Param2, Arg2, Param3, Arg3, Param4, Arg4, Param5, Arg5>,
- VoidStoredMemberFunctionPointerCall5<T, Class, Param1, Arg1, Param2, Arg2, Param3, Arg3, Param4, Arg4, Param5, Arg5> >::type type;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2, typename Param3, typename Arg3, typename Param4, typename Arg4, typename Param5, typename Arg5>
- class StoredConstMemberFunctionPointerCall5 : public RunFunctionTask<T>
- {
- public:
- StoredConstMemberFunctionPointerCall5(T (Class::*_fn)(Param1, Param2, Param3, Param4, Param5) const, Class const *_object, const Arg1 &_arg1, const Arg2 &_arg2, const Arg3 &_arg3, const Arg4 &_arg4, const Arg5 &_arg5)
- : fn(_fn), object(_object), arg1(_arg1), arg2(_arg2), arg3(_arg3), arg4(_arg4), arg5(_arg5){ }
- void runFunctor()
- {
- this->result = (object->*fn)(arg1, arg2, arg3, arg4, arg5);
- }
- private:
- T (Class::*fn)(Param1, Param2, Param3, Param4, Param5)const;
- Class const *object;
- Arg1 arg1; Arg2 arg2; Arg3 arg3; Arg4 arg4; Arg5 arg5;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2, typename Param3, typename Arg3, typename Param4, typename Arg4, typename Param5, typename Arg5>
- class VoidStoredConstMemberFunctionPointerCall5 : public RunFunctionTask<T>
- {
- public:
- VoidStoredConstMemberFunctionPointerCall5(T (Class::*_fn)(Param1, Param2, Param3, Param4, Param5) const, Class const *_object, const Arg1 &_arg1, const Arg2 &_arg2, const Arg3 &_arg3, const Arg4 &_arg4, const Arg5 &_arg5)
- : fn(_fn), object(_object), arg1(_arg1), arg2(_arg2), arg3(_arg3), arg4(_arg4), arg5(_arg5){ }
- void runFunctor()
- {
- (object->*fn)(arg1, arg2, arg3, arg4, arg5);
- }
- private:
- T (Class::*fn)(Param1, Param2, Param3, Param4, Param5)const;
- Class const *object;
- Arg1 arg1; Arg2 arg2; Arg3 arg3; Arg4 arg4; Arg5 arg5;
- };
- template <typename T, typename Class, typename Param1, typename Arg1, typename Param2, typename Arg2, typename Param3, typename Arg3, typename Param4, typename Arg4, typename Param5, typename Arg5>
- struct SelectStoredConstMemberFunctionPointerCall5
- {
- typedef typename SelectSpecialization<T>::template
- Type<StoredConstMemberFunctionPointerCall5 <T, Class, Param1, Arg1, Param2, Arg2, Param3, Arg3, Param4, Arg4, Param5, Arg5>,
- VoidStoredConstMemberFunctionPointerCall5<T, Class, Param1, Arg1, Param2, Arg2, Param3, Arg3, Param4, Arg4, Param5, Arg5> >::type type;
- };
- template <typename T, typename Functor>
- class StoredFunctorCall : public RunFunctionTask<T>
- {
- public:
- StoredFunctorCall(const Functor &f) : functor(f) { }
- void runFunctor()
- {
- this->result = functor();
- }
- private:
- Functor functor;
- };
- template <typename Functor>
- class StoredFunctorCall<void, Functor> : public RunFunctionTask<void>
- {
- public:
- StoredFunctorCall(const Functor &f) : functor(f) { }
- void runFunctor()
- {
- functor();
- }
- private:
- Functor functor;
- };
- } //namespace QtConcurrent
- #endif // Q_QDOC
- QT_END_NAMESPACE
- #endif // QT_NO_CONCURRENT
- #endif
|