Logo Search packages:      
Sourcecode: videogen version File versions  Download package

videogen.h

/* 
 * +-------------------------------------------------------+
 * |                                                       |
 * |     videogen                                          |
 * |                                                       |
 * |     a simple XFree86 Modeline calculator              |
 * |     (c) 1997-2002, Szabolcs Rumi                      |   
 * |                                                       |
 * |     http://www.rtfm.hu/videogen                       |
 * |                                                       |
 * |     the videogen package is distributed under the     |
 * |     GNU General Public License Version 2 (GPLv2)      |
 * |                                                       |
 * +-------------------------------------------------------+   
 */

#ifndef VIDEOGEN_H
# define VIDEOGEN_H





#define ERR_SYSTEM      100   /* environmental or system error */
#define ERR_CMDLINE     101   /* command line error */
#define ERR_CFGFILE     102   /* config file error */
#define ERR_RES         103   /* bad resolution */
#define ERR_MDC         104   /* bad max dot clock */
#define ERR_MHF         105   /* bad max horizontal freq */
#define ERR_MVF         106   /* bad max vertical freq */



#define VL_QUIET  0
#define VL_NORMAL 1
#define VL_VERBOSE      2
#define VL_DEBUG  3





typedef struct {
      unsigned int hres;
      unsigned int vres;
} resolution_t;

extern char *cfgfile;
extern unsigned int verbose;
extern unsigned int fbset;
extern unsigned int nvidia;
extern unsigned int num_modes;
extern resolution_t modes[];
extern double max_dotclk;
extern double max_hfreq;
extern double max_vfreq;
extern double desired_vfreq;
extern double hvisible;
extern double vvisible;
extern double hfporch;
extern double hbporch;
extern double hsync;
extern double vfporch;
extern double vbporch;
extern double vsync;



extern void banner (void);
extern void usage (void);

extern int pmsg (int, char *, ...);
extern char *tpathexp (char *, char *);





#define ARG_FOUND       0x1
#define ARG_FOUND_PARM        0x2

typedef struct
{
      char *ao_option;        /* option string to be matched */
      char *ao_parameter;           /* argument parameter parsed */
      int ao_flags;                 /* flags */
}
arg_opt_t;

typedef struct
{
      int aindex;             /* command line argument currently examined */
      int oindex;             /* option the current argument is believed to match */

      int argc;               /* argc to be parsed */
      char **argv;                  /* argv to be parsed */

      arg_opt_t (*options)[];       /* pre-defined options list */
}
arg_parse_t;

extern arg_opt_t opts[];
extern int arg_action (arg_parse_t *);
extern int arg_parse (arg_parse_t *, int (*) (arg_parse_t *));



extern int commit_verbose (int, unsigned int *, unsigned int);
extern int commit_fbset (int, unsigned int *, unsigned int);
extern int commit_nvidia (int, unsigned int *, unsigned int);
extern int commit_mode (int, resolution_t (*)[], unsigned int *, unsigned int, unsigned int);
extern int commit_max_dotclk (int, double *, double);
extern int commit_max_hfreq (int, double *, double);
extern int commit_max_vfreq (int, double *, double);
extern int commit_desired_vfreq (int, double *, double);
extern int commit_hvisible (int, double *, double);
extern int commit_vvisible (int, double *, double);
extern int commit_hfporch (int, double *, double);
extern int commit_hbporch (int, double *, double);
extern int commit_hsync (int, double *, double);
extern int commit_vfporch (int, double *, double);
extern int commit_vbporch (int, double *, double);
extern int commit_vsync (int, double *, double);





#endif /* !VIDEOGEN_H */
/* EOF */

Generated by  Doxygen 1.6.0   Back to index