more id3v2 fixes
[amper.git] / amperrpcproto.d
blob3dc7468d847c014c75e0ab3659ba7c86312e92a8
1 /* coded by Ketmar // Invisible Vector <ketmar@ketmar.no-ip.org>
2 * Understanding is not required. Only obedience.
4 * This program is free software: you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation, either version 3 of the License, or
7 * (at your option) any later version.
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
14 * You should have received a copy of the GNU General Public License
15 * along with this program. If not, see <http://www.gnu.org/licenses/>.
17 module amperrpcproto;
19 import iv.cmdcon;
20 import iv.ncrpc;
23 // ////////////////////////////////////////////////////////////////////////// //
24 __gshared string delegate () amperGetSongVisTitle;
25 __gshared void delegate (string path, bool append=false) amperScanDir;
26 __gshared void delegate () amperPlay;
27 __gshared void delegate () amperStop;
28 __gshared void delegate () amperTogglePause;
29 __gshared void delegate () amperClearPlaylist;
30 __gshared void delegate (string cmd) amperConsoleCommand;
33 // ////////////////////////////////////////////////////////////////////////// //
34 auto amperRPCall(alias func, A...) (A args) {
35 UDSocket sk;
36 sk.connect(AmperRPCSocket);
37 return sk.rpcall!func(args);
41 // ////////////////////////////////////////////////////////////////////////// //
42 enum AmperRPCSocket = "/k8/amper";