\hypertarget{group__Ecore__FB__Group}{}\doxysection{Ecore\+\_\+\+FB -\/ Frame buffer convenience functions.}
\label{group__Ecore__FB__Group}\index{Ecore\_FB -\/ Frame buffer convenience functions.@{Ecore\_FB -\/ Frame buffer convenience functions.}}


Functions used to set up and shut down the Ecore\+\_\+\+Framebuffer functions.  


\doxysubsection*{Modules}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{group__Ecore__FB__Calibrate__Group}{Framebuffer Calibration Functions}}
\begin{DoxyCompactList}\small\item\em Functions that calibrate the screen. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{group__Ecore__FB__Group_ga891e523f10745c1999352a0c73a786f8}\label{group__Ecore__FB__Group_ga891e523f10745c1999352a0c73a786f8}} 
\#define {\bfseries EV\+\_\+\+CNT}~(EV\+\_\+\+MAX+1)
\end{DoxyCompactItemize}
\doxysubsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{group__Ecore__FB__Group_ga1d8690825755681ab7b5de3d3403b6e0}\label{group__Ecore__FB__Group_ga1d8690825755681ab7b5de3d3403b6e0}} 
typedef struct \+\_\+\+Ecore\+\_\+\+Fb\+\_\+\+Input\+\_\+\+Device {\bfseries Ecore\+\_\+\+Fb\+\_\+\+Input\+\_\+\+Device}
\begin{DoxyCompactList}\small\item\em Input device handler. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{group__Ecore__FB__Group_ga0c94b4f178809f8c4ff237759e41c8da}\label{group__Ecore__FB__Group_ga0c94b4f178809f8c4ff237759e41c8da}} 
typedef enum \mbox{\hyperlink{group__Ecore__FB__Group_ga226d05e7ffc07e7fb86aa76a95e1d0e8}{\+\_\+\+Ecore\+\_\+\+Fb\+\_\+\+Input\+\_\+\+Device\+\_\+\+Cap}} {\bfseries Ecore\+\_\+\+Fb\+\_\+\+Input\+\_\+\+Device\+\_\+\+Cap}
\begin{DoxyCompactList}\small\item\em Device capabilities. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Enumerations}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{group__Ecore__FB__Group_ga226d05e7ffc07e7fb86aa76a95e1d0e8}\label{group__Ecore__FB__Group_ga226d05e7ffc07e7fb86aa76a95e1d0e8}} 
enum \mbox{\hyperlink{group__Ecore__FB__Group_ga226d05e7ffc07e7fb86aa76a95e1d0e8}{\+\_\+\+Ecore\+\_\+\+Fb\+\_\+\+Input\+\_\+\+Device\+\_\+\+Cap}} \{ \newline
{\bfseries ECORE\+\_\+\+FB\+\_\+\+INPUT\+\_\+\+DEVICE\+\_\+\+CAP\+\_\+\+NONE} = 0x00000000
, \newline
{\bfseries ECORE\+\_\+\+FB\+\_\+\+INPUT\+\_\+\+DEVICE\+\_\+\+CAP\+\_\+\+RELATIVE} = 0x00000001
, \newline
{\bfseries ECORE\+\_\+\+FB\+\_\+\+INPUT\+\_\+\+DEVICE\+\_\+\+CAP\+\_\+\+ABSOLUTE} = 0x00000002
, \newline
{\bfseries ECORE\+\_\+\+FB\+\_\+\+INPUT\+\_\+\+DEVICE\+\_\+\+CAP\+\_\+\+KEYS\+\_\+\+OR\+\_\+\+BUTTONS} = 0x00000004
 \}
