1 /** 2 * 3 * Copyright (c) 2005-2021 by Pierre-Henri WUILLEMIN(_at_LIP6) & Christophe GONZALES(_at_AMU) 4 * info_at_agrum_dot_org 5 * 6 * This library is free software: you can redistribute it and/or modify 7 * it under the terms of the GNU Lesser General Public License as published by 8 * the Free Software Foundation, either version 3 of the License, or 9 * (at your option) any later version. 10 * 11 * This library is distributed in the hope that it will be useful, 12 * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 * GNU Lesser General Public License for more details. 15 * 16 * You should have received a copy of the GNU Lesser General Public License 17 * along with this library. If not, see <http://www.gnu.org/licenses/>. 18 * 19 */ 20 21 22 /** 23 * @file 24 * @brief Class of gum::Signaler2. 25 * 26 * @author Pierre-Henri WUILLEMIN(_at_LIP6) & Christophe GONZALES(_at_AMU) 27 * 28 */ 29 30 #ifndef GUM_SIGNALER2_H 31 #define GUM_SIGNALER2_H 32 33 #include <agrum/tools/core/signal/signaler.h> 34 35 #define MAKE_NAME(nom) nom##2 36 #define LIST_DECL_CLASSES class type1, class type2 37 #define LIST_CLASSES type1, type2 38 #define LIST_DECL_ARGS type1 arg1, type2 arg2 39 #define LIST_ARGS arg1, arg2 40 41 #define GUM_EMIT2(signal, arg1, arg2) this->signal(this, arg1, arg2) 42 43 #define SIGNALER_PATRON_ACCEPTED 44 #include <agrum/tools/core/signal/signaler_with_args.pattern.h> 45 46 #endif // GUM_SIGNALER2_H 47