File: options.h

package info (click to toggle)
lebiniou 3.18-1
  • links: PTS
  • area: main
  • in suites: wheezy
  • size: 5,396 kB
  • sloc: ansic: 20,369; sh: 4,169; makefile: 834; awk: 194
file content (81 lines) | stat: -rw-r--r-- 2,920 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
/*
 *  Copyright 1994-2012 Olivier Girondel
 *
 *  This file is part of lebiniou.
 *
 *  lebiniou 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.
 *
 *  lebiniou 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 lebiniou. If not, see <http://www.gnu.org/licenses/>.
 */

#ifndef __BINIOU_OPTIONS_H
#define __BINIOU_OPTIONS_H

#include "utils.h"

enum PluginOptions {
  /* BE_ stands for "Biniou Effect" */ 
  BE_NONE       = 0,
  BE_SFX2D      = 1 << 0,  /* sound effect, 2d */
  BE_SFX3D      = 1 << 1,  /* sound effect, 3d */
  BE_GFX        = 1 << 2,  /* graphic effect */
  BE_BLUR       = 1 << 3,  /* blur effect */
  BE_DISPLACE   = 1 << 4,  /* displace effect */
  BE_LENS       = 1 << 5,  /* lens effect */
  BE_SCROLL     = 1 << 6,  /* scroll effect */
  BE_MIRROR     = 1 << 7,  /* mirror effect */
  BE_ROLL       = 1 << 8,  /* roll effect */
  BE_WARP       = 1 << 9,  /* warp effect */
  BE_CLEAN      = 1 << 10, /* obvious */

  /* BEQ_ stands for "Biniou Effect Qualifier" */
  /* --- Those MUST NOT be selectable */
  BEQ_HOR        = 1 << 11,
  BEQ_VER        = 1 << 12,
  BEQ_DIAG       = 1 << 13,
  BEQ_UP         = 1 << 14, /* 2d effect hints */
  BEQ_DOWN       = 1 << 15,
  BEQ_LEFT       = 1 << 16,
  BEQ_RIGHT      = 1 << 17,
  BEQ_COLORMAP   = 1 << 18, /* changes colormap */
  BEQ_PARTICLES  = 1 << 19, /* generates particles */
  BEQ_SPLASH     = 1 << 20, /* splashes pictures */
  BEQ_THREAD     = 1 << 21, /* thread, do not use in sequences */
  BEQ_PICTURE    = 1 << 22, /* uses background picture */
  BEQ_NORANDOM   = 1 << 23, /* don't select at random */
  BEQ_DISABLED   = 1 << 24, /* unusable plugin: no selection or random possible */
  BEQ_3D         = 1 << 25, /* does 3D, obviously */
  BEQ_UNIQUE     = 1 << 26, /* plugin must be alone to be cool */
  BEQ_TEST       = 1 << 27, /* testing plugins */
  BEQ_DEBUG      = 1 << 28, /* for debug */
  BEQ_FIRST      = 1 << 29, /* insert plugin at the begining */
  BEQ_FLUSH      = 1 << 30, /* clear the sequence before inserting the plugin */
  BEQ_BYPASS     = 1 << 31  /* plugin can be temporarily disabled */
} PluginOptions_e;

#define MAX_STYPES 11           /* user-selectable types */
#define MAX_TYPES  32           /* all types available */

/* -- PluginType -- */

typedef struct PluginType_s {
  enum PluginOptions option;
  
  char    *name;
  char    *oname;
  u_short count;
} PluginType_t;


PluginType_t pTypes[MAX_TYPES];

#endif /* __BINIOU_OPTIONS_H */