\begin{DoxyCompactList}\small\item\em Device capabilities. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{group__Ecore__FB__Group_ga7a2e6367072975dbd32d5c88102b5272}\label{group__Ecore__FB__Group_ga7a2e6367072975dbd32d5c88102b5272}} 
static void {\bfseries nosigint} (int val)
\item 
EAPI int \mbox{\hyperlink{group__Ecore__FB__Group_gab74cf87e3b0ed43c056add2147244fed}{ecore\+\_\+fb\+\_\+init}} (const char $\ast$name)
\begin{DoxyCompactList}\small\item\em Initialize the Ecore\+\_\+\+Fb library. \end{DoxyCompactList}\item 
EAPI int \mbox{\hyperlink{group__Ecore__FB__Group_gaefa9ae93cf6163379747349bb8cc82f7}{ecore\+\_\+fb\+\_\+shutdown}} (void)
\begin{DoxyCompactList}\small\item\em Shut down the Ecore\+\_\+\+Fb library. \end{DoxyCompactList}\item 
EAPI void \mbox{\hyperlink{group__Ecore__FB__Group_gad169f77434891ebc69d7d5749bed5af8}{ecore\+\_\+fb\+\_\+size\+\_\+get}} (int $\ast$w, int $\ast$h)
\begin{DoxyCompactList}\small\item\em Retrieve the width and height of the current frame buffer in pixels. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{group__Ecore__FB__Group_gaf2bb1ad2c3c48cee133ab00109d98282}\label{group__Ecore__FB__Group_gaf2bb1ad2c3c48cee133ab00109d98282}} 
static void {\bfseries \+\_\+ecore\+\_\+fb\+\_\+size\+\_\+get} (const char $\ast$name, int $\ast$w, int $\ast$h)
\item 
EAPI void \mbox{\hyperlink{group__Ecore__FB__Group_ga71e1c32188a6b60d41074694d187acd8}{ecore\+\_\+fb\+\_\+callback\+\_\+gain\+\_\+set}} (void($\ast$func)(void $\ast$data), void $\ast$data)
\begin{DoxyCompactList}\small\item\em Set a callback called when a virtual terminal is gained. \end{DoxyCompactList}\item 
EAPI void \mbox{\hyperlink{group__Ecore__FB__Group_gab57aceeb75fda692f86c14cad54b0adf}{ecore\+\_\+fb\+\_\+callback\+\_\+lose\+\_\+set}} (void($\ast$func)(void $\ast$data), void $\ast$data)
\begin{DoxyCompactList}\small\item\em Set a callback called when a virtual terminal is lost. \end{DoxyCompactList}\item 
EAPI \mbox{\hyperlink{group__Ecore__FB__Group_ga1d8690825755681ab7b5de3d3403b6e0}{Ecore\+\_\+\+Fb\+\_\+\+Input\+\_\+\+Device}} $\ast$ \mbox{\hyperlink{group__Ecore__FB__Group_gad63427b3b6a5f5edde226673d6e71f65}{ecore\+\_\+fb\+\_\+input\+\_\+device\+\_\+open}} (const char $\ast$dev)
\begin{DoxyCompactList}\small\item\em Open an input device. \end{DoxyCompactList}\item 
EAPI void \mbox{\hyperlink{group__Ecore__FB__Group_ga5bc9b86d21424f4661fcb3cefb4e0c86}{ecore\+\_\+fb\+\_\+input\+\_\+device\+\_\+close}} (\mbox{\hyperlink{group__Ecore__FB__Group_ga1d8690825755681ab7b5de3d3403b6e0}{Ecore\+\_\+\+Fb\+\_\+\+Input\+\_\+\+Device}} $\ast$dev)
\begin{DoxyCompactList}\small\item\em Close the given device. \end{DoxyCompactList}\item 
EAPI void \mbox{\hyperlink{group__Ecore__FB__Group_ga3ba1e8070ac6af46ca45c490c007a83b}{ecore\+\_\+fb\+\_\+input\+\_\+device\+\_\+listen}} (\mbox{\hyperlink{group__Ecore__FB__Group_ga1d8690825755681ab7b5de3d3403b6e0}{Ecore\+\_\+\+Fb\+\_\+\+Input\+\_\+\+Device}} $\ast$dev, \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} listen)
\begin{DoxyCompactList}\small\item\em Set the listen mode for an input device . \end{DoxyCompactList}\item 
EAPI const char $\ast$ \mbox{\hyperlink{group__Ecore__FB__Group_gaa729c994487210bf02cdcb9f60760d32}{ecore\+\_\+fb\+\_\+input\+\_\+device\+\_\+name\+\_\+get}} (\mbox{\hyperlink{group__Ecore__FB__Group_ga1d8690825755681ab7b5de3d3403b6e0}{Ecore\+\_\+\+Fb\+\_\+\+Input\+\_\+\+Device}} $\ast$dev)
\begin{DoxyCompactList}\small\item\em Retrieve the name of the given device. \end{DoxyCompactList}\item 
EAPI \mbox{\hyperlink{group__Ecore__FB__Group_ga0c94b4f178809f8c4ff237759e41c8da}{Ecore\+\_\+\+Fb\+\_\+\+Input\+\_\+\+Device\+\_\+\+Cap}} \mbox{\hyperlink{group__Ecore__FB__Group_gad81d5c08c3e483ccdb2b19761ad77d5e}{ecore\+\_\+fb\+\_\+input\+\_\+device\+\_\+cap\+\_\+get}} (\mbox{\hyperlink{group__Ecore__FB__Group_ga1d8690825755681ab7b5de3d3403b6e0}{Ecore\+\_\+\+Fb\+\_\+\+Input\+\_\+\+Device}} $\ast$dev)
\begin{DoxyCompactList}\small\item\em Retrieve the capability of the given device. \end{DoxyCompactList}\item 
EAPI void \mbox{\hyperlink{group__Ecore__FB__Group_ga043499a88b2aa2a20f63f64505991aab}{ecore\+\_\+fb\+\_\+input\+\_\+device\+\_\+axis\+\_\+size\+\_\+set}} (\mbox{\hyperlink{group__Ecore__FB__Group_ga1d8690825755681ab7b5de3d3403b6e0}{Ecore\+\_\+\+Fb\+\_\+\+Input\+\_\+\+Device}} $\ast$dev, int w, int h)
\begin{DoxyCompactList}\small\item\em Set the axis size of the given device. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{group__Ecore__FB__Group_ga2cfd70115ae7d326ba71b8e85ad1eac7}\label{group__Ecore__FB__Group_ga2cfd70115ae7d326ba71b8e85ad1eac7}} 
EAPI void {\bfseries ecore\+\_\+fb\+\_\+input\+\_\+threshold\+\_\+click\+\_\+set} (\mbox{\hyperlink{group__Ecore__FB__Group_ga1d8690825755681ab7b5de3d3403b6e0}{Ecore\+\_\+\+Fb\+\_\+\+Input\+\_\+\+Device}} $\ast$dev, double threshold)
\item 
\mbox{\Hypertarget{group__Ecore__FB__Group_gacd0932ab86621fa2df962dc3d046a1e4}\label{group__Ecore__FB__Group_gacd0932ab86621fa2df962dc3d046a1e4}} 
EAPI double {\bfseries ecore\+\_\+fb\+\_\+input\+\_\+threshold\+\_\+click\+\_\+get} (\mbox{\hyperlink{group__Ecore__FB__Group_ga1d8690825755681ab7b5de3d3403b6e0}{Ecore\+\_\+\+Fb\+\_\+\+Input\+\_\+\+Device}} $\ast$dev)
\item 
EAPI void \mbox{\hyperlink{group__Ecore__FB__Group_gae3c3479e2fa0fdf239afd5e3a2eabbf5}{ecore\+\_\+fb\+\_\+input\+\_\+device\+\_\+window\+\_\+set}} (\mbox{\hyperlink{group__Ecore__FB__Group_ga1d8690825755681ab7b5de3d3403b6e0}{Ecore\+\_\+\+Fb\+\_\+\+Input\+\_\+\+Device}} $\ast$dev, void $\ast$window)
\begin{DoxyCompactList}\small\item\em Associates an input device with the given \mbox{\hyperlink{group__Ecore__Evas__Group}{Ecore\+\_\+\+Evas wrapper/helper set of functions}}. \end{DoxyCompactList}\item 
EAPI void \mbox{\hyperlink{group__Ecore__FB__Group_ga9d9fcdece8e69f7e3798a5ddea7f9403}{ecore\+\_\+fb\+\_\+touch\+\_\+screen\+\_\+calibrate\+\_\+set}} (int xscale, int xtrans, int yscale, int ytrans, int xyswap)
\begin{DoxyCompactList}\small\item\em Calibrates the touschreen using the given parameters. \end{DoxyCompactList}\item 
EAPI void \mbox{\hyperlink{group__Ecore__FB__Group_gae4aa44af19bec4dcc5c7e66c81e31fef}{ecore\+\_\+fb\+\_\+touch\+\_\+screen\+\_\+calibrate\+\_\+get}} (int $\ast$xscale, int $\ast$xtrans, int $\ast$yscale, int $\ast$ytrans, int $\ast$xyswap)
\begin{DoxyCompactList}\small\item\em Retrieves the calibration parameters of the touchscreen. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{group__Ecore__FB__Group_ga1dfeb0b21122196a47f2c703735c8f0a}{ecore\+\_\+fb\+\_\+input\+\_\+device\+\_\+threshold\+\_\+click\+\_\+set}} (\mbox{\hyperlink{group__Ecore__FB__Group_ga1d8690825755681ab7b5de3d3403b6e0}{Ecore\+\_\+\+Fb\+\_\+\+Input\+\_\+\+Device}} $\ast$dev, double threshold)
\begin{DoxyCompactList}\small\item\em Set the threshold of mouse clicks of the given device. \end{DoxyCompactList}\item 
double \mbox{\hyperlink{group__Ecore__FB__Group_ga5933f22a0ed37d6ed8c1d4e18dd57b78}{ecore\+\_\+fb\+\_\+input\+\_\+device\+\_\+threshold\+\_\+click\+\_\+get}} (\mbox{\hyperlink{group__Ecore__FB__Group_ga1d8690825755681ab7b5de3d3403b6e0}{Ecore\+\_\+\+Fb\+\_\+\+Input\+\_\+\+Device}} $\ast$dev)
\begin{DoxyCompactList}\small\item\em Get the threshold of mouse clicks of the given device. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Variables}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{group__Ecore__FB__Group_ga1c989bbddc1074fa272c41247a911e50}\label{group__Ecore__FB__Group_ga1c989bbddc1074fa272c41247a911e50}} 
static sighandler\+\_\+t {\bfseries oldhand} = NULL
\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
Functions used to set up and shut down the Ecore\+\_\+\+Framebuffer functions. 



