summaryrefslogtreecommitdiffstats
path: root/src/blueshift_drm_c.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/blueshift_drm_c.h')
-rw-r--r--src/blueshift_drm_c.h239
1 files changed, 0 insertions, 239 deletions
diff --git a/src/blueshift_drm_c.h b/src/blueshift_drm_c.h
deleted file mode 100644
index 36913cc..0000000
--- a/src/blueshift_drm_c.h
+++ /dev/null
@@ -1,239 +0,0 @@
-/**
- * Copyright © 2014 Mattias Andrée (maandree@member.fsf.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU 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 General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#ifndef BLUESHIFT_DRM_C_H
-#define BLUESHIFT_DRM_C_H
-
-
-#include <stdlib.h>
-#include <stdio.h>
-#include <string.h>
-#include <unistd.h>
-#include <sys/stat.h>
-#include <sys/types.h>
-#include <fcntl.h>
-#include <alloca.h>
-#include <limits.h>
-
-#ifndef O_CLOEXEC
-# define O_CLOEXEC 02000000
-#endif
-#ifndef PATH_MAX
-# define PATH_MAX 4096
-#endif
-
-/* Requires video group */
-#include <xf86drm.h>
-#include <xf86drmMode.h>
-
-
-
-/**
- * Resources for an open connection to a graphics card
- */
-typedef struct _card_connection
-{
- /**
- * File descriptor for the connection
- */
- int fd;
-
- /**
- * Card resources
- */
- drmModeRes* res;
-
- /**
- * Resources for open connectors
- */
- drmModeConnector** connectors;
-
-} card_connection;
-
-
-
-/**
- * Free all resources, but you need to close all connections first
- */
-void blueshift_drm_close(void);
-
-/**
- * Get the number of cards present on the system
- *
- * @return The number of cards present on the system
- */
-int blueshift_drm_card_count(void);
-
-/**
- * Open connection to a graphics card
- *
- * @param card_index The index of the graphics card
- * @return -1 on failure, otherwise an identifier for the connection to the card
- */
-int blueshift_drm_open_card(int card_index);
-
-/**
- * Update the resource, required after `blueshift_drm_open_card`
- *
- * @param connection The identifier for the connection to the card
- */
-void blueshift_drm_update_card(int connection);
-
-/**
- * Close connection to the graphics card
- *
- * @param connection The identifier for the connection to the card
- */
-void blueshift_drm_close_card(int connection);
-
-/**
- * Return the number of CRTC:s on the opened card
- *
- * @param connection The identifier for the connection to the card
- * @return The number of CRTC:s on the opened card
- */
-int blueshift_drm_crtc_count(int connection) __attribute__((pure));
-
-/**
- * Return the number of connectors on the opened card
- *
- * @param connection The identifier for the connection to the card
- * @return The number of connectors on the opened card
- */
-int blueshift_drm_connector_count(int connection) __attribute__((pure));
-
-/**
- * Return the size of the gamma ramps on a CRTC
- *
- * @param connection The identifier for the connection to the card
- * @param crtc_index The index of the CRTC
- * @return The size of the gamma ramps on a CRTC
- */
-int blueshift_drm_gamma_size(int connection, int crtc_index);
-
-/**
- * Get the current gamma ramps of a monitor
- *
- * @param connection The identifier for the connection to the card
- * @param crtc_index The index of the CRTC to read from
- * @param gamma_size The size a gamma ramp
- * @param red Storage location for the red gamma ramp
- * @param green Storage location for the green gamma ramp
- * @param blue Storage location for the blue gamma ramp
- * @return Zero on success
- */
-int blueshift_drm_get_gamma_ramps(int connection, int crtc_index, int gamma_size, uint16_t* red, uint16_t* green, uint16_t* blue);
-
-/**
- * Set the gamma ramps of the of a monitor
- *
- * @param connection The identifier for the connection to the card
- * @param crtc_index The index of the CRTC to read from
- * @param gamma_size The size a gamma ramp
- * @param red The red gamma ramp
- * @param green The green gamma ramp
- * @param blue The blue gamma ramp
- * @return Zero on success
- */
-int blueshift_drm_set_gamma_ramps(int connection, int crtc_index, int gamma_size, uint16_t* red, uint16_t* green, uint16_t* blue);
-
-/**
- * Acquire information about a connector
- *
- * @param connection The identifier for the connection to the card
- * @param connector_index The index of the connector
- */
-void blueshift_drm_open_connector(int connection, int connector_index);
-
-/**
- * Release information about a connector
- *
- * @param connection The identifier for the connection to the card
- * @param connector_index The index of the connector
- */
-void blueshift_drm_close_connector(int connection, int connector_index);
-
-/**
- * Get the physical width the monitor connected to a connector
- *
- * @param connection The identifier for the connection to the card
- * @param connector_index The index of the connector
- * @return The physical width of the monitor in millimetres, 0 if unknown or not connected
- */
-int blueshift_drm_get_width(int connection, int connector_index) __attribute__((pure));
-
-/**
- * Get the physical height the monitor connected to a connector
- *
- * @param connection The identifier for the connection to the card
- * @param connector_index The index of the connector
- * @return The physical height of the monitor in millimetres, 0 if unknown or not connected
- */
-int blueshift_drm_get_height(int connection, int connector_index) __attribute__((pure));
-
-/**
- * Get whether a monitor is connected to a connector
- *
- * @param connection The identifier for the connection to the card
- * @param connector_index The index of the connector
- * @return 1 if there is a connection, 0 otherwise, -1 if unknown
- */
-int blueshift_drm_is_connected(int connection, int connector_index) __attribute__((pure));
-
-/**
- * Get the index of the CRTC of the monitor connected to a connector
- *
- * @param connection The identifier for the connection to the card
- * @param connector_index The index of the connector
- * @return The index of the CRTC
- */
-int blueshift_drm_get_crtc(int connection, int connector_index);
-
-/**
- * Get the index of the type of a connector
- *
- * @param connection The identifier for the connection to the card
- * @param connector_index The index of the connector
- * @return The connector type by index, 0 for unknown
- */
-int blueshift_drm_get_connector_type_index(int connection, int connector_index) __attribute__((pure));
-
-/**
- * Get the name of the type of a connector
- *
- * @param connection The identifier for the connection to the card
- * @param connector_index The index of the connector
- * @return The connector type by name, "Unknown" if not identifiable,
- * "Unrecognised" if Blueshift does not recognise it.
- */
-const char* blueshift_drm_get_connector_type_name(int connection, int connector_index) __attribute__((pure));
-
-/**
- * Get the extended display identification data for the monitor connected to a connector
- *
- * @param connection The identifier for the connection to the card
- * @param connector_index The index of the connector
- * @param edid Storage location for the EDID, it should be 128 bytes, 256 bytes + zero termination if hex
- * @param size The size allocated to `edid` excluding your zero termination
- * @param hexadecimal Whether to convert to hexadecimal representation, this is preferable
- * @return The length of the found value, 0 if none, as if hex is false
- */
-long blueshift_drm_get_edid(int connection, int connector_index, char* edid, long size, int hexadecimal);
-
-
-
-#endif
-