CHDK_DE Vorschauversion  Trunk Rev. 6014
 Alle Datenstrukturen Dateien Funktionen Variablen Typdefinitionen Aufzählungen Aufzählungswerte Makrodefinitionen
script_shoot_hook.c-Dateireferenz
#include "stdlib.h"
#include "string.h"
#include "ctype.h"
#include "script_shoot_hook.h"
#include "script_api.h"
+ Include-Abhängigkeitsdiagramm für script_shoot_hook.c:

gehe zum Quellcode dieser Datei

Datenstrukturen

struct  script_shoot_hook_t
 

Funktionen

void script_shoot_hooks_reset (void)
 
void script_shoot_hook_set (int hook, int timeout)
 
void rawop_update_hook_status (int active)
 
void script_shoot_hook_run (int hook)
 
int script_shoot_hook_ready (int hook)
 
void script_shoot_hook_continue (int hook)
 
int script_shoot_hook_count (int hook)
 

Variablen

const char * shoot_hook_names [SCRIPT_NUM_SHOOT_HOOKS]
 
static script_shoot_hook_t hooks [SCRIPT_NUM_SHOOT_HOOKS]
 

Dokumentation der Funktionen

void rawop_update_hook_status ( int  active)

Definiert in Zeile 751 der Datei rawhookops.c.

751  {
752  if(active) {
754  init_raw_params();
755  } else {
756  raw_buffer_valid = 0;
757  }
758 }
void script_shoot_hook_continue ( int  hook)

Definiert in Zeile 66 der Datei script_shoot_hook.c.

67 {
68  hooks[hook].active = 0;
69 }
int script_shoot_hook_count ( int  hook)

Definiert in Zeile 72 der Datei script_shoot_hook.c.

73 {
74  return hooks[hook].count;
75 }
int script_shoot_hook_ready ( int  hook)

Definiert in Zeile 60 der Datei script_shoot_hook.c.

61 {
62  return hooks[hook].active;
63 }
void script_shoot_hook_run ( int  hook)

Definiert in Zeile 35 der Datei script_shoot_hook.c.

36 {
37  int timeleft = hooks[hook].timeout;
38  hooks[hook].count++;
39  // only mark hook active if it was set
40  if(timeleft > 0) {
41  // notify rawop when in raw hook, so it can update valid raw status
42  // and values that might change between shots
43  if(hook == SCRIPT_SHOOT_HOOK_RAW) {
45  }
46  hooks[hook].active = 1;
47  while(timeleft > 0 && hooks[hook].active) {
48  msleep(10);
49  timeleft -= 10;
50  }
51  if(hook == SCRIPT_SHOOT_HOOK_RAW) {
53  }
54  hooks[hook].active = 0;
55  }
56  // TODO may want to record timeout
57 }
void script_shoot_hook_set ( int  hook,
int  timeout 
)

Definiert in Zeile 28 der Datei script_shoot_hook.c.

28  {
29  hooks[hook].timeout = timeout;
30 }
void script_shoot_hooks_reset ( void  )

Definiert in Zeile 22 der Datei script_shoot_hook.c.

23 {
24  memset(hooks,0,sizeof(hooks));
25 }

Variablen-Dokumentation

Definiert in Zeile 19 der Datei script_shoot_hook.c.

const char* shoot_hook_names[SCRIPT_NUM_SHOOT_HOOKS]
Initialisierung:
= {
"hook_preshoot",
"hook_shoot",
"hook_raw",
}

Definiert in Zeile 13 der Datei script_shoot_hook.c.