\doxysubsection{Function Documentation}
\mbox{\Hypertarget{group__Ecore__FB__Group_gab74cf87e3b0ed43c056add2147244fed}\label{group__Ecore__FB__Group_gab74cf87e3b0ed43c056add2147244fed}} 
\index{Ecore\_FB -\/ Frame buffer convenience functions.@{Ecore\_FB -\/ Frame buffer convenience functions.}!ecore\_fb\_init@{ecore\_fb\_init}}
\index{ecore\_fb\_init@{ecore\_fb\_init}!Ecore\_FB -\/ Frame buffer convenience functions.@{Ecore\_FB -\/ Frame buffer convenience functions.}}
\doxysubsubsection{\texorpdfstring{ecore\_fb\_init()}{ecore\_fb\_init()}}
{\footnotesize\ttfamily EAPI int ecore\+\_\+fb\+\_\+init (\begin{DoxyParamCaption}\item[{const char $\ast$}]{name }\end{DoxyParamCaption})}



Initialize the Ecore\+\_\+\+Fb library. 


\begin{DoxyParams}{Parameters}
{\em name} & Device target name. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
1 or greater on success, 0 on error.
\end{DoxyReturn}
This function sets up all the Ecore\+\_\+\+Fb library. It returns 0 on failure, otherwise it returns the number of times it has already been called.

