Patents by Inventor Harish Kantamneni
Harish Kantamneni 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: 11593868Abstract: A method includes generating, based on user images, a user 3-D model. The method proceeds with obtaining, via a user interface, a request to graphically represent an accessory on to a user graphical representation. This user graphical representation is generated using the user 3-D model. In response to this request, an accessory 3-D model is obtained. Further, the method includes positioning, via the user interface and based on parameters of the user 3-D model and of the accessory 3-D model, an accessory graphical representation on to the user graphical representation. The method further includes updating, in response to detecting user movement, the user 3-D model and the accessory 3-D model and presenting, via the user interface and based on these updated 3-D models, the accessory graphical representation and the user graphical representation in accordance with the user movement.Type: GrantFiled: December 31, 2019Date of Patent: February 28, 2023Assignee: Mirelz Inc.Inventors: Harish Kantamneni, Pratima Adusumilli
-
Patent number: 11068971Abstract: A method includes obtaining, from a first computing device, a request to establish a communications session between the first computing device and a second computing device to initiate a virtual try-on session for a first user of the first computing device. The method proceeds with establishing the communications session between these computing devices, where the communications session is configured to enable the virtual try-on session to be simultaneously viewed on user interfaces of both devices. Further, the method includes receiving, from the first computing device, a selection of items for presentation on a first user graphical representation. In response to this selection, the user interfaces are simultaneously updated to present these items on the first user graphical representation. The method further includes obtaining, from the second computing device, feedback on these items from a second user and updating both user interfaces in accordance with this feedback.Type: GrantFiled: December 31, 2019Date of Patent: July 20, 2021Assignee: MIRELZ INC.Inventors: Harish Kantamneni, Pratima Adusumilli
-
Patent number: 9697021Abstract: A computer-implemented method includes compiling one or more segments of code during run-time of a process executing at one or more processors of a computer system. The compilation produces a high-level intermediate representation of the one or more segments of the code. The high-level intermediate representation is modifiable by the process, without executing the high-level intermediate representation, to generate a modified high-level intermediate representation that is executable by the process.Type: GrantFiled: April 30, 2010Date of Patent: July 4, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Harish Kantamneni, Andrew Cherry, Anders Hauge, Amanda Silver, Nathan Carlson, Anthony Crider, Abhijeet S. Shah, Ming Hong Zhu
-
Patent number: 9052913Abstract: A method includes, during compilation of a portion of source code at a compiler, initiating token resolution with respect to a token included in the portion of source code. A static context and a dynamic context of the compiler are queried to identify one or more lookup results of the token. A particular lookup result is selected to resolve the token based on one or more semantic rules of the compiler. The particular lookup result is selected independently of whether the particular lookup result is sourced from the static context or from the dynamic context. The method includes resolving the token based on the selected particular lookup result.Type: GrantFiled: May 7, 2010Date of Patent: June 9, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Harish Kantamneni, Andrew Cherry, Anders Hauge, Amanda Silver, Nathan Carlson, Anthony Crider, Abhijeet S. Shah, Ming Hong Zhu
-
Patent number: 8997040Abstract: A system and method for accessing closure variables from a lambda expression in certain program configurations, in which the closure variable is accessed while the closure function is active and the closure variable is within an active runtime frame stack corresponding to an instance of the closure function. In response to entering the closure function, a pointer to each closure variable is stored in a stack pointer table. Each reference to each closure variable from the lambda expression is handled by using the closure variable pointer to locate the closure variable on the runtime stack. Program code may be instrumented to insert invocations to helper functions at locations upon entering the closure function and at each reference to each closure variable from the lambda expression.Type: GrantFiled: March 24, 2010Date of Patent: March 31, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Igor Zinkovsky, Harish Kantamneni
-
Patent number: 8464280Abstract: A system and method for controlling the execution of notifications in a computer system with multiple notification contexts. A RunOn operator enables context hopping between notification contexts. Push-based stream operators optionally perform error checking to determine if notifications combined into a push-based stream share a common notification context. Context boxes group together notification creators and associate their notifications with a common scheduler and notification context. Operators employ a composition architecture, in which they receive one or more push-based streams and produce a transformed push-based stream that may be further operated upon. Components may be used in combinations to implement various policies, including a strict policy in which all notifications are scheduled in a common execution context, a permissive policy that provides programming flexibility, and a hybrid policy that combines flexibility with error checking.Type: GrantFiled: January 8, 2010Date of Patent: June 11, 2013Assignee: Microsoft CorporationInventors: John Dyer, Henricus Johannes Maria Meijer, Mark Shields, Jeffrey van Gogh, Danny van Velzen, Brian Beckman, Harish Kantamneni
-
Publication number: 20110276953Abstract: A method includes, during compilation of a portion of source code at a compiler, initiating token resolution with respect to a token included in the portion of source code. A static context and a dynamic context of the compiler are queried to identify one or more lookup results of the token. A particular lookup result is selected to resolve the token based on one or more semantic rules of the compiler. The particular lookup result is selected independently of whether the particular lookup result is sourced from the static context or from the dynamic context. The method includes resolving the token based on the selected particular lookup result.Type: ApplicationFiled: May 7, 2010Publication date: November 10, 2011Applicant: Microsoft CorporationInventors: Harish Kantamneni, Andrew Cherry, Anders Hauge, Amanda Silver, Nathan Carlson, Anthony Crider, Abhijeet S. Shah, Ming Hong Zhu
-
Publication number: 20110271261Abstract: A computer-implemented method includes compiling one or more segments of code during run-time of a process executing at one or more processors of a computer system. The compilation produces a high-level intermediate representation of the one or more segments of the code. The high-level intermediate representation is modifiable by the process, without executing the high-level intermediate representation, to generate a modified high-level intermediate representation that is executable by the process.Type: ApplicationFiled: April 30, 2010Publication date: November 3, 2011Applicant: Microsoft CorporationInventors: Harish Kantamneni, Andrew Cherry, Anders Hauge, Amanda Silver, Nathan Carlson, Anthony Crider, Abhijeet S. Shah, Ming Hong Zhu
-
Publication number: 20110239186Abstract: A system and method for accessing closure variables from a lambda expression in certain program configurations, in which the closure variable is accessed while the closure function is active and the closure variable is within an active runtime frame stack corresponding to an instance of the closure function. In response to entering the closure function, a pointer to each closure variable is stored in a stack pointer table. Each reference to each closure variable from the lambda expression is handled by using the closure variable pointer to locate the closure variable on the runtime stack. Program code may be instrumented to insert invocations to helper functions at locations upon entering the closure function and at each reference to each closure variable from the lambda expression.Type: ApplicationFiled: March 24, 2010Publication date: September 29, 2011Applicant: Microsoft CorporationInventors: Igor Zinkovsky, Harish Kantamneni
-
Publication number: 20110173620Abstract: A system and method for controlling the execution of notifications in a computer system with multiple notification contexts. A RunOn operator enables context hopping between notification contexts. Push-based stream operators optionally perform error checking to determine if notifications combined into a push-based stream share a common notification context. Context boxes group together notification creators and associate their notifications with a common scheduler and notification context. Operators employ a composition architecture, in which they receive one or more push-based streams and produce a transformed push-based stream that may be further operated upon. Components may be used in combinations to implement various policies, including a strict policy in which all notifications are scheduled in a common execution context, a permissive policy that provides programming flexibility, and a hybrid policy that combines flexibility with error checking.Type: ApplicationFiled: January 8, 2010Publication date: July 14, 2011Applicant: Microsoft CorporationInventors: John Dyer, Henricus Johannes Maria Meijer, Mark Shields, Jeffrey van Gogh, Danny van Velzen, Brian Beckman, Harish Kantamneni
-
Publication number: 20090228904Abstract: Asynchronous methods and calls are produced automatically as a function of a declarative indication of intent. A method annotated with an asynchronous attribute or method call including a special asynchronous function can be identified. Subsequently, an asynchronous version of an identified synchronous method or call is generated automatically. Assistance is also provided for specifying intent.Type: ApplicationFiled: March 4, 2008Publication date: September 10, 2009Applicant: MICROSOFT CORPORATIONInventors: Henricus Johannes Maria Meijer, John Wesley Dyer, Jeffrey Van Gogh, Danny Van Velzen, Harish Kantamneni, Dragos A. Manolescu, Brian Beckman, Benjamin Livshits
-
Publication number: 20080244516Abstract: Systems and methods facilitate variable capture with respect to closures in object oriented programming languages. In particular, multiple copies of closure variables are generated such that lifetime of variables is defined by variable scope. However, if a previous version of a variable exists, a newly created variable is initialized with the value of the previous version.Type: ApplicationFiled: July 26, 2007Publication date: October 2, 2008Applicant: MICROSOFT CORPORATIONInventors: Henricus Johannes Maria Meijer, Amanda Silver, Paul A. Vick, Harish Kantamneni, Jared Parsons
-
Publication number: 20050097532Abstract: Techniques are disclosed to support the resolution of an operator which has been called with inconsistent typing and at least one operand of a user-defined type. In order to allow the compilation of such an operation, first all possible widening conversions for each operand are examined to determine if any widening conversions of any operands would result in types over which the operator is defined. If not, both the narrowing and the widening conversions of each operand are considered, to determine if any conversions of either or both operands would result in types for which the operator is defined. If only widening conversions are used, the most encompassed possible result type is selected as the target type. If a narrowing conversion is used, the most encompassing possible result type is selected as the target type. In order to use the target type, each operand is converted to the target type. The operation is then performed using the converted operands.Type: ApplicationFiled: October 31, 2003Publication date: May 5, 2005Inventors: Cameron Beccario, Paul Vick, Harish Kantamneni, Amanda Silver, John Hamby