Tool for laying out displays on Linux
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

67 lines
1.2 KiB

<?php
declare(strict_types=1);
namespace App;
/**
* Provide an interface to manipulating outputs
*
* @author Adam Pippin <hello@adampippin.ca>
*/
interface ILayoutDriver
{
/**
* Set the offset of an output
*
* @param string $output
* @param int $x
* @param int $y
* @return void
*/
public function setOffset(string $output, int $x, int $y): void;
/**
* Get the offset of an output
*
* @param string $output
* @return int[] x, y
*/
public function getOffset(string $output): array;
/**
* Set the dimensions of the output
*
* @param string $output
* @param int $x
* @param int $y
* @return void
*/
public function setDimensions(string $output, int $x, int $y): void;
/**
* Get the dimensions of an output
*
* @param string $output
* @return int[] x, y
*/
public function getDimensions(string $output): array;
/**
* Check whether an output is connected
*
* @param string $output
* @return bool
*/
public function isConnected(string $output): bool;
/**
* Check whether the output is considered primary
*
* @param string $output
* @return bool
*/
public function isPrimary(string $output): bool;
}