[cosmetics] update date in GPL header
[vuplus_xbmc] / xbmc / interfaces / python / typemaps / python.Alternative.outtm
1 <%
2 /*
3  *      Copyright (C) 2005-2013 Team XBMC
4  *      http://www.xbmc.org
5  *
6  *  This Program is free software; you can redistribute it and/or modify
7  *  it under the terms of the GNU General Public License as published by
8  *  the Free Software Foundation; either version 2, or (at your option)
9  *  any later version.
10  *
11  *  This Program 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 General Public License for more details.
15  *
16  *  You should have received a copy of the GNU General Public License
17  *  along with XBMC; see the file COPYING.  If not, write to
18  *  the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
19  *  http://www.gnu.org/copyleft/gpl.html
20  *
21  */
22 %>
23 <%
24     matcher = type =~ /Alternative<\((.*)\)>/
25     vectype = '(' + matcher[0][1] + ')'
26     boolean ispointer = swigTypeParser.SwigType_ispointer(type)
27     int seq = sequence.increment()
28     String accessor = ispointer ? '->' : '.'
29     altAccess = [ 'former', 'later' ]
30     altSwitch = [ 'first', 'second' ]
31 %>
32     WhichAlternative pos = ${api}${accessor}which();
33
34     if (<%if (ispointer) { %>${api} != NULL && <%}%>pos != XBMCAddon::none)
35     { <%
36       swigTypeParser.SwigType_parmlist(vectype).eachWithIndex { curType, entryIndex -> 
37 %>
38       if (pos == XBMCAddon::${altSwitch[entryIndex]})
39       {
40         ${swigTypeParser.SwigType_str(swigTypeParser.SwigType_ltype(curType))}& entry${seq} = ${api}${accessor}${altAccess[entryIndex]}();
41         {
42           ${helper.getOutConversion(curType,result,method,[ 'api' : 'entry' + seq, 'sequence' : sequence ])}
43         }
44       }
45 <%
46         }
47 %>
48     }
49     else
50     { 
51       ${result} = Py_None;
52     }