~ubuntu-branches/ubuntu/intrepid/xserver-xgl/intrepid

« back to all changes in this revision

Viewing changes to hw/xfree86/os-support/solaris/sun_kbd.h

  • Committer: Bazaar Package Importer
  • Author(s): Matthew Garrett
  • Date: 2006-02-13 14:21:43 UTC
  • Revision ID: james.westby@ubuntu.com-20060213142143-mad6z9xzem7hzxz9
Tags: upstream-7.0.0
ImportĀ upstreamĀ versionĀ 7.0.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/* Copyright 2005 Sun Microsystems, Inc.  All rights reserved.
 
2
 *
 
3
 * Permission is hereby granted, free of charge, to any person obtaining a
 
4
 * copy of this software and associated documentation files (the
 
5
 * "Software"), to deal in the Software without restriction, including
 
6
 * without limitation the rights to use, copy, modify, merge, publish,
 
7
 * distribute, and/or sell copies of the Software, and to permit persons
 
8
 * to whom the Software is furnished to do so, provided that the above
 
9
 * copyright notice(s) and this permission notice appear in all copies of
 
10
 * the Software and that both the above copyright notice(s) and this
 
11
 * permission notice appear in supporting documentation.
 
12
 * 
 
13
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
 
14
 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
 
15
 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
 
16
 * OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
 
17
 * HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL
 
18
 * INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING
 
19
 * FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
 
20
 * NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
 
21
 * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 
22
 * 
 
23
 * Except as contained in this notice, the name of a copyright holder
 
24
 * shall not be used in advertising or otherwise to promote the sale, use
 
25
 * or other dealings in this Software without prior written authorization
 
26
 * of the copyright holder.
 
27
 */
 
28
 
 
29
#ifndef _XORG_SUN_KBD_H_
 
30
#define _XORG_SUN_KBD_H_
 
31
 
 
32
/*
 
33
 * Keyboard common implementation routines shared by "keyboard" driver
 
34
 * in sun_io.c and "kbd" driver in sun_kbd.c
 
35
 */
 
36
 
 
37
typedef struct {
 
38
    int                 kbdFD;
 
39
    const char *        devName;
 
40
    int                 ktype;          /* Keyboard type from KIOCTYPE */
 
41
    Bool                kbdActive;      /* Have we set kbd modes for X? */
 
42
    int                 otranslation;   /* Original translation mode */
 
43
    int                 odirect;        /* Original "direct" mode setting */
 
44
    unsigned char       oleds;          /* Original LED state */
 
45
    const char *        strmod;         /* Streams module pushed on kbd device */
 
46
    const char *        audioDevName;   /* Audio device path to use for bell
 
47
                                           or NULL to use keyboard beeper */
 
48
    enum {AB_INITIALIZING, AB_NORMAL} audioState;
 
49
    const unsigned char *keyMap;
 
50
} sunKbdPrivRec, *sunKbdPrivPtr;
 
51
 
 
52
/* sun_kbd.c */
 
53
extern int  sunKbdOpen  (const char *devName, pointer options);
 
54
extern int  sunKbdInit  (sunKbdPrivPtr priv, int kbdFD,
 
55
                         const char *devName, pointer options);
 
56
extern int  sunKbdOn    (sunKbdPrivPtr priv);
 
57
extern int  sunKbdOff   (sunKbdPrivPtr priv);
 
58
    
 
59
extern void sunKbdSoundBell     (sunKbdPrivPtr priv,
 
60
                                 int loudness, int pitch, int duration);
 
61
 
 
62
extern void sunKbdSetLeds       (sunKbdPrivPtr priv, int leds);
 
63
extern int  sunKbdGetLeds       (sunKbdPrivPtr priv);
 
64
extern void sunKbdSetRepeat     (sunKbdPrivPtr priv, char rad);
 
65
 
 
66
/* sun_kbdEv.c */
 
67
#include <sys/vuid_event.h>
 
68
extern void sunPostKbdEvent     (int ktype, Firm_event *event);
 
69
 
 
70
extern const unsigned char *sunGetKbdMapping(int ktype);
 
71
 
 
72
#endif