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: 10572274Abstract: 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: GrantFiled: February 6, 2018Date of Patent: February 25, 2020Assignee: Microsoft Technology Licensing, LLCInventors: 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: 20190095226Abstract: 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: ApplicationFiled: February 6, 2018Publication date: March 28, 2019Inventors: 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: 9881396Abstract: 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: GrantFiled: April 3, 2013Date of Patent: January 30, 2018Assignee: Microsoft Technology Licensing, LLCInventors: B. Scott Ruble, Curtis G. Wong, Igor Borisov Peev, Kevin Fan, Jai Srinivasan, Ehab Sobhy, Jonathan Edgar Fay
-
Publication number: 20170270082Abstract: 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: ApplicationFiled: May 3, 2016Publication date: September 21, 2017Inventors: James Thomas Marshall, Ehab Sobhy Deraz, Jimmy Y. Sun, Matthew W. Asplund, Jai Srinivasan, David Ping Tang
-
Publication number: 20160231915Abstract: 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: ApplicationFiled: June 10, 2015Publication date: August 11, 2016Applicant: Microsoft Technology Licensing, LLC.Inventors: Thomas Q. Nhan, Jai Srinivasan, Bhargavi Parthasarathy Hiremagalur, Daniel Benjamin Witriol
-
Publication number: 20150346992Abstract: 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: ApplicationFiled: August 12, 2015Publication date: December 3, 2015Inventors: Kevin H. Fan, Danhua Zhu, Jai Srinivasan, Jonathan Edgar Fay, Curtis G. Wong
-
Patent number: 9189091Abstract: 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: GrantFiled: March 6, 2013Date of Patent: November 17, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Michael F. Koenig, Ira Snyder, Jack Creasey, Jai Srinivasan, Kanchan Mitra
-
Patent number: 9104252Abstract: 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: GrantFiled: June 17, 2010Date of Patent: August 11, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Michael F. Koenig, Ira Snyder, Jack Creasey, Jai Srinivasan, Kanchan Mitra
-
Publication number: 20150070379Abstract: 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: ApplicationFiled: April 8, 2014Publication date: March 12, 2015Applicant: MICROSOFT CORPORATIONInventors: Kevin FAN, Alexandre DA VEIGA, Jai SRINIVASAN
-
Publication number: 20140047381Abstract: 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: ApplicationFiled: April 4, 2013Publication date: February 13, 2014Applicant: Microsoft CorporationInventors: Kevin Fan, Danhua Zhu, Jai Srinivasan, Jonathan Edgar Fay, Curtis G. Wong
-
Publication number: 20140043325Abstract: 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: ApplicationFiled: May 31, 2013Publication date: February 13, 2014Inventors: 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: 20140047312Abstract: 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: ApplicationFiled: April 3, 2013Publication date: February 13, 2014Applicant: Microsoft CorporationInventors: B. Scott Ruble, Curtis G. Wong, Igor Borisov Peev, Kevin Fan, Jai Srinivasan, Ehab Sobhy, Jonathan Edgar Fay
-
Publication number: 20140047385Abstract: 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: ApplicationFiled: February 5, 2013Publication date: February 13, 2014Applicant: MICROSOFT CORPORATIONInventors: B. Scott Ruble, Kevin Fan, Jai Srinivasan, Michael Kallay, Alexandre da Veiga, Ehab Sobhy
-
Patent number: 8375393Abstract: 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: GrantFiled: September 1, 2006Date of Patent: February 12, 2013Assignee: Microsoft CorporationInventors: Mukund Sankaranarayan, Jai Srinivasan, Andy R. Raffman
-
Patent number: 8370550Abstract: 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: GrantFiled: July 19, 2010Date of Patent: February 5, 2013Assignee: Microsoft CorporationInventors: Jack Creasey, Clark David Nicholson, Kanchan Mitra, Robert C. Elmer, Kaushik Barat, Jai Srinivasan, Jay Curtis Beavers
-
Patent number: 8233765Abstract: 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: GrantFiled: October 5, 2007Date of Patent: July 31, 2012Assignee: Microsoft CorporationInventors: Matthijs A. Gates, Jai Srinivasan
-
Patent number: 8019067Abstract: 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: GrantFiled: March 7, 2006Date of Patent: September 13, 2011Assignee: Microsoft CorporationInventors: Jonathan J. Cadiz, Gursharan S. Sidhu, Jai Srinivasan, Xuedong Huang
-
Publication number: 20110202689Abstract: 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: ApplicationFiled: June 17, 2010Publication date: August 18, 2011Applicant: Microsoft CorporationInventors: Michael F. Koenig, Ira Snyder, Jack Creasey, Jai Srinivasan, Kanchan Mitra
-
Publication number: 20110202750Abstract: 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: ApplicationFiled: July 19, 2010Publication date: August 18, 2011Applicant: Microsoft CorporationInventors: Jack Creasey, Clark David Nicholson, Kanchan Mitra, Robert C. Elmer, Kaushik Barat, Jai Srinivasan, Jay Curtis Beavers
-
Patent number: 7844972Abstract: 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: GrantFiled: February 27, 2006Date of Patent: November 30, 2010Assignee: Microsoft CorporationInventors: Jayachandran Raja, Jai Srinivasan, Mukund Sankaranarayan, David S. Bakin, Sean C. McDowell, Robin C. B. Speed