C preprocessor macros beginning/ending with underscores are
reserved for system use as well as macros containing a double
underscore anywhere, so application software macros are
supposed to be named differently.
For a header file gphoto2-abilities-list.h, this
consistently uses a macro name
LIBGPHOTO2_GPHOTO2_ABILITIES_LIST_H
for the usual
#ifndef LIBGPHOTO2_GPHOTO2_ABILITIES_LIST_H
#define LIBGPHOTO2_GPHOTO2_ABILITIES_LIST_H
... content of the header file ...
#endif /* !defined(LIBGPHOTO2_GPHOTO2_ABILITIES_LIST_H) */
Found using "clang -Weverything".
This should work, unless when run with an ancient C preprocessor
which might only the first 8 or 10 characters to distinguish
macro names and ignores the remainder of the name.
243 lines
7.3 KiB
C
243 lines
7.3 KiB
C
/*
|
|
pkTriggerCord
|
|
Copyright (C) 2011-2019 Andras Salamon <andras.salamon@melda.info>
|
|
Remote control of Pentax DSLR cameras.
|
|
|
|
based on:
|
|
|
|
PK-Remote
|
|
Remote control of Pentax DSLR cameras.
|
|
Copyright (C) 2008 Pontus Lidman <pontus@lysator.liu.se>
|
|
|
|
PK-Remote for Windows
|
|
Copyright (C) 2010 Tomasz Kos
|
|
|
|
This program is free software: you can redistribute it and/or modify
|
|
it under the terms of the GNU Lesser General Public License as published by
|
|
the Free Software Foundation, either version 3 of the License, or
|
|
(at your option) any later version.
|
|
|
|
This program 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 Lesser General Public License for more details.
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
and GNU Lesser General Public License
|
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
*/
|
|
|
|
#ifndef CAMLIBS_PENTAX_PSLR_ENUM_H
|
|
#define CAMLIBS_PENTAX_PSLR_ENUM_H
|
|
|
|
#include <stdint.h>
|
|
|
|
typedef enum {
|
|
PSLR_COLOR_SPACE_SRGB,
|
|
PSLR_COLOR_SPACE_ADOBERGB,
|
|
PSLR_COLOR_SPACE_MAX
|
|
} pslr_color_space_t;
|
|
|
|
typedef enum {
|
|
PSLR_AF_MODE_MF,
|
|
PSLR_AF_MODE_AF_S,
|
|
PSLR_AF_MODE_AF_C,
|
|
PSLR_AF_MODE_AF_A,
|
|
PSLR_AF_MODE_MAX
|
|
} pslr_af_mode_t;
|
|
|
|
typedef enum {
|
|
PSLR_AE_METERING_MULTI,
|
|
PSLR_AE_METERING_CENTER,
|
|
PSLR_AE_METERING_SPOT,
|
|
PSLR_AE_METERING_MAX
|
|
} pslr_ae_metering_t;
|
|
|
|
typedef enum {
|
|
PSLR_FLASH_MODE_MANUAL = 0,
|
|
PSLR_FLASH_MODE_MANUAL_REDEYE = 1,
|
|
PSLR_FLASH_MODE_SLOW = 2,
|
|
PSLR_FLASH_MODE_SLOW_REDEYE = 3,
|
|
PSLR_FLASH_MODE_TRAILING_CURTAIN = 4,
|
|
PSLR_FLASH_MODE_AUTO = 5,
|
|
PSLR_FLASH_MODE_AUTO_REDEYE = 6,
|
|
/* 7 not used */
|
|
PSLR_FLASH_MODE_WIRELESS = 8,
|
|
PSLR_FLASH_MODE_MAX = 9
|
|
} pslr_flash_mode_t;
|
|
|
|
typedef enum {
|
|
PSLR_DRIVE_MODE_SINGLE,
|
|
PSLR_DRIVE_MODE_CONTINUOUS_HI,
|
|
PSLR_DRIVE_MODE_SELF_TIMER_12,
|
|
PSLR_DRIVE_MODE_SELF_TIMER_2,
|
|
PSLR_DRIVE_MODE_REMOTE,
|
|
PSLR_DRIVE_MODE_REMOTE_3,
|
|
PSLR_DRIVE_MODE_CONTINUOUS_LO,
|
|
PSLR_DRIVE_MODE_MAX
|
|
} pslr_drive_mode_t;
|
|
|
|
typedef enum {
|
|
PSLR_AF_POINT_SEL_AUTO_5,
|
|
PSLR_AF_POINT_SEL_SELECT,
|
|
PSLR_AF_POINT_SEL_SPOT,
|
|
PSLR_AF_POINT_SEL_AUTO_11, /* maybe not for all cameras */
|
|
PSLR_AF_POINT_SEL_EXPANDED, /* only for newer */
|
|
PSLR_AF_POINT_SEL_MAX
|
|
} pslr_af_point_sel_t;
|
|
|
|
typedef enum {
|
|
PSLR_AF11_POINT_TOP_LEFT = 0x01,
|
|
PSLR_AF11_POINT_TOP_MID = 0x2,
|
|
PSLR_AF11_POINT_TOP_RIGHT = 0x4,
|
|
PSLR_AF11_POINT_FAR_LEFT = 0x8,
|
|
PSLR_AF11_POINT_MID_LEFT = 0x10,
|
|
PSLR_AF11_POINT_MID_MID = 0x20,
|
|
PSLR_AF11_POINT_MID_RIGHT = 0x40,
|
|
PSLR_AF11_POINT_FAR_RIGHT = 0x80,
|
|
PSLR_AF11_POINT_BOT_LEFT = 0x100,
|
|
PSLR_AF11_POINT_BOT_MID = 0x200,
|
|
PSLR_AF11_POINT_BOT_RIGHT = 0x400
|
|
} pslr_af11_point_t;
|
|
|
|
typedef enum {
|
|
PSLR_JPEG_IMAGE_TONE_NONE = -1,
|
|
PSLR_JPEG_IMAGE_TONE_NATURAL,
|
|
PSLR_JPEG_IMAGE_TONE_BRIGHT,
|
|
PSLR_JPEG_IMAGE_TONE_PORTRAIT,
|
|
PSLR_JPEG_IMAGE_TONE_LANDSCAPE,
|
|
PSLR_JPEG_IMAGE_TONE_VIBRANT,
|
|
PSLR_JPEG_IMAGE_TONE_MONOCHROME,
|
|
PSLR_JPEG_IMAGE_TONE_MUTED,
|
|
PSLR_JPEG_IMAGE_TONE_REVERSAL_FILM,
|
|
PSLR_JPEG_IMAGE_TONE_BLEACH_BYPASS,
|
|
PSLR_JPEG_IMAGE_TONE_RADIANT,
|
|
PSLR_JPEG_IMAGE_TONE_CROSS_PROCESSING,
|
|
PSLR_JPEG_IMAGE_TONE_FLAT,
|
|
PSLR_JPEG_IMAGE_TONE_AUTO,
|
|
PSLR_JPEG_IMAGE_TONE_MAX
|
|
} pslr_jpeg_image_tone_t;
|
|
|
|
typedef enum {
|
|
PSLR_WHITE_BALANCE_MODE_AUTO,
|
|
PSLR_WHITE_BALANCE_MODE_DAYLIGHT,
|
|
PSLR_WHITE_BALANCE_MODE_SHADE,
|
|
PSLR_WHITE_BALANCE_MODE_CLOUDY,
|
|
PSLR_WHITE_BALANCE_MODE_FLUORESCENT_DAYLIGHT_COLOR,
|
|
PSLR_WHITE_BALANCE_MODE_FLUORESCENT_DAYLIGHT_WHITE,
|
|
PSLR_WHITE_BALANCE_MODE_FLUORESCENT_COOL_WHITE,
|
|
PSLR_WHITE_BALANCE_MODE_TUNGSTEN,
|
|
PSLR_WHITE_BALANCE_MODE_FLASH,
|
|
PSLR_WHITE_BALANCE_MODE_MANUAL,
|
|
PSLR_WHITE_BALANCE_MODE_MANUAL_2,
|
|
PSLR_WHITE_BALANCE_MODE_MANUAL_3,
|
|
PSLR_WHITE_BALANCE_MODE_KELVIN_1,
|
|
PSLR_WHITE_BALANCE_MODE_KELVIN_2,
|
|
PSLR_WHITE_BALANCE_MODE_KELVIN_3,
|
|
PSLR_WHITE_BALANCE_MODE_FLUORESCENT_WARM_WHITE,
|
|
PSLR_WHITE_BALANCE_MODE_CTE,
|
|
PSLR_WHITE_BALANCE_MODE_MULTI_AUTO,
|
|
PSLR_WHITE_BALANCE_MODE_MAX
|
|
} pslr_white_balance_mode_t;
|
|
|
|
typedef enum {
|
|
PSLR_CUSTOM_EV_STEPS_1_2,
|
|
PSLR_CUSTOM_EV_STEPS_1_3,
|
|
PSLR_CUSTOM_EV_STEPS_MAX
|
|
} pslr_custom_ev_steps_t;
|
|
|
|
typedef enum {
|
|
PSLR_CUSTOM_SENSITIVITY_STEPS_1EV,
|
|
PSLR_CUSTOM_SENSITIVITY_STEPS_AS_EV,
|
|
PSLR_CUSTOM_SENSITIVITY_STEPS_MAX
|
|
} pslr_custom_sensitivity_steps_t;
|
|
|
|
typedef enum {
|
|
PSLR_IMAGE_FORMAT_JPEG,
|
|
PSLR_IMAGE_FORMAT_RAW,
|
|
PSLR_IMAGE_FORMAT_RAW_PLUS,
|
|
PSLR_IMAGE_FORMAT_MAX
|
|
} pslr_image_format_t;
|
|
|
|
typedef enum {
|
|
PSLR_RAW_FORMAT_PEF,
|
|
PSLR_RAW_FORMAT_DNG,
|
|
PSLR_RAW_FORMAT_MAX
|
|
} pslr_raw_format_t;
|
|
|
|
typedef enum {
|
|
PSLR_SCENE_MODE_NONE,
|
|
PSLR_SCENE_MODE_HISPEED,
|
|
PSLR_SCENE_MODE_DOF,
|
|
PSLR_SCENE_MODE_MTF,
|
|
PSLR_SCENE_MODE_STANDARD,
|
|
PSLR_SCENE_MODE_PORTRAIT,
|
|
PSLR_SCENE_MODE_LANDSCAPE,
|
|
PSLR_SCENE_MODE_MACRO,
|
|
PSLR_SCENE_MODE_SPORT,
|
|
PSLR_SCENE_MODE_NIGHTSCENEPORTRAIT,
|
|
PSLR_SCENE_MODE_NOFLASH,
|
|
PSLR_SCENE_MODE_NIGHTSCENE,
|
|
PSLR_SCENE_MODE_SURFANDSNOW,
|
|
PSLR_SCENE_MODE_TEXT,
|
|
PSLR_SCENE_MODE_SUNSET,
|
|
PSLR_SCENE_MODE_KIDS,
|
|
PSLR_SCENE_MODE_PET,
|
|
PSLR_SCENE_MODE_CANDLELIGHT,
|
|
PSLR_SCENE_MODE_MUSEUM,
|
|
PSLR_SCENE_MODE_19,
|
|
PSLR_SCENE_MODE_FOOD,
|
|
PSLR_SCENE_MODE_STAGE,
|
|
PSLR_SCENE_MODE_NIGHTSNAP,
|
|
PSLR_SCENE_MODE_SWALLOWDOF,
|
|
PSLR_SCENE_MODE_24,
|
|
PSLR_SCENE_MODE_NIGHTSCENEHDR,
|
|
PSLR_SCENE_MODE_BLUESKY,
|
|
PSLR_SCENE_MODE_FOREST,
|
|
PSLR_SCENE_MODE_28,
|
|
PSLR_SCENE_MODE_BLACKLIGHTSILHOUETTE,
|
|
PSLR_SCENE_MODE_MAX
|
|
} pslr_scene_mode_t;
|
|
|
|
int str_comparison_i (const char *s1, const char *s2, int n);
|
|
int find_in_array( const char** array, int length, char* str );
|
|
|
|
pslr_color_space_t get_pslr_color_space( char *str );
|
|
const char *get_pslr_color_space_str( pslr_color_space_t value );
|
|
|
|
pslr_af_mode_t get_pslr_af_mode( char *str );
|
|
const char *get_pslr_af_mode_str( pslr_af_mode_t value );
|
|
|
|
pslr_ae_metering_t get_pslr_ae_metering( char *str );
|
|
const char *get_pslr_ae_metering_str( pslr_ae_metering_t value );
|
|
|
|
pslr_flash_mode_t get_pslr_flash_mode( char *str );
|
|
const char *get_pslr_flash_mode_str( pslr_flash_mode_t value );
|
|
|
|
pslr_drive_mode_t get_pslr_drive_mode( char *str );
|
|
const char *get_pslr_drive_mode_str( pslr_drive_mode_t value );
|
|
|
|
pslr_af_point_sel_t get_pslr_af_point_sel( char *str );
|
|
const char *get_pslr_af_point_sel_str( pslr_af_point_sel_t value );
|
|
|
|
char *get_pslr_af11_point_str( uint32_t value );
|
|
|
|
pslr_jpeg_image_tone_t get_pslr_jpeg_image_tone( char *str );
|
|
const char *get_pslr_jpeg_image_tone_str( pslr_jpeg_image_tone_t value );
|
|
|
|
pslr_white_balance_mode_t get_pslr_white_balance_mode( char *str );
|
|
const char *get_pslr_white_balance_mode_str( pslr_white_balance_mode_t value );
|
|
|
|
/* pslr_custom_ev_steps_t get_pslr_custom_ev_steps( char *str ); */
|
|
const char *get_pslr_custom_ev_steps_str( pslr_custom_ev_steps_t value );
|
|
|
|
const char *get_pslr_custom_sensitivity_steps_str( pslr_custom_sensitivity_steps_t value );
|
|
|
|
const char *get_pslr_image_format_str( pslr_image_format_t value );
|
|
|
|
const char *get_pslr_raw_format_str( pslr_raw_format_t value );
|
|
|
|
const char *get_pslr_scene_mode_str( pslr_scene_mode_t value );
|
|
|
|
#endif /* !defined(CAMLIBS_PENTAX_PSLR_ENUM_H) */
|