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: 9575652
    Abstract: 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: Grant
    Filed: March 31, 2012
    Date of Patent: February 21, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Jacob S. Rossi, Justin E. Rogers, Raju Ramanathan, Stephen H. Wright, Charu Chandiram, Matthew A. Rakow
  • Patent number: 9443331
    Abstract: 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: Grant
    Filed: June 6, 2013
    Date of Patent: September 13, 2016
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Raju Ramanathan, Pravin Kumar Santiago, Thomas Olsen, Reiner Fink, Alice M. Tang
  • Patent number: 9274622
    Abstract: 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: Grant
    Filed: September 11, 2012
    Date of Patent: March 1, 2016
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Stephen Wright, Hirofumi Yamamoto, Pak Kiu Chung, Raju Ramanathan, Krishnan Menon, Lawrence Osterman, Alan Stephenson, Reed Townsend, Jacob Rossi
  • Publication number: 20140362122
    Abstract: 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: Application
    Filed: June 6, 2013
    Publication date: December 11, 2014
    Inventors: Raju Ramanathan, Pravin Kumar Santiago, Thomas Olsen, Reiner Fink, Alice M. Tang
  • Publication number: 20140075458
    Abstract: 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: Application
    Filed: September 11, 2012
    Publication date: March 13, 2014
    Applicant: Microsoft Corporation
    Inventors: Stephen Wright, Hirofumi Yamamoto, Pak Kiu Chung, Raju Ramanathan, Krishnan Menon, Lawrence Osterman, Alan Stephenson, Reed Townsend, Jacob Rossi
  • Publication number: 20130263029
    Abstract: 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: Application
    Filed: March 31, 2012
    Publication date: October 3, 2013
    Applicant: Microsoft Corporation
    Inventors: Jacob S. Rossi, Justin E. Rogers, Raju Ramanathan, Stephen H. Wright, Charu Chandiram, Matthew A. Rakow
  • Patent number: 8248387
    Abstract: 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: Grant
    Filed: February 12, 2008
    Date of Patent: August 21, 2012
    Assignee: Microsoft Corporation
    Inventor: Raju Ramanathan
  • Patent number: 7599264
    Abstract: 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: Grant
    Filed: March 24, 2005
    Date of Patent: October 6, 2009
    Assignee: Microsoft Corporation
    Inventors: James Tse-Ching Yu, Jason M. Anderson, Raju Ramanathan, Yingchun Simon Zhang, Kenneth Wade Stufflebeam, Jr.
  • Patent number: 7457921
    Abstract: 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: Grant
    Filed: February 23, 2005
    Date of Patent: November 25, 2008
    Assignee: Microsoft Corporation
    Inventors: Henry P Gabryjelski, Krishnan Varadarajan, Peter W Wieland, Raju Ramanathan
  • Publication number: 20060215501
    Abstract: 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: Application
    Filed: March 24, 2005
    Publication date: September 28, 2006
    Applicant: Microsoft Corporation
    Inventors: James Yu, Jason Anderson, Raju Ramanathan, Yingchun Zhang, Kenneth Stufflebeam
  • Publication number: 20060190510
    Abstract: 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: Application
    Filed: February 23, 2005
    Publication date: August 24, 2006
    Applicant: Microsoft Corporation
    Inventors: Henry Gabryjelski, Krishnan Varadarajan, Peter Wieland, Raju Ramanathan