2 * Copyright (C) 2005-2013 Team XBMC
5 * This Program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation; either version 2, or (at your option)
10 * This Program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
15 * You should have received a copy of the GNU General Public License
16 * along with XBMC; see the file COPYING. If not, see
17 * <http://www.gnu.org/licenses/>.
22 Common data structures shared between XBMC and XBMC's visualisations
25 #ifndef __VISUALISATION_TYPES_H__
26 #define __VISUALISATION_TYPES_H__
48 const char *submodule;
54 VIS_ACTION_NEXT_PRESET,
55 VIS_ACTION_PREV_PRESET,
56 VIS_ACTION_LOAD_PRESET,
57 VIS_ACTION_RANDOM_PRESET,
58 VIS_ACTION_LOCK_PRESET,
59 VIS_ACTION_RATE_PRESET_PLUS,
60 VIS_ACTION_RATE_PRESET_MINUS,
61 VIS_ACTION_UPDATE_ALBUMART,
62 VIS_ACTION_UPDATE_TRACK
70 title = artist = album = albumArtist = NULL;
71 genre = comment = lyrics = reserved1 = reserved2 = NULL;
72 trackNumber = discNumber = duration = year = 0;
74 reserved3 = reserved4 = 0;
80 const char *albumArtist;
84 const char *reserved1;
85 const char *reserved2;
98 void (__cdecl* Start)(int iChannels, int iSamplesPerSec, int iBitsPerSample, const char* szSongName);
99 void (__cdecl* AudioData)(const float* pAudioData, int iAudioDataLength, float *pFreqData, int iFreqDataLength);
100 void (__cdecl* Render) ();
101 void (__cdecl* GetInfo)(VIS_INFO *info);
102 bool (__cdecl* OnAction)(long flags, const void *param);
103 int (__cdecl* HasPresets)();
104 unsigned int (__cdecl *GetPresets)(char ***presets);
105 unsigned int (__cdecl *GetPreset)();
106 unsigned int (__cdecl *GetSubModules)(char ***modules);
107 bool (__cdecl* IsLocked)();
111 #endif //__VISUALISATION_TYPES_H__