When Ecore\+\_\+\+Fb is not used anymore, call \mbox{\hyperlink{group__Ecore__FB__Group_gaefa9ae93cf6163379747349bb8cc82f7}{ecore\+\_\+fb\+\_\+shutdown()}} to shut down the Ecore\+\_\+\+Fb library. \mbox{\Hypertarget{group__Ecore__FB__Group_gaefa9ae93cf6163379747349bb8cc82f7}\label{group__Ecore__FB__Group_gaefa9ae93cf6163379747349bb8cc82f7}} 
\index{Ecore\_FB -\/ Frame buffer convenience functions.@{Ecore\_FB -\/ Frame buffer convenience functions.}!ecore\_fb\_shutdown@{ecore\_fb\_shutdown}}
\index{ecore\_fb\_shutdown@{ecore\_fb\_shutdown}!Ecore\_FB -\/ Frame buffer convenience functions.@{Ecore\_FB -\/ Frame buffer convenience functions.}}
\doxysubsubsection{\texorpdfstring{ecore\_fb\_shutdown()}{ecore\_fb\_shutdown()}}
{\footnotesize\ttfamily EAPI int ecore\+\_\+fb\+\_\+shutdown (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}



Shut down the Ecore\+\_\+\+Fb library. 

\begin{DoxyReturn}{Returns}
0 when the library is completely shut down, 1 or greater otherwise.
\end{DoxyReturn}
This function shuts down the Ecore\+\_\+\+Fb library. It returns 0 when it has been called the same number of times than \mbox{\hyperlink{group__Ecore__FB__Group_gab74cf87e3b0ed43c056add2147244fed}{ecore\+\_\+fb\+\_\+init()}}. \mbox{\Hypertarget{group__Ecore__FB__Group_gad169f77434891ebc69d7d5749bed5af8}\label{group__Ecore__FB__Group_gad169f77434891ebc69d7d5749bed5af8}} 
\index{Ecore\_FB -\/ Frame buffer convenience functions.@{Ecore\_FB -\/ Frame buffer convenience functions.}!ecore\_fb\_size\_get@{ecore\_fb\_size\_get}}
\index{ecore\_fb\_size\_get@{ecore\_fb\_size\_get}!Ecore\_FB -\/ Frame buffer convenience functions.@{Ecore\_FB -\/ Frame buffer convenience functions.}}
\doxysubsubsection{\texorpdfstring{ecore\_fb\_size\_get()}{ecore\_fb\_size\_get()}}
{\footnotesize\ttfamily EAPI void ecore\+\_\+fb\+\_\+size\+\_\+get (\begin{DoxyParamCaption}\item[{int $\ast$}]{w,  }\item[{int $\ast$}]{h }\end{DoxyParamCaption})}



Retrieve the width and height of the current frame buffer in pixels. 


\begin{DoxyParams}{Parameters}
{\em w} & Pointer to an integer in which to store the width. \\
\hline
{\em h} & Pointer to an interge in which to store the height.\\
\hline
\end{DoxyParams}
This function retrieves the size of the current frame buffer in pixels. {\ttfamily w} and {\ttfamily h} can be buffers that will be filled with the corresponding values. If one of them is {\ttfamily NULL}, nothing will be done for that parameter. \mbox{\Hypertarget{group__Ecore__FB__Group_ga71e1c32188a6b60d41074694d187acd8}\label{group__Ecore__FB__Group_ga71e1c32188a6b60d41074694d187acd8}} 
\index{Ecore\_FB -\/ Frame buffer convenience functions.@{Ecore\_FB -\/ Frame buffer convenience functions.}!ecore\_fb\_callback\_gain\_set@{ecore\_fb\_callback\_gain\_set}}
\index{ecore\_fb\_callback\_gain\_set@{ecore\_fb\_callback\_gain\_set}!Ecore\_FB -\/ Frame buffer convenience functions.@{Ecore\_FB -\/ Frame buffer convenience functions.}}
\doxysubsubsection{\texorpdfstring{ecore\_fb\_callback\_gain\_set()}{ecore\_fb\_callback\_gain\_set()}}
{\footnotesize\ttfamily void ecore\+\_\+fb\+\_\+callback\+\_\+gain\+\_\+set (\begin{DoxyParamCaption}\item[{void($\ast$)(void $\ast$data)}]{func,  }\item[{void $\ast$}]{data }\end{DoxyParamCaption})}



Set a callback called when a virtual terminal is gained. 


\begin{DoxyParams}{Parameters}
{\em func} & The callback called when vt is gained. \\
\hline
{\em data} & The data to pass to the callback.\\
\hline
\end{DoxyParams}
This function sets the callback {\ttfamily func} which will be called when a virtual terminal is gained (for example you press Ctrl-\/\+Alt-\/\+F1 to go to vt1 and your app was using vt1). {\ttfamily data} will be pass to {\ttfamily func} if the callback is called. \mbox{\Hypertarget{group__Ecore__FB__Group_gab57aceeb75fda692f86c14cad54b0adf}\label{group__Ecore__FB__Group_gab57aceeb75fda692f86c14cad54b0adf}} 
\index{Ecore\_FB -\/ Frame buffer convenience functions.@{Ecore\_FB -\/ Frame buffer convenience functions.}!ecore\_fb\_callback\_lose\_set@{ecore\_fb\_callback\_lose\_set}}
\index{ecore\_fb\_callback\_lose\_set@{ecore\_fb\_callback\_lose\_set}!Ecore\_FB -\/ Frame buffer convenience functions.@{Ecore\_FB -\/ Frame buffer convenience functions.}}
\doxysubsubsection{\texorpdfstring{ecore\_fb\_callback\_lose\_set()}{ecore\_fb\_callback\_lose\_set()}}
{\footnotesize\ttfamily void ecore\+\_\+fb\+\_\+callback\+\_\+lose\+\_\+set (\begin{DoxyParamCaption}\item[{void($\ast$)(void $\ast$data)}]{func,  }\item[{void $\ast$}]{data }\end{DoxyParamCaption})}



Set a callback called when a virtual terminal is lost. 


\begin{DoxyParams}{Parameters}
{\em func} & The callback called when vt is lost. \\
\hline
{\em data} & The data to pass to the callback.\\
\hline
\end{DoxyParams}
This function sets the callback {\ttfamily func} which will be called when a virtual terminal is lost (someone wants the vt from you and you want to give up that vt). {\ttfamily data} will be pass to {\ttfamily func} if the callback is called. \mbox{\Hypertarget{group__Ecore__FB__Group_gad63427b3b6a5f5edde226673d6e71f65}\label{group__Ecore__FB__Group_gad63427b3b6a5f5edde226673d6e71f65}} 
\index{Ecore\_FB -\/ Frame buffer convenience functions.@{Ecore\_FB -\/ Frame buffer convenience functions.}!ecore\_fb\_input\_device\_open@{ecore\_fb\_input\_device\_open}}
\index{ecore\_fb\_input\_device\_open@{ecore\_fb\_input\_device\_open}!Ecore\_FB -\/ Frame buffer convenience functions.@{Ecore\_FB -\/ Frame buffer convenience functions.}}
\doxysubsubsection{\texorpdfstring{ecore\_fb\_input\_device\_open()}{ecore\_fb\_input\_device\_open()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Ecore__FB__Group_ga1d8690825755681ab7b5de3d3403b6e0}{Ecore\+\_\+\+Fb\+\_\+\+Input\+\_\+\+Device}} $\ast$ ecore\+\_\+fb\+\_\+input\+\_\+device\+\_\+open (\begin{DoxyParamCaption}\item[{const char $\ast$}]{dev }\end{DoxyParamCaption})}



Open an input device. 


\begin{DoxyParams}{Parameters}
{\em dev} & The device to open. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The \mbox{\hyperlink{group__Ecore__FB__Group_ga1d8690825755681ab7b5de3d3403b6e0}{Ecore\+\_\+\+Fb\+\_\+\+Input\+\_\+\+Device}} object that has been opened.
\end{DoxyReturn}
This function opens the input device named {\ttfamily dev} and returns the object for it, or returns {\ttfamily NULL} on failure. 

References \mbox{\hyperlink{group__Eina__List__Group_ga625698a383dda8fc0db245a1c7608c49}{eina\+\_\+list\+\_\+append()}}.

\mbox{\Hypertarget{group__Ecore__FB__Group_ga5bc9b86d21424f4661fcb3cefb4e0c86}\label{group__Ecore__FB__Group_ga5bc9b86d21424f4661fcb3cefb4e0c86}} 
\index{Ecore\_FB -\/ Frame buffer convenience functions.@{Ecore\_FB -\/ Frame buffer convenience functions.}!ecore\_fb\_input\_device\_close@{ecore\_fb\_input\_device\_close}}
\index{ecore\_fb\_input\_device\_close@{ecore\_fb\_input\_device\_close}!Ecore\_FB -\/ Frame buffer convenience functions.@{Ecore\_FB -\/ Frame buffer convenience functions.}}
\doxysubsubsection{\texorpdfstring{ecore\_fb\_input\_device\_close()}{ecore\_fb\_input\_device\_close()}}
{\footnotesize\ttfamily void ecore\+\_\+fb\+\_\+input\+\_\+device\+\_\+close (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Ecore__FB__Group_ga1d8690825755681ab7b5de3d3403b6e0}{Ecore\+\_\+\+Fb\+\_\+\+Input\+\_\+\+Device}} $\ast$}]{dev }\end{DoxyParamCaption})}



Close the given device. 


\begin{DoxyParams}{Parameters}
{\em dev} & The device to close\\
\hline
\end{DoxyParams}
This function closes the device {\ttfamily dev}. If {\ttfamily dev} is {\ttfamily NULL}, this function does nothing. 

References \mbox{\hyperlink{group__Eina__List__Group_ga6e81c26272c54177d087b29c965af4d8}{eina\+\_\+list\+\_\+remove()}}.

\mbox{\Hypertarget{group__Ecore__FB__Group_ga3ba1e8070ac6af46ca45c490c007a83b}\label{group__Ecore__FB__Group_ga3ba1e8070ac6af46ca45c490c007a83b}} 
\index{Ecore\_FB -\/ Frame buffer convenience functions.@{Ecore\_FB -\/ Frame buffer convenience functions.}!ecore\_fb\_input\_device\_listen@{ecore\_fb\_input\_device\_listen}}
\index{ecore\_fb\_input\_device\_listen@{ecore\_fb\_input\_device\_listen}!Ecore\_FB -\/ Frame buffer convenience functions.@{Ecore\_FB -\/ Frame buffer convenience functions.}}
\doxysubsubsection{\texorpdfstring{ecore\_fb\_input\_device\_listen()}{ecore\_fb\_input\_device\_listen()}}
{\footnotesize\ttfamily void ecore\+\_\+fb\+\_\+input\+\_\+device\+\_\+listen (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Ecore__FB__Group_ga1d8690825755681ab7b5de3d3403b6e0}{Ecore\+\_\+\+Fb\+\_\+\+Input\+\_\+\+Device}} $\ast$}]{dev,  }\item[{\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}}}]{listen }\end{DoxyParamCaption})}



Set the listen mode for an input device . 


\begin{DoxyParams}{Parameters}
{\em dev} & The device to set the mode of. \\
\hline
{\em listen} & {\ttfamily EINA\+\_\+\+FALSE} to disable listening mode, {\ttfamily EINA\+\_\+\+TRUE} to enable it.\\
\hline
\end{DoxyParams}
This function enables or disables listening on the input device {\ttfamily dev}. If {\ttfamily listen} is {\ttfamily EINA\+\_\+\+FALSE}, listening mode is disabled, if it is {\ttfamily EINA\+\_\+\+TRUE}, it is enabled. 

References \mbox{\hyperlink{group__Ecore__FD__Handler__Group_ggab5644f471dfa3bd182619601d9b60608a1699f804eccf88e7e169a4a20f1d44e7}{ECORE\+\_\+\+FD\+\_\+\+READ}}, and \mbox{\hyperlink{group__Ecore__FD__Handler__Group_gaf8483e27f0c9fd4a2a7c97fa5539a55f}{ecore\+\_\+main\+\_\+fd\+\_\+handler\+\_\+add()}}.

\mbox{\Hypertarget{group__Ecore__FB__Group_gaa729c994487210bf02cdcb9f60760d32}\label{group__Ecore__FB__Group_gaa729c994487210bf02cdcb9f60760d32}} 
\index{Ecore\_FB -\/ Frame buffer convenience functions.@{Ecore\_FB -\/ Frame buffer convenience functions.}!ecore\_fb\_input\_device\_name\_get@{ecore\_fb\_input\_device\_name\_get}}
\index{ecore\_fb\_input\_device\_name\_get@{ecore\_fb\_input\_device\_name\_get}!Ecore\_FB -\/ Frame buffer convenience functions.@{Ecore\_FB -\/ Frame buffer convenience functions.}}
\doxysubsubsection{\texorpdfstring{ecore\_fb\_input\_device\_name\_get()}{ecore\_fb\_input\_device\_name\_get()}}
{\footnotesize\ttfamily const char $\ast$ ecore\+\_\+fb\+\_\+input\+\_\+device\+\_\+name\+\_\+get (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Ecore__FB__Group_ga1d8690825755681ab7b5de3d3403b6e0}{Ecore\+\_\+\+Fb\+\_\+\+Input\+\_\+\+Device}} $\ast$}]{dev }\end{DoxyParamCaption})}



Retrieve the name of the given device. 


\begin{DoxyParams}{Parameters}
{\em dev} & The device to get the name from. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The name of the device.
\end{DoxyReturn}
This function returns the name of the device {\ttfamily dev}. If {\ttfamily dev} is {\ttfamily NULL}, this function returns {\ttfamily NULL}. \mbox{\Hypertarget{group__Ecore__FB__Group_gad81d5c08c3e483ccdb2b19761ad77d5e}\label{group__Ecore__FB__Group_gad81d5c08c3e483ccdb2b19761ad77d5e}} 
\index{Ecore\_FB -\/ Frame buffer convenience functions.@{Ecore\_FB -\/ Frame buffer convenience functions.}!ecore\_fb\_input\_device\_cap\_get@{ecore\_fb\_input\_device\_cap\_get}}
\index{ecore\_fb\_input\_device\_cap\_get@{ecore\_fb\_input\_device\_cap\_get}!Ecore\_FB -\/ Frame buffer convenience functions.@{Ecore\_FB -\/ Frame buffer convenience functions.}}
\doxysubsubsection{\texorpdfstring{ecore\_fb\_input\_device\_cap\_get()}{ecore\_fb\_input\_device\_cap\_get()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Ecore__FB__Group_ga0c94b4f178809f8c4ff237759e41c8da}{Ecore\+\_\+\+Fb\+\_\+\+Input\+\_\+\+Device\+\_\+\+Cap}} ecore\+\_\+fb\+\_\+input\+\_\+device\+\_\+cap\+\_\+get (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Ecore__FB__Group_ga1d8690825755681ab7b5de3d3403b6e0}{Ecore\+\_\+\+Fb\+\_\+\+Input\+\_\+\+Device}} $\ast$}]{dev }\end{DoxyParamCaption})}



Retrieve the capability of the given device. 


\begin{DoxyParams}{Parameters}
{\em dev} & The device to get the name from. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The capability of the device.
\end{DoxyReturn}
This function returns the capability of the device {\ttfamily dev}. If {\ttfamily dev} is {\ttfamily NULL}, this function returns ECORE\+\_\+\+FB\+\_\+\+INPUT\+\_\+\+DEVICE\+\_\+\+CAP\+\_\+\+NONE. \mbox{\Hypertarget{group__Ecore__FB__Group_ga043499a88b2aa2a20f63f64505991aab}\label{group__Ecore__FB__Group_ga043499a88b2aa2a20f63f64505991aab}} 
\index{Ecore\_FB -\/ Frame buffer convenience functions.@{Ecore\_FB -\/ Frame buffer convenience functions.}!ecore\_fb\_input\_device\_axis\_size\_set@{ecore\_fb\_input\_device\_axis\_size\_set}}
\index{ecore\_fb\_input\_device\_axis\_size\_set@{ecore\_fb\_input\_device\_axis\_size\_set}!Ecore\_FB -\/ Frame buffer convenience functions.@{Ecore\_FB -\/ Frame buffer convenience functions.}}
\doxysubsubsection{\texorpdfstring{ecore\_fb\_input\_device\_axis\_size\_set()}{ecore\_fb\_input\_device\_axis\_size\_set()}}
{\footnotesize\ttfamily void ecore\+\_\+fb\+\_\+input\+\_\+device\+\_\+axis\+\_\+size\+\_\+set (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Ecore__FB__Group_ga1d8690825755681ab7b5de3d3403b6e0}{Ecore\+\_\+\+Fb\+\_\+\+Input\+\_\+\+Device}} $\ast$}]{dev,  }\item[{int}]{w,  }\item[{int}]{h }\end{DoxyParamCaption})}



Set the axis size of the given device. 


\begin{DoxyParams}{Parameters}
{\em dev} & The device to set the axis size to. \\
\hline
{\em w} & The width of the axis. \\
\hline
{\em h} & The height of the axis.\\
\hline
\end{DoxyParams}
This function sets set the width {\ttfamily w} and height {\ttfamily h} of the axis of device {\ttfamily dev}. If {\ttfamily dev} is a relative input device, a width and height must set for it. If its absolute set the ioctl correctly, if not, unsupported device. \mbox{\Hypertarget{group__Ecore__FB__Group_gae3c3479e2fa0fdf239afd5e3a2eabbf5}\label{group__Ecore__FB__Group_gae3c3479e2fa0fdf239afd5e3a2eabbf5}} 
\index{Ecore\_FB -\/ Frame buffer convenience functions.@{Ecore\_FB -\/ Frame buffer convenience functions.}!ecore\_fb\_input\_device\_window\_set@{ecore\_fb\_input\_device\_window\_set}}
\index{ecore\_fb\_input\_device\_window\_set@{ecore\_fb\_input\_device\_window\_set}!Ecore\_FB -\/ Frame buffer convenience functions.@{Ecore\_FB -\/ Frame buffer convenience functions.}}
\doxysubsubsection{\texorpdfstring{ecore\_fb\_input\_device\_window\_set()}{ecore\_fb\_input\_device\_window\_set()}}
{\footnotesize\ttfamily void ecore\+\_\+fb\+\_\+input\+\_\+device\+\_\+window\+\_\+set (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Ecore__FB__Group_ga1d8690825755681ab7b5de3d3403b6e0}{Ecore\+\_\+\+Fb\+\_\+\+Input\+\_\+\+Device}} $\ast$}]{dev,  }\item[{void $\ast$}]{window }\end{DoxyParamCaption})}



Associates an input device with the given \mbox{\hyperlink{group__Ecore__Evas__Group}{Ecore\+\_\+\+Evas wrapper/helper set of functions}}. 


\begin{DoxyParams}{Parameters}
{\em dev} & The input being associated with an \mbox{\hyperlink{group__Ecore__Evas__Group}{Ecore\+\_\+\+Evas wrapper/helper set of functions}} (not {\ttfamily NULL}). \\
\hline
{\em window} & The window which this input is being associated to. {\ttfamily NULL} will remove any previous association.\\
\hline
\end{DoxyParams}
Events generated by this device will have a pointer to {\ttfamily window}. If this {\ttfamily window} is registered with ecore\+\_\+event\+\_\+window\+\_\+register() or \mbox{\hyperlink{group__Ecore__Evas__Group_ga9cb57f86b8581f45ce589e64261d0ef4}{ecore\+\_\+evas\+\_\+input\+\_\+event\+\_\+register()}}, respective evas events will be delivered by the ecore\+\_\+input\+\_\+evas system. An example can be seen in the following code\+:


\begin{DoxyCode}{0}
\DoxyCodeLine{Ecore\_Evas\ *ee\ =\ \mbox{\hyperlink{group__Ecore__Evas__Group_gaaa770b6f2f1395f9eeb0e50e26c3f933}{ecore\_evas\_new}}(NULL,\ 0,\ 0,\ 800,\ 600,\ NULL);}
\DoxyCodeLine{}
\DoxyCodeLine{\mbox{\hyperlink{group__Ecore__Evas__Group_ga9cb57f86b8581f45ce589e64261d0ef4}{ecore\_evas\_input\_event\_register}}(ee);}
\DoxyCodeLine{}
\DoxyCodeLine{device\ =\ \mbox{\hyperlink{group__Ecore__FB__Group_gad63427b3b6a5f5edde226673d6e71f65}{ecore\_fb\_input\_device\_open}}(device\_path);}
\DoxyCodeLine{\textcolor{keywordflow}{if}\ (device)}
\DoxyCodeLine{\ \ \mbox{\hyperlink{group__Ecore__FB__Group_gae3c3479e2fa0fdf239afd5e3a2eabbf5}{ecore\_fb\_input\_device\_window\_set}}(device,\ ee);}

\end{DoxyCode}


On the previous code, all input captured on the mentioned device will be delivered to the {\ttfamily Ecore\+\_\+\+Evas} {\ttfamily ee}.

\begin{DoxySince}{Since}
1.\+1 
\end{DoxySince}
\mbox{\Hypertarget{group__Ecore__FB__Group_ga9d9fcdece8e69f7e3798a5ddea7f9403}\label{group__Ecore__FB__Group_ga9d9fcdece8e69f7e3798a5ddea7f9403}} 
\index{Ecore\_FB -\/ Frame buffer convenience functions.@{Ecore\_FB -\/ Frame buffer convenience functions.}!ecore\_fb\_touch\_screen\_calibrate\_set@{ecore\_fb\_touch\_screen\_calibrate\_set}}
\index{ecore\_fb\_touch\_screen\_calibrate\_set@{ecore\_fb\_touch\_screen\_calibrate\_set}!Ecore\_FB -\/ Frame buffer convenience functions.@{Ecore\_FB -\/ Frame buffer convenience functions.}}
\doxysubsubsection{\texorpdfstring{ecore\_fb\_touch\_screen\_calibrate\_set()}{ecore\_fb\_touch\_screen\_calibrate\_set()}}
{\footnotesize\ttfamily EAPI void ecore\+\_\+fb\+\_\+touch\+\_\+screen\+\_\+calibrate\+\_\+set (\begin{DoxyParamCaption}\item[{int}]{xscale,  }\item[{int}]{xtrans,  }\item[{int}]{yscale,  }\item[{int}]{ytrans,  }\item[{int}]{xyswap }\end{DoxyParamCaption})}



Calibrates the touschreen using the given parameters. 


\begin{DoxyParams}{Parameters}
{\em xscale} & X scaling, where 256 = 1.\+0 \\
\hline
{\em xtrans} & X translation. \\
\hline
{\em yscale} & Y scaling. \\
\hline
{\em ytrans} & Y translation. \\
\hline
{\em xyswap} & Swap X \& Y flag. \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{group__Ecore__FB__Group_gae4aa44af19bec4dcc5c7e66c81e31fef}\label{group__Ecore__FB__Group_gae4aa44af19bec4dcc5c7e66c81e31fef}} 
\index{Ecore\_FB -\/ Frame buffer convenience functions.@{Ecore\_FB -\/ Frame buffer convenience functions.}!ecore\_fb\_touch\_screen\_calibrate\_get@{ecore\_fb\_touch\_screen\_calibrate\_get}}
\index{ecore\_fb\_touch\_screen\_calibrate\_get@{ecore\_fb\_touch\_screen\_calibrate\_get}!Ecore\_FB -\/ Frame buffer convenience functions.@{Ecore\_FB -\/ Frame buffer convenience functions.}}
\doxysubsubsection{\texorpdfstring{ecore\_fb\_touch\_screen\_calibrate\_get()}{ecore\_fb\_touch\_screen\_calibrate\_get()}}
{\footnotesize\ttfamily EAPI void ecore\+\_\+fb\+\_\+touch\+\_\+screen\+\_\+calibrate\+\_\+get (\begin{DoxyParamCaption}\item[{int $\ast$}]{xscale,  }\item[{int $\ast$}]{xtrans,  }\item[{int $\ast$}]{yscale,  }\item[{int $\ast$}]{ytrans,  }\item[{int $\ast$}]{xyswap }\end{DoxyParamCaption})}



Retrieves the calibration parameters of the touchscreen. 


\begin{DoxyParams}{Parameters}
{\em xscale} & Pointer to an integer in which to store the X scaling. Note that 256 = 1.\+0. \\
\hline
{\em xtrans} & Pointer to an integer in which to store the X translation. \\
\hline
{\em yscale} & Pointer to an integer in which to store the Y scaling. \\
\hline
{\em ytrans} & Pointer to an integer in which to store the Y translation. \\
\hline
{\em xyswap} & Pointer to an integer in which to store the Swap X \& Y flag. \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{group__Ecore__FB__Group_ga1dfeb0b21122196a47f2c703735c8f0a}\label{group__Ecore__FB__Group_ga1dfeb0b21122196a47f2c703735c8f0a}} 
\index{Ecore\_FB -\/ Frame buffer convenience functions.@{Ecore\_FB -\/ Frame buffer convenience functions.}!ecore\_fb\_input\_device\_threshold\_click\_set@{ecore\_fb\_input\_device\_threshold\_click\_set}}
\index{ecore\_fb\_input\_device\_threshold\_click\_set@{ecore\_fb\_input\_device\_threshold\_click\_set}!Ecore\_FB -\/ Frame buffer convenience functions.@{Ecore\_FB -\/ Frame buffer convenience functions.}}
\doxysubsubsection{\texorpdfstring{ecore\_fb\_input\_device\_threshold\_click\_set()}{ecore\_fb\_input\_device\_threshold\_click\_set()}}
{\footnotesize\ttfamily void ecore\+\_\+fb\+\_\+input\+\_\+device\+\_\+threshold\+\_\+click\+\_\+set (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Ecore__FB__Group_ga1d8690825755681ab7b5de3d3403b6e0}{Ecore\+\_\+\+Fb\+\_\+\+Input\+\_\+\+Device}} $\ast$}]{dev,  }\item[{double}]{threshold }\end{DoxyParamCaption})}



Set the threshold of mouse clicks of the given device. 


\begin{DoxyParams}{Parameters}
{\em dev} & The device to set the threshodl mouse click to. \\
\hline
{\em threshold} & The threshold value.\\
\hline
\end{DoxyParams}
This function sets the threshold of mouse clicks of the device {\ttfamily dev} to {\ttfamily threshold}. If {\ttfamily dev} is {\ttfamily NULL}, this function does nothing. 

References \mbox{\hyperlink{group__Eina__Tools__Group_ga6bee37244b675b83d6a4f044a7a3d1e8}{EINA\+\_\+\+DBL\+\_\+\+EQ}}.

\mbox{\Hypertarget{group__Ecore__FB__Group_ga5933f22a0ed37d6ed8c1d4e18dd57b78}\label{group__Ecore__FB__Group_ga5933f22a0ed37d6ed8c1d4e18dd57b78}} 
\index{Ecore\_FB -\/ Frame buffer convenience functions.@{Ecore\_FB -\/ Frame buffer convenience functions.}!ecore\_fb\_input\_device\_threshold\_click\_get@{ecore\_fb\_input\_device\_threshold\_click\_get}}
\index{ecore\_fb\_input\_device\_threshold\_click\_get@{ecore\_fb\_input\_device\_threshold\_click\_get}!Ecore\_FB -\/ Frame buffer convenience functions.@{Ecore\_FB -\/ Frame buffer convenience functions.}}
\doxysubsubsection{\texorpdfstring{ecore\_fb\_input\_device\_threshold\_click\_get()}{ecore\_fb\_input\_device\_threshold\_click\_get()}}
{\footnotesize\ttfamily double ecore\+\_\+fb\+\_\+input\+\_\+device\+\_\+threshold\+\_\+click\+\_\+get (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Ecore__FB__Group_ga1d8690825755681ab7b5de3d3403b6e0}{Ecore\+\_\+\+Fb\+\_\+\+Input\+\_\+\+Device}} $\ast$}]{dev }\end{DoxyParamCaption})}



Get the threshold of mouse clicks of the given device. 


\begin{DoxyParams}{Parameters}
{\em dev} & The device to set the threshodl mouse click from. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The threshold value.
\end{DoxyReturn}
This function returns the threshold of mouse clicks of the device {\ttfamily dev}. If {\ttfamily dev} is {\ttfamily NULL}, this function returns 0.\+0. 