Computer systems which are capable of emotion detection via automated devices open up new horizons in Human-Computer Interaction (HCI). Due to the inseparable link between emotions and cognition, the field of Affective Computing aspires to narrow the communicative gap between human beings and computers. This is achieved by developing systems that not only recognize but also respond to the affective states of the user. This paper presents a literature survey on the various Affect detection techniques including Facial expression analysis, Speech analysis, Multi-modality and Gaze detection. The aim of the paper is to obtain a deeper understanding of affective states, which will form the foundation for designing a data-driven Human Computer interface.