A haptic feedback system comprising: a controller ; a memory coupled to said controller , wherein said memory stores a plurality of pre-defined haptic effects; an actuator drive circuit coupled to said controller ; and an actuator coupled to said actuator drive circuit , wherein the controller is adapted to output a pre-defined haptic effect of the plurality of pre-defined haptic effects in response to a haptic effect request; wherein the output causes the pre-defined haptic effect to be played, and wherein the haptic effect request is a control signal generated in response to a first application or a second application that identifies the pre-defined haptic effect to be played, wherein the first application is registered with an application program interface and the second application is registered with the application program interface simultaneously, wherein the application program interface is configured to receive a first haptic effect request from the first application and to provide a requested first pre-defined haptic effect from the plurality of pre-defined haptic effects in response to the first haptic effect request and wherein the application program interface is configured to receive a second haptic effect request from the second application and to provide a second predefined haptic effect from the plurality of pre-defined haptic effects in response to the second haptic effect request, wherein the application program interface is configured to interrupt the first pre-defined haptic effect with the second pre-defined haptic effect in response to the second haptic effect request from the second application being received with a priority that is equal to or higher than a priority of the first haptic effect request from the first application , wherein each priority is one of a high, a medium, or a low priority. a controller ; a memory coupled to said controller , wherein said memory stores a plurality of pre-defined haptic effects; an actuator drive circuit coupled to said controller ; and an actuator coupled to said actuator drive circuit , wherein the controller is adapted to output a pre-defined haptic effect of the plurality of pre-defined haptic effects in response to a haptic effect request; wherein the output causes the pre-defined haptic effect to be played, and wherein the haptic effect request is a control signal generated in response to a first application or a second application that identifies the pre-defined haptic effect to be played, wherein the first application is registered with an application program interface and the second application is registered with the application program interface simultaneously, wherein the application program interface is configured to receive a first haptic effect request from the first application and to provide a requested first pre-defined haptic effect from the plurality of pre-defined haptic effects in response to the first haptic effect request and wherein the application program interface is configured to receive a second haptic effect request from the second application and to provide a second predefined haptic effect from the plurality of pre-defined haptic effects in response to the second haptic effect request, wherein the application program interface is configured to interrupt the first pre-defined haptic effect with the second pre-defined haptic effect in response to the second haptic effect request from the second application being received with a priority that is equal to or higher than a priority of the first haptic effect request from the first application , wherein each priority is one of a high, a medium, or a low priority. <EOS>