source: trunk/include/modelist.h @ 1663

Revision 1663, 5.7 KB checked in by philmoz, 2 years ago (diff)

Merged revision(s) 1662 from branches/release-1_0:

  • Property svn:eol-style set to native
Line 
1#ifndef MODELIST_H
2#define MODELIST_H
3/*
4CHDK capture mode constants.
5WARNING: This file is used with gen_modelist_lua.sed to generate modelist.lua
6WARNING: These are used for platform independent script values.
7Changing order or inserting new values will break script compatibility.
8ADD NEW VALUES AT THE END!
9
100 is used as an invalid value
11not every value is valid on every camera
12
13Single line comments on the enum values will be carried over to lua
14
15modemap notes:
16- On cameras where the "manual" mode only allows +/- ev, rather than direct shutter
17control, it should be mapped to P, not M
18- Modes should be mapped to an enum value that matches their canon name. This is
19displayed as a string when the mode is set, and can also be found in canon
20manuals and spec lists. If in doubt refer to the canon manuals for description of
21the modes function, and compare with existing cameras. Add a new enum value at the
22end of the list if it doesn't closely match any existing function.
23- Currently, modes under the SCN menu are given the SCN prefix, even if an equivalent
24non-scene constant already exists.
25- Some cameras have C, or C1 and C2 modes. These are not actual shooting modes, but
26are used to load saved settings for other modes like M, P etc. These modes can be
27set using _SetCurrrentCaptureMode, but are not currently supported by the modemap
28system. If a C mode is set this way, the propcase used for PROPCASE_SHOOTING_MODE
29on propset 2 cameras (49) reflects the actual mode. Propcase 50 appears to show the
30set mode. Propset 1 behavior is unknown.
31- Although canon mode values are similar between many cameras, they are not always the same!
32- a list of valid canon modes can be found in the firmware, see existing cameras
33for examples. This can be found several function calls after a reference to the
34string AC:PTM_Init or similar
35*/
36enum {
37    MODE_AUTO               =1,
38    MODE_P                  , // Called "camera manual" on many cameras without a true manual mode, only allows +/- Ev adjustment
39    MODE_TV                 ,
40    MODE_AV                 ,
41    MODE_M                  , // note, use only for true manual modes that allow direct control of Tv/Av
42    MODE_PORTRAIT           ,
43    MODE_NIGHT_SCENE        , // "night scene" mode. Note, this can be a dail position, or under the scene menu (SCN_NIGHT_SCENE).
44    MODE_LANDSCAPE          ,
45    MODE_VIDEO_STD          ,
46    MODE_VIDEO_SPEED        ,
47    MODE_VIDEO_COMPACT      ,
48    MODE_VIDEO_MY_COLORS    ,
49    MODE_VIDEO_COLOR_ACCENT ,
50    MODE_VIDEO_COLOR_SWAP   ,
51    MODE_STITCH             ,
52    MODE_MY_COLORS          ,
53    MODE_SCN_UNDERWATER     ,
54    MODE_SCN_NIGHT_SNAPSHOT ,
55    MODE_LONG_SHUTTER       , // "long shutter" mode on cameras without true manual mode. Allows manual shutter >= 1 second, uses manual shutter value propcase. Usually found under func menu in "manual" mode.
56    MODE_SCN_LANDSCAPE      ,
57    MODE_COLOR_SWAP         ,
58    MODE_SCN_SNOW           ,
59    MODE_SCN_BEACH          ,
60    MODE_SCN_FIREWORK       ,
61    MODE_SCN_COLOR_ACCENT   ,
62    MODE_SCN_COLOR_SWAP     ,
63    MODE_VIDEO_HIRES        ,
64    MODE_SCN_AQUARIUM       ,
65    MODE_COLOR_ACCENT       ,
66    MODE_SCN_NIGHT_SCENE    ,
67    MODE_SCN_ISO_3200       ,
68    MODE_SCN_SPORT          ,
69    MODE_SCN_KIDS_PETS      ,
70    MODE_INDOOR             ,
71    MODE_KIDS_PETS          ,
72    MODE_NIGHT_SNAPSHOT     ,
73    MODE_DIGITAL_MACRO      ,
74    MODE_SCN_FOLIAGE        ,
75    MODE_VIDEO_TIME_LAPSE   ,
76    MODE_SCN_INDOOR         ,
77    MODE_SCN_PORTRAIT       ,
78    MODE_SUPER_MACRO        ,
79    MODE_VIDEO_PORTRAIT     , // tx1 junk
80    MODE_VIDEO_NIGHT        , // tx1 junk
81    MODE_VIDEO_INDOOR       , // tx1 junk
82    MODE_VIDEO_FOLIAGE      , // tx1 junk
83    MODE_VIDEO_SNOW         , // tx1 junk
84    MODE_VIDEO_BEACH        , // tx1 junk
85    MODE_VIDEO_AQUARIUM     , // tx1 junk
86    MODE_VIDEO_SUPER_MACRO  , // tx1 junk
87    MODE_VIDEO_STITCH       , // tx1 junk
88    MODE_VIDEO_MANUAL       , // tx1 junk
89    MODE_SPORTS             ,
90    MODE_QUICK              ,
91    MODE_SCN_SUNSET         ,
92    MODE_SCN_CREATIVE_EFFECT, // "creative light effect", only known on ixus950_sd850
93    MODE_EASY               ,
94    MODE_SCN_DIGITAL_MACRO  ,
95    MODE_SCN_STITCH         ,
96    MODE_SCN_LONG_SHUTTER   , // only known on sx1, d10
97    MODE_LOWLIGHT           , // g11
98    MODE_SCN_NOSTALGIC      , // s90
99    MODE_SCN_SMART_SHUTTER  , // sx30/g12 (Smart Shutter, Smile detection mode)
100    MODE_SCN_LOWLIGHT       , // sx30
101    MODE_SCN_SUPER_VIVID    , // sx30
102    MODE_SCN_POSTER_EFFECT  , // sx30
103    MODE_SCN_FISHEYE        , // sx30
104    MODE_SCN_MINIATURE      , // sx30
105    MODE_SCN_HDR            , // g12 (HDR scene mode)
106    MODE_VIDEO_MINIATURE    , // g12 (miniature effect video mode)
107    MODE_VIDEO_IFRAME_MOVIE , // sx220
108    MODE_VIDEO_MOVIE_DIGEST , // sx220 (the camera automatically record a short video clip (up to approximately 4 seconds) every time you shoot
109    MODE_SCN_HIGHSPEED_BURST, // sx220
110    MODE_SCN_BEST_IMAGE     , // sx220
111    MODE_SCN_TOY_CAMERA     , // sx220
112    MODE_SCN_MONOCHROME     , // sx220
113    MODE_SCN_WINK_SELF_TIMER, // sx30/g12 (Smart Shutter, Wink Self Timer mode)
114    MODE_SCN_FACE_SELF_TIMER, // sx30/g12 (Smart Shutter, Face Self Timer mode)
115    MODE_VIDEO_SUPER_SLOW   , // IXUS 310 HS Super Slow Motion Movie
116    MODE_SMART_SHUTTER      , // ixus1000_sd4500 - the following are not under SCN
117    MODE_HIGHSPEED_BURST    ,
118    MODE_BEST_IMAGE         ,
119    MODE_SUPER_VIVID        ,
120    MODE_POSTER_EFFECT      ,
121    MODE_FISHEYE            ,
122    MODE_MINIATURE          ,
123    MODE_BEACH              ,
124    MODE_FOLIAGE            ,
125    MODE_SNOW               ,
126    MODE_FIREWORK           , // ixus1000 end
127    MODE_LIVE               , // A3300is
128    MODE_DISCREET           , // A3300is
129};
130
131#endif
Note: See TracBrowser for help on using the repository browser.