Patents by Inventor Jai Srinivasan

Jai Srinivasan 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: 10572274
    Abstract: Systems, methods, and computer-executable instructions for supporting custom functions within an application. An application add-in is received that includes a custom function and a custom function location. The application is available across multiple platforms. The custom function is also available across multiple platforms. The custom function is registered within the application using the custom function location. A request to invoke the custom function is received within the application A custom function implementation is downloaded from the custom function location. The custom function implementation is executed. A return value is received from the custom function implementation. The return value may be displayed within the application.
    Type: Grant
    Filed: February 6, 2018
    Date of Patent: February 25, 2020
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Michael J Saunders, Hoe Jin Kim, Zlatko Michailov, Hardik V. Shah, Shaofeng Zhu, John Zhongqi Wang, Chae Seong Lim, Hailei Zhang, Sudheer Maremanda, Abhimanyu Sharma, Jay R. Rathi, Robert Ion Gavrila, Ehab Sobhy, Thomas A. Morrison, Jai Srinivasan, Rolando Jimenez Salgado, Nicholas Weinandt, Alexandru Croicu
  • Publication number: 20190095226
    Abstract: Systems, methods, and computer-executable instructions for supporting custom functions within an application. An application add-in is received that includes a custom function and a custom function location. The application is available across multiple platforms. The custom function is also available across multiple platforms. The custom function is registered within the application using the custom function location. A request to invoke the custom function is received within the application A custom function implementation is downloaded from the custom function location. The custom function implementation is executed. A return value is received from the custom function implementation. The return value may be displayed within the application.
    Type: Application
    Filed: February 6, 2018
    Publication date: March 28, 2019
    Inventors: Michael J. Saunders, Hoe Jin Kim, Zlatko Michailov, Hardik V. Shah, Shaofeng Zhu, John Zhongqi Wang, Chae Seong Lim, Hailei Zhang, Sudheer Maremanda, Abhimanyu Sharma, Jay R. Rathi, Robert Ion Gavrila, Ehab Sobhy, Thomas A. Morrison, Jai Srinivasan, Rolando Jimenez Salgado, Nicholas Weinandt, Alexandru Croicu
  • Patent number: 9881396
    Abstract: Concepts and technologies are described herein for displaying temporal information in a spreadsheet application. In accordance with the concepts and technologies disclosed herein, spreadsheet data can be obtained at a computer system. The spreadsheet data can include data values, temporal information, and geographic information. The computer system can generate a visualization of the spreadsheet data based, at least partially, upon the data values, the temporal information, and the geographic location information. The computer system also can output the visualization.
    Type: Grant
    Filed: April 3, 2013
    Date of Patent: January 30, 2018
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: B. Scott Ruble, Curtis G. Wong, Igor Borisov Peev, Kevin Fan, Jai Srinivasan, Ehab Sobhy, Jonathan Edgar Fay
  • Publication number: 20170270082
    Abstract: Computer systems, methods, and computer storage media for dynamically rendering geographic data. Geographic data is dynamically rendered as a digital map such that changes to the corresponding geographic data are automatically applied to the map and the map is automatically updated to show the changes to the geographic data. The map is rendered to give the most effective view of the corresponding geographic data by determining a least common ancestor of identified geographic entities. The least common ancestor is the lowest ranked geographic entity, within a geographic hierarchy, that is still common to all of the identified geographic entities within a set of geographic data.
    Type: Application
    Filed: May 3, 2016
    Publication date: September 21, 2017
    Inventors: James Thomas Marshall, Ehab Sobhy Deraz, Jimmy Y. Sun, Matthew W. Asplund, Jai Srinivasan, David Ping Tang
  • Publication number: 20160231915
    Abstract: Methods and systems for providing customizable drill-down views for data points within a data visualization are provided herein. Data cards are displayed alongside data points within a data visualization to provide supplemental views and supplemental data for the visualized data associated with the data point. Data cards are operable to be temporary, or pinned to be semi-permanent, displays of data within the data visualization. Data cards are operable to query data in real time and aggregate and manipulate data for display. Queried data includes data present in the data visualization, used and not, and data from external data sources. Aspects of the methods and systems provide for automatic and manual control of various aspects.
    Type: Application
    Filed: June 10, 2015
    Publication date: August 11, 2016
    Applicant: Microsoft Technology Licensing, LLC.
    Inventors: Thomas Q. Nhan, Jai Srinivasan, Bhargavi Parthasarathy Hiremagalur, Daniel Benjamin Witriol
  • Publication number: 20150346992
    Abstract: Concepts and technologies are described herein for providing a 3D data environment navigation tool. In accordance with some concepts and technologies disclosed herein, the 3D data environment navigation tool provides a way for a user to manipulate a 3D data environment in which productivity data is rendered. The 3D data environment navigation tool may provide a user interacting with the 3D data environment the ability to manipulate the viewing angle of data rendered in a 3D data environment, thus allowing the user to “tour” or “move around” the data. The 3D data environment navigation tool may be configured to aggregate data at various zoom levels.
    Type: Application
    Filed: August 12, 2015
    Publication date: December 3, 2015
    Inventors: Kevin H. Fan, Danhua Zhu, Jai Srinivasan, Jonathan Edgar Fay, Curtis G. Wong
  • Patent number: 9189091
    Abstract: Techniques for enabling software-assisted assignment of control of peripherals (e.g., assigning ownership of or assigning access to the peripherals) by a computing device. In accordance with techniques described herein, assignment of control of peripherals is aided by input from software facilities that instruct a peripheral management facility regarding assignment of peripherals. Software facilities may instruct the peripheral management facility in different ways. In some cases, a software facility may instruct the peripheral management facility how to assign control of a peripheral in a particular way, while in other cases a software facility may instruct the peripheral management facility how to assign control of a group of peripherals. In other cases, a software facility may not instruct a peripheral management facility how to assign control of peripherals, but may identify one or more groups of peripherals for which control should be assigned as a group.
    Type: Grant
    Filed: March 6, 2013
    Date of Patent: November 17, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Michael F. Koenig, Ira Snyder, Jack Creasey, Jai Srinivasan, Kanchan Mitra
  • Patent number: 9104252
    Abstract: Techniques for enabling software-assisted assignment of control of peripherals (e.g., assigning ownership of or assigning access to the peripherals) by a computing device. In accordance with techniques described herein, assignment of control of peripherals is aided by input from software facilities that instruct a peripheral management facility regarding assignment of peripherals. Software facilities may instruct the peripheral management facility in different ways. In some cases, a software facility may instruct the peripheral management facility how to assign control of a peripheral in a particular way, while in other cases a software facility may instruct the peripheral management facility how to assign control of a group of peripherals. In other cases, a software facility may not instruct a peripheral management facility how to assign control of peripherals, but may identify one or more groups of peripherals for which control should be assigned as a group.
    Type: Grant
    Filed: June 17, 2010
    Date of Patent: August 11, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Michael F. Koenig, Ira Snyder, Jack Creasey, Jai Srinivasan, Kanchan Mitra
  • Publication number: 20150070379
    Abstract: Techniques to manage color representations for a digital map are described. A method may comprise receiving category information having multiple categories defined for a geographic area of a digital map, each of the multiple categories having a category value. The method may further comprise selecting at least one color to represent two or more categories of the multiple categories. The method may still further comprise generating, by circuitry, an annotated digital map, the annotated digital map to comprise the digital map annotated with variations of the at least one color to represent the two or more categories of the multiple categories. Other embodiments are described and claimed.
    Type: Application
    Filed: April 8, 2014
    Publication date: March 12, 2015
    Applicant: MICROSOFT CORPORATION
    Inventors: Kevin FAN, Alexandre DA VEIGA, Jai SRINIVASAN
  • Publication number: 20140047381
    Abstract: Concepts and technologies are described herein for providing a 3D data environment navigation tool. In accordance with some concepts and technologies disclosed herein, the 3D data environment navigation tool provides a way for a user to manipulate a 3D data environment in which productivity data is rendered. The 3D data environment navigation tool may provide a user interacting with the 3D data environment the ability to manipulate the viewing angle of data rendered in a 3D data environment, thus allowing the user to “tour” or “move around” the data. The 3D data environment navigation tool may be configured to aggregate data at various zoom levels.
    Type: Application
    Filed: April 4, 2013
    Publication date: February 13, 2014
    Applicant: Microsoft Corporation
    Inventors: Kevin Fan, Danhua Zhu, Jai Srinivasan, Jonathan Edgar Fay, Curtis G. Wong
  • Publication number: 20140043325
    Abstract: Concepts and technologies are described herein for facetted browsing. In accordance with the concepts and technologies disclosed herein, data can be obtained at a computer system. The data can include data values and geographic information. The computer system can generate a geospatial visualization of the data based, at least partially, upon the data values and the geographic location information. The computer system can also generate an overlay visualization of the data based, at least partially, upon the data values. The computer system can also output the geospatial visualization and the overlay visualization.
    Type: Application
    Filed: May 31, 2013
    Publication date: February 13, 2014
    Inventors: B. Scott Ruble, Danhua Zhu, Eric W. Patterson, Curtis G. Wong, Jai Srinivasan, Kevin Fan, Jonathan Edgar Fay, John Alfred Payne, Igor Borisov Peev
  • Publication number: 20140047312
    Abstract: Concepts and technologies are described herein for displaying temporal information in a spreadsheet application. In accordance with the concepts and technologies disclosed herein, spreadsheet data can be obtained at a computer system. The spreadsheet data can include data values, temporal information, and geographic information. The computer system can generate a visualization of the spreadsheet data based, at least partially, upon the data values, the temporal information, and the geographic location information. The computer system also can output the visualization.
    Type: Application
    Filed: April 3, 2013
    Publication date: February 13, 2014
    Applicant: Microsoft Corporation
    Inventors: B. Scott Ruble, Curtis G. Wong, Igor Borisov Peev, Kevin Fan, Jai Srinivasan, Ehab Sobhy, Jonathan Edgar Fay
  • Publication number: 20140047385
    Abstract: Concepts and technologies are described herein for providing a 3D data environment disambiguation tool. In accordance with some concepts and technologies disclosed herein, a 3D data environment disambiguation tool can be configured to resolve an ambiguity associated with one or more data points to be rendered in a 3D data environment. The 3D data environment disambiguation tool can present various user interfaces to receive inputs to resolve an ambiguity associated with a data point. The ambiguity can be resolved prior to, in conjunction with, or after the selected data is rendered in a 3D data environment, or various combinations thereof.
    Type: Application
    Filed: February 5, 2013
    Publication date: February 13, 2014
    Applicant: MICROSOFT CORPORATION
    Inventors: B. Scott Ruble, Kevin Fan, Jai Srinivasan, Michael Kallay, Alexandre da Veiga, Ehab Sobhy
  • Patent number: 8375393
    Abstract: Resource management architectures implemented in computer systems to manage resources are described. In one embodiment, a general architecture includes a resource manager and multiple resource providers that support one or more resource consumers such as a system component or application. Each provider is associated with a resource and acts as the manager for the resource when interfacing with the resource manager. The resource manager arbitrates access to the resources provided by the resource providers on behalf of the consumers. A policy manager sets various policies that are used by the resource manager to allocate resources. A resource consumer creates an “activity” at the resource manager and builds one or more “configurations” that describe various sets of preferred resources required to perform the activity. Each resource consumer can specify one or more configurations for each activity.
    Type: Grant
    Filed: September 1, 2006
    Date of Patent: February 12, 2013
    Assignee: Microsoft Corporation
    Inventors: Mukund Sankaranarayan, Jai Srinivasan, Andy R. Raffman
  • Patent number: 8370550
    Abstract: Described herein are various techniques and principles for determining how to assign control of peripherals and assigning control of peripherals. In some embodiments, determining how to assign control of peripherals comprises reviewing connections of peripherals to the computing device and evaluating rules to determine management points in the connections. In some cases, the connections of peripherals to the computing device may be organized into a hierarchy corresponding to a hierarchy of physical connections of the peripherals, including physical connections of peripherals located remote from the computing device and possibly connected through another computing device. When management points are identified among the connections, control of peripherals associated with the management points may be assigned in the same way. For example, access rights to each of the peripherals may be assigned to a same user session.
    Type: Grant
    Filed: July 19, 2010
    Date of Patent: February 5, 2013
    Assignee: Microsoft Corporation
    Inventors: Jack Creasey, Clark David Nicholson, Kanchan Mitra, Robert C. Elmer, Kaushik Barat, Jai Srinivasan, Jay Curtis Beavers
  • Patent number: 8233765
    Abstract: A computing system that has access to a streamed multimedia sample that is stored on a storage medium applies a zero-based presentation timestamp numbering scheme to the data packets of the multimedia sample, on-the-fly, and after each seek operation. After seeking to a desired starting point, the computing system reads ahead a maximum number of data packets within each media stream of the multimedia sample. A smallest timestamp (normalizing presentation timestamp) is identified and then subtracted from the timestamps of the data packets that are transmitted to the appropriate rendering devices, thereby creating appropriate presentation timestamps for the data packets for synchronizing the playback of the multimedia sample.
    Type: Grant
    Filed: October 5, 2007
    Date of Patent: July 31, 2012
    Assignee: Microsoft Corporation
    Inventors: Matthijs A. Gates, Jai Srinivasan
  • Patent number: 8019067
    Abstract: A user interface for a telephone system may include a telephone portion operable to provide telephone administration functionality for each of a plurality of telephones of a telephone system. The telephone portion may include a telephone icon corresponding to at least one telephone of the plurality of telephones, the telephone icon operable to provide the telephone administration functionality for the at least one telephone. Other portions of the user interface may include an external line portion, an extension portion, or a user portion, which may include, respectively, an external line icon, an extension icon, and a user icon, where each icon may provide associated administration functionality. Accordingly, the user interface allows an administrator of the telephone system to easily view and administer the devices and elements of the telephone system.
    Type: Grant
    Filed: March 7, 2006
    Date of Patent: September 13, 2011
    Assignee: Microsoft Corporation
    Inventors: Jonathan J. Cadiz, Gursharan S. Sidhu, Jai Srinivasan, Xuedong Huang
  • Publication number: 20110202689
    Abstract: Techniques for enabling software-assisted assignment of control of peripherals (e.g., assigning ownership of or assigning access to the peripherals) by a computing device. In accordance with techniques described herein, assignment of control of peripherals is aided by input from software facilities that instruct a peripheral management facility regarding assignment of peripherals. Software facilities may instruct the peripheral management facility in different ways. In some cases, a software facility may instruct the peripheral management facility how to assign control of a peripheral in a particular way, while in other cases a software facility may instruct the peripheral management facility how to assign control of a group of peripherals. In other cases, a software facility may not instruct a peripheral management facility how to assign control of peripherals, but may identify one or more groups of peripherals for which control should be assigned as a group.
    Type: Application
    Filed: June 17, 2010
    Publication date: August 18, 2011
    Applicant: Microsoft Corporation
    Inventors: Michael F. Koenig, Ira Snyder, Jack Creasey, Jai Srinivasan, Kanchan Mitra
  • Publication number: 20110202750
    Abstract: Described herein are various techniques and principles for determining how to assign control of peripherals and assigning control of peripherals. In some embodiments, determining how to assign control of peripherals comprises reviewing connections of peripherals to the computing device and evaluating rules to determine management points in the connections. In some cases, the connections of peripherals to the computing device may be organized into a hierarchy corresponding to a hierarchy of physical connections of the peripherals, including physical connections of peripherals located remote from the computing device and possibly connected through another computing device. When management points are identified among the connections, control of peripherals associated with the management points may be assigned in the same way. For example, access rights to each of the peripherals may be assigned to a same user session.
    Type: Application
    Filed: July 19, 2010
    Publication date: August 18, 2011
    Applicant: Microsoft Corporation
    Inventors: Jack Creasey, Clark David Nicholson, Kanchan Mitra, Robert C. Elmer, Kaushik Barat, Jai Srinivasan, Jay Curtis Beavers
  • Patent number: 7844972
    Abstract: Resource management architectures implemented in computer systems to manage resources are described. In one embodiment, a general architecture includes a resource manager and multiple resource providers that support one or more resource consumers such as a system component or application. Each provider is associated with a resource and acts as the manager for the resource when interfacing with the resource manager. The resource manager arbitrates access to the resources provided by the resource providers on behalf of the consumers. A policy manager sets various policies that are used by the resource manager to allocate resources. One policy is a priority-based policy that distinguishes among which applications and/or users have priority over others to use the resources. A resource consumer creates an “activity” at the resource manager and builds one or more “configurations” that describe various sets of preferred resources required to perform the activity.
    Type: Grant
    Filed: February 27, 2006
    Date of Patent: November 30, 2010
    Assignee: Microsoft Corporation
    Inventors: Jayachandran Raja, Jai Srinivasan, Mukund Sankaranarayan, David S. Bakin, Sean C. McDowell, Robin C. B. Speed