BPicture: Fix archive constructor.
[haiku.git] / src / add-ons / accelerants / intel_extreme / accelerant_protos.h
blobfc7031d77dc33b1f7f9900be8dc5921a3c5079f6
1 /*
2 * Copyright 2006-2007, Haiku, Inc. All Rights Reserved.
3 * Distributed under the terms of the MIT License.
5 * Authors:
6 * Axel Dörfler, axeld@pinc-software.de
7 */
8 #ifndef ACCELERANT_PROTOS_H
9 #define ACCELERANT_PROTOS_H
12 #include <Accelerant.h>
13 #include "video_overlay.h"
16 #ifdef __cplusplus
17 extern "C" {
18 #endif
20 void spin(bigtime_t delay);
22 // general
23 status_t intel_init_accelerant(int fd);
24 ssize_t intel_accelerant_clone_info_size(void);
25 void intel_get_accelerant_clone_info(void* data);
26 status_t intel_clone_accelerant(void* data);
27 void intel_uninit_accelerant(void);
28 status_t intel_get_accelerant_device_info(accelerant_device_info* info);
29 sem_id intel_accelerant_retrace_semaphore(void);
31 // modes & constraints
32 uint32 intel_accelerant_mode_count(void);
33 status_t intel_get_mode_list(display_mode* dm);
34 status_t intel_propose_display_mode(display_mode* target,
35 const display_mode* low, const display_mode* high);
36 status_t intel_set_display_mode(display_mode* mode);
37 status_t intel_get_display_mode(display_mode* currentMode);
38 status_t intel_get_edid_info(void* info, size_t size, uint32* _version);
39 status_t intel_get_frame_buffer_config(frame_buffer_config* config);
40 status_t intel_get_pixel_clock_limits(display_mode* mode, uint32* low,
41 uint32* high);
42 status_t intel_move_display(uint16 hDisplayStart, uint16 vDisplayStart);
43 status_t intel_get_timing_constraints(display_timing_constraints* constraints);
44 void intel_set_indexed_colors(uint count, uint8 first, uint8* colorData,
45 uint32 flags);
47 // DPMS
48 uint32 intel_dpms_capabilities(void);
49 uint32 intel_dpms_mode(void);
50 status_t intel_set_dpms_mode(uint32 flags);
52 // cursor
53 status_t intel_set_cursor_shape(uint16 width, uint16 height, uint16 hotX,
54 uint16 hotY, uint8* andMask, uint8* xorMask);
55 void intel_move_cursor(uint16 x, uint16 y);
56 void intel_show_cursor(bool isVisible);
58 // accelerant engine
59 uint32 intel_accelerant_engine_count(void);
60 status_t intel_acquire_engine(uint32 capabilities, uint32 maxWait,
61 sync_token* syncToken, engine_token** _engineToken);
62 status_t intel_release_engine(engine_token* engineToken, sync_token* syncToken);
63 void intel_wait_engine_idle(void);
64 status_t intel_get_sync_token(engine_token* engineToken, sync_token* syncToken);
65 status_t intel_sync_to_token(sync_token* syncToken);
67 // 2D acceleration
68 void intel_screen_to_screen_blit(engine_token* engineToken,
69 blit_params* list, uint32 count);
70 void intel_fill_rectangle(engine_token* engineToken, uint32 color,
71 fill_rect_params* list, uint32 count);
72 void intel_invert_rectangle(engine_token* engineToken, fill_rect_params* list,
73 uint32 count);
74 void intel_fill_span(engine_token* engineToken, uint32 color, uint16* list,
75 uint32 count);
77 // overlay
78 uint32 intel_overlay_count(const display_mode* mode);
79 const uint32* intel_overlay_supported_spaces(const display_mode* mode);
80 uint32 intel_overlay_supported_features(uint32 colorSpace);
81 const overlay_buffer* intel_allocate_overlay_buffer(color_space space,
82 uint16 width, uint16 height);
83 status_t intel_release_overlay_buffer(const overlay_buffer* buffer);
84 status_t intel_get_overlay_constraints(const display_mode* mode,
85 const overlay_buffer* buffer, overlay_constraints* constraints);
86 overlay_token intel_allocate_overlay(void);
87 status_t intel_release_overlay(overlay_token overlayToken);
88 status_t intel_configure_overlay(overlay_token overlayToken,
89 const overlay_buffer* buffer, const overlay_window* window,
90 const overlay_view* view);
91 status_t i965_configure_overlay(overlay_token overlayToken,
92 const overlay_buffer* buffer, const overlay_window* window,
93 const overlay_view* view);
95 #ifdef __cplusplus
97 #endif
99 #endif /* ACCELERANT_PROTOS_H */