An input device is a hardware mechanism that transforms information in the external world for consumption by a computer. Often, input devices are under direct control by a human user, who uses them to communicate commands or other information to be processed by the computer, which may then transmit feedback to the user through an output device. Input and output devices together make up the hardware interface between a computer and the user or external world. Typical examples of input devices include keyboards and mice, however other examples include devices with many more degrees of freedom. In general, any sensor which monitors or scans information from the external world can be considered an input device, whether or not the information is under the direct control of a user.