/* Copyright (C) 2016 Paul Davis This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include #include "ardour/debug.h" #include "ardour/mute_control.h" #include "ardour/session.h" #include "ardour/solo_control.h" #include "layout.h" #include "push2.h" #include "track_mix.h" using namespace ArdourSurface; using namespace ARDOUR; using namespace PBD; using std::cerr; void Push2::build_maps () { /* Pads */ boost::shared_ptr pad; #define MAKE_PAD(x,y,nn) \ pad.reset (new Pad ((x), (y), (nn))); \ nn_pad_map.insert (std::make_pair (pad->extra(), pad)); MAKE_PAD (0, 0, 92); MAKE_PAD (0, 1, 93); MAKE_PAD (0, 2, 94); MAKE_PAD (0, 3, 95); MAKE_PAD (0, 4, 96); MAKE_PAD (0, 5, 97); MAKE_PAD (0, 6, 98); MAKE_PAD (0, 7, 99); MAKE_PAD (1, 0, 84); MAKE_PAD (1, 1, 85); MAKE_PAD (1, 2, 86); MAKE_PAD (1, 3, 87); MAKE_PAD (1, 4, 88); MAKE_PAD (1, 5, 89); MAKE_PAD (1, 6, 90); MAKE_PAD (1, 7, 91); MAKE_PAD (2, 0, 76); MAKE_PAD (2, 1, 77); MAKE_PAD (2, 2, 78); MAKE_PAD (2, 3, 79); MAKE_PAD (2, 4, 80); MAKE_PAD (2, 5, 81); MAKE_PAD (2, 6, 82); MAKE_PAD (2, 7, 83); MAKE_PAD (3, 0, 68); MAKE_PAD (3, 1, 69); MAKE_PAD (3, 2, 70); MAKE_PAD (3, 3, 71); MAKE_PAD (3, 4, 72); MAKE_PAD (3, 5, 73); MAKE_PAD (3, 6, 74); MAKE_PAD (3, 7, 75); MAKE_PAD (4, 0, 60); MAKE_PAD (4, 1, 61); MAKE_PAD (4, 2, 62); MAKE_PAD (4, 3, 63); MAKE_PAD (4, 4, 64); MAKE_PAD (4, 5, 65); MAKE_PAD (4, 6, 66); MAKE_PAD (4, 7, 67); MAKE_PAD (5, 0, 52); MAKE_PAD (5, 1, 53); MAKE_PAD (5, 2, 54); MAKE_PAD (5, 3, 55); MAKE_PAD (5, 4, 56); MAKE_PAD (5, 5, 57); MAKE_PAD (5, 6, 58); MAKE_PAD (5, 7, 59); MAKE_PAD (6, 0, 44); MAKE_PAD (6, 1, 45); MAKE_PAD (6, 2, 46); MAKE_PAD (6, 3, 47); MAKE_PAD (6, 4, 48); MAKE_PAD (6, 5, 49); MAKE_PAD (6, 6, 50); MAKE_PAD (6, 7, 51); MAKE_PAD (7, 0, 36); MAKE_PAD (7, 1, 37); MAKE_PAD (7, 2, 38); MAKE_PAD (7, 3, 39); MAKE_PAD (7, 4, 40); MAKE_PAD (7, 5, 41); MAKE_PAD (7, 6, 42); MAKE_PAD (7, 7, 43); /* Now color buttons */ boost::shared_ptr