Patents by Inventor Raju Ramanathan
Raju Ramanathan has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 9575652Abstract: Instantiable gesture object techniques are described in which native gesture functionality is abstracted to applications using a script-based recognition interface. Gesture objects may be instantiated for different interaction contexts at the direction of applications programmed using dynamic scripting languages. Gesture objects can be configured to designate particular touch contacts and/or other inputs to consider for gesture recognition and a target element of content to which corresponding recognized gestures are applicable. After creation, gesture objects manage gesture processing operations on behalf of the applications including creating recognizers with the native gesture system, feeding input data for processing, and transforming raw gesture data into formats appropriate for the application and/or a target element. Accordingly, script-based applications may use the gesture objects to offload processing tasks associated with gesture recognition and take advantage of native gesture functionality.Type: GrantFiled: March 31, 2012Date of Patent: February 21, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Jacob S. Rossi, Justin E. Rogers, Raju Ramanathan, Stephen H. Wright, Charu Chandiram, Matthew A. Rakow
-
Patent number: 9443331Abstract: Techniques for an input object for routing input for visual elements are described. In at least some embodiments, a region of a display area includes multiple graphic elements that can be generated and/or managed by different graphics functionalities. For instance, a graphical user interface (GUI) for an application can include a primary window and visual elements within the primary window, such as banners, control buttons, menus, Tillable fields, and so forth. In at least some embodiments, the primary window of the GUI can be managed by a first graphics functionality, while one or more visual elements within the primary window can be managed by a second graphics functionality. In accordance with one or more embodiments, an input object is employed to route input to visual elements to a graphics functionality responsible for managing the visual elements.Type: GrantFiled: June 6, 2013Date of Patent: September 13, 2016Assignee: Microsoft Technology Licensing, LLCInventors: Raju Ramanathan, Pravin Kumar Santiago, Thomas Olsen, Reiner Fink, Alice M. Tang
-
Patent number: 9274622Abstract: In one embodiment, a unified pointer message 300 may describe in a single type of pointer message a coordinate input from a user via multiple types of pointer devices. An input device interface 150 may receive a coordinate input 350 from an input device. A processor 120 may execute an application programming interface layer 430 that creates a unified pointer message 300 for the coordinate input 350. The processor 120 may send the unified pointer message 300 to an application. The processor 120 may process a device specific data set 244 unhandled by the application.Type: GrantFiled: September 11, 2012Date of Patent: March 1, 2016Assignee: Microsoft Technology Licensing, LLCInventors: Stephen Wright, Hirofumi Yamamoto, Pak Kiu Chung, Raju Ramanathan, Krishnan Menon, Lawrence Osterman, Alan Stephenson, Reed Townsend, Jacob Rossi
-
Publication number: 20140362122Abstract: Techniques for an input object for routing input for visual elements are described. In at least some embodiments, a region of a display area includes multiple graphic elements that can be generated and/or managed by different graphics functionalities. For instance, a graphical user interface (GUI) for an application can include a primary window and visual elements within the primary window, such as banners, control buttons, menus, Tillable fields, and so forth. In at least some embodiments, the primary window of the GUI can be managed by a first graphics functionality, while one or more visual elements within the primary window can be managed by a second graphics functionality. In accordance with one or more embodiments, an input object is employed to route input to visual elements to a graphics functionality responsible for managing the visual elements.Type: ApplicationFiled: June 6, 2013Publication date: December 11, 2014Inventors: Raju Ramanathan, Pravin Kumar Santiago, Thomas Olsen, Reiner Fink, Alice M. Tang
-
Publication number: 20140075458Abstract: In one embodiment, a unified pointer message 300 may describe in a single type of pointer message a coordinate input from a user via multiple types of pointer devices. An input device interface 150 may receive a coordinate input 350 from an input device. A processor 120 may execute an application programming interface layer 430 that creates a unified pointer message 300 for the coordinate input 350. The processor 120 may send the unified pointer message 300 to an application. The processor 120 may process a device specific data set 244 unhandled by the application.Type: ApplicationFiled: September 11, 2012Publication date: March 13, 2014Applicant: Microsoft CorporationInventors: Stephen Wright, Hirofumi Yamamoto, Pak Kiu Chung, Raju Ramanathan, Krishnan Menon, Lawrence Osterman, Alan Stephenson, Reed Townsend, Jacob Rossi
-
Publication number: 20130263029Abstract: Instantiable gesture object techniques are described in which native gesture functionality is abstracted to applications using a script-based recognition interface. Gesture objects may be instantiated for different interaction contexts at the direction of applications programmed using dynamic scripting languages. Gesture objects can be configured to designate particular touch contacts and/or other inputs to consider for gesture recognition and a target element of content to which corresponding recognized gestures are applicable. After creation, gesture objects manage gesture processing operations on behalf of the applications including creating recognizers with the native gesture system, feeding input data for processing, and transforming raw gesture data into formats appropriate for the application and/or a target element. Accordingly, script-based applications may use the gesture objects to offload processing tasks associated with gesture recognition and take advantage of native gesture functionality.Type: ApplicationFiled: March 31, 2012Publication date: October 3, 2013Applicant: Microsoft CorporationInventors: Jacob S. Rossi, Justin E. Rogers, Raju Ramanathan, Stephen H. Wright, Charu Chandiram, Matthew A. Rakow
-
Patent number: 8248387Abstract: The efficient buffering of image data for a plurality of clients is disclosed. One disclosed embodiment comprises an optical touch-sensitive device configured to receive changed portions of a frame of data from a touch data acquisition system comprising a touch-sensitive display, to store the changed portions of the frame of data in a common data frame buffer, and to receive a bitmap header from the touch data acquisition system that specifies locations of the changed portions of the frame of data and store the bitmap header in each of a plurality of client header buffers. Clients can first obtain the bitmap header from buffers corresponding to those clients, and then obtain the changed portions of the frame of data from the common data frame buffer.Type: GrantFiled: February 12, 2008Date of Patent: August 21, 2012Assignee: Microsoft CorporationInventor: Raju Ramanathan
-
Patent number: 7599264Abstract: A method and system for controlling the spin rate of an optical device. A device driver provides notification that media has been inserted into the optical device. A control service determines the format of information on the media. The spin rate of the optical device is locked or unlocked based on the format.Type: GrantFiled: March 24, 2005Date of Patent: October 6, 2009Assignee: Microsoft CorporationInventors: James Tse-Ching Yu, Jason M. Anderson, Raju Ramanathan, Yingchun Simon Zhang, Kenneth Wade Stufflebeam, Jr.
-
Patent number: 7457921Abstract: A system that facilitates the storage of data using a write barrier. The system interfaces to a hardware component that stores data, and includes a write barrier component that dynamically employs instructions compatible with the hardware component to ensure data integrity during storage of the data. The write barrier component is independent of at least an operating system and an application and can operate in a least one of a user mode and a kernel mode. The write barrier component includes at least one of software instructions, routines, and methods, the selection of one or more of which is based on hardware data extracted from the hardware component. A selection component interrogates the hardware component for hardware data to facilitate selection of one or more instructions most suitable for interfacing to the hardware component. A coalescing component combines cache synchronization requests into a single set of instructions, which set is processed to flush a disk cache in one process.Type: GrantFiled: February 23, 2005Date of Patent: November 25, 2008Assignee: Microsoft CorporationInventors: Henry P Gabryjelski, Krishnan Varadarajan, Peter W Wieland, Raju Ramanathan
-
Publication number: 20060215501Abstract: A method and system for controlling the spin rate of an optical device. A device driver provides notification that media has been inserted into the optical device. A control service determines the format of information on the media. The spin rate of the optical device is locked or unlocked based on the format.Type: ApplicationFiled: March 24, 2005Publication date: September 28, 2006Applicant: Microsoft CorporationInventors: James Yu, Jason Anderson, Raju Ramanathan, Yingchun Zhang, Kenneth Stufflebeam
-
Publication number: 20060190510Abstract: A system that facilitates the storage of data using a write barrier. The system interfaces to a hardware component that stores data, and includes a write barrier component that dynamically employs instructions compatible with the hardware component to ensure data integrity during storage of the data. The write barrier component is independent of at least an operating system and an application and can operate in a least one of a user mode and a kernel mode. The write barrier component includes at least one of software instructions, routines, and methods, the selection of one or more of which is based on hardware data extracted from the hardware component. A selection component interrogates the hardware component for hardware data to facilitate selection of one or more instructions most suitable for interfacing to the hardware component. A coalescing component combines cache synchronization requests into a single set of instructions, which set is processed to flush a disk cache in one process.Type: ApplicationFiled: February 23, 2005Publication date: August 24, 2006Applicant: Microsoft CorporationInventors: Henry Gabryjelski, Krishnan Varadarajan, Peter Wieland, Raju Ramanathan