Patents by Inventor Leonardo E. Blanco
Leonardo E. Blanco 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: 9177533Abstract: Virtual surface update and composition techniques are described. These techniques support the use of initialization and batching of updates, use of updates and lookaside lists, use of gutters, blending and BLT operations, use of surface optimization techniques such as push down as well as enumeration and clumping, mesh usage, and use of occlusion management techniques.Type: GrantFiled: May 31, 2012Date of Patent: November 3, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Reiner Fink, Leonardo E. Blanco, Cenk Ergan, Joshua Warren Priestley, Silvana Patricia Moncayo, Blake D. Pelton
-
Patent number: 9111370Abstract: Buffer display techniques are described. In one or more implementations, at least part of an off-screen buffer is rasterized by an application to generate an item for display by the computing device. One or more communications are formed that describe the part of the off-screen buffer which contains the item that is to be copied to update an onscreen buffer.Type: GrantFiled: October 15, 2014Date of Patent: August 18, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Leonardo E. Blanco, Daniel N. Wood, Max McMullen, Allison W. Klein, Brian T. Klamik, Michael I. Borysenko, Keith D. Melmon, Michael P. Crider, Silvana Patricia Moncayo
-
Publication number: 20150035844Abstract: Buffer display techniques are described. In one or more implementations, at least part of an off-screen buffer is rasterized by an application to generate an item for display by the computing device. One or more communications are formed that describe the part of the off-screen buffer which contains the item that is to be copied to update an onscreen buffer.Type: ApplicationFiled: October 15, 2014Publication date: February 5, 2015Inventors: Leonardo E. Blanco, Daniel N. Wood, Max McMullen, Allison W. Klein, Brian T. Klamik, Michael I. Borysenko, Keith D. Melmon, Michael P. Crider, Silvana Patricia Moncayo
-
Publication number: 20140344729Abstract: Primitive-based composition techniques are described. In one or more implementations, a global composition system may be configured to perform rendering for a plurality of applications. For example, the global composition system may be configured to expose one or more application programming interfaces (APIs) that are accessible to the applications. The APIs may then be used to cause a single composition engine to perform the rendering for the plurality of applications. Further, the composition engine may support the use of primitives, which include one or more rendering instructions and thus an element associated with a visual to be rendered may be something other than a bitmap.Type: ApplicationFiled: May 15, 2013Publication date: November 20, 2014Applicant: Microsoft CorporationInventors: Leonardo E. Blanco, Bede A. Jordan, Brendan J. Clark, Blake D. Pelton, Silvana Patricia Moncayo, Jesse Bishop, Vidhya Sriram, Aleksandar Antonijevic, Meng Yang, Joshua Warren Priestley, Adrian A. Mascarenhas, Ling Chen, Leah M. Keegan, Daniel C. Rischar
-
Publication number: 20140333637Abstract: Shared compositional resources are described. In one or more implementations, a global composition system may be configured to perform rendering for a plurality of processes, e.g., applications. For example, the global composition system may be configured to expose one or more application programming interfaces (APIs) that are accessible to the processes. The APIs may then be used to cause a single composition engine to perform the rendering for the plurality of applications. Thus, the single composition engine may be leveraged to support a variety of functionality, such as to manage sharing of compositional resources by a plurality of processes. This sharing may be performed in a variety of ways, which may include use of a writer/reader paradigm.Type: ApplicationFiled: May 10, 2013Publication date: November 13, 2014Applicant: Microsoft CorporationInventors: Leonardo E. Blanco, Reiner Fink
-
Patent number: 8884978Abstract: Buffer display techniques are described. In one or more implementations, at least part of an off-screen buffer is rasterized by an application to generate an item for display by the computing device. One or more communications are formed that describe the part of the off-screen buffer which contains the item that is to be copied to update an onscreen buffer.Type: GrantFiled: September 9, 2011Date of Patent: November 11, 2014Assignee: Microsoft CorporationInventors: Leonardo E. Blanco, Daniel N. Wood, Max McMullen, Allison W. Klein, Brian T. Klamik, Michael I. Borysenko, Keith D. Melmon, Michael P. Crider, Silvana Patricia Moncayo
-
Publication number: 20130321471Abstract: Virtual surface update and composition techniques are described. These techniques include support of initialization and batching of updates, use of updates and lookaside lists, use of gutters, blending and BLT operations, surface optimization techniques such as push down as well as enumeration and clumping, mesh usage, and occlusion management techniques.Type: ApplicationFiled: May 31, 2012Publication date: December 5, 2013Inventors: Reiner Fink, Leonardo E. Blanco, Cenk Ergan, Joshua Warren Priestley, Silvana Patricia Moncayo, Blake D. Pelton
-
Publication number: 20130321454Abstract: Virtual surface techniques are described. These techniques include support of initialization and batching of updates, use of updates and lookaside lists, use of gutters, blending and BLT operations, surface optimization techniques such as push down as well as enumeration and clumping, mesh usage, and occlusion management techniques.Type: ApplicationFiled: May 31, 2012Publication date: December 5, 2013Inventors: Reiner Fink, Leonardo E. Blanco, Cenk Ergan, Joshua Warren Priestley, Silvana Patricia Moncayo
-
Publication number: 20130321453Abstract: Virtual surface techniques are described. These techniques include support of initialization and batching of updates, use of updates and lookaside lists, use of gutters, blending and BLT operations, surface optimization techniques such as push down as well as enumeration and clumping, mesh usage, and occlusion management techniques.Type: ApplicationFiled: May 31, 2012Publication date: December 5, 2013Inventors: Reiner Fink, Leonardo E. Blanco, Cenk Ergan, Joshua Warren Priestley, Silvana Patricia Moncayo
-
Publication number: 20130321455Abstract: Virtual surface techniques are described. These techniques include support of initialization and batching of updates, use of updates and lookaside lists, use of gutters, blending and BLT operations, surface optimization techniques such as push down as well as enumeration and clumping, mesh usage, and occlusion management techniques.Type: ApplicationFiled: May 31, 2012Publication date: December 5, 2013Inventors: Reiner Fink, Leonardo E. Blanco, Cenk Ergan, Joshua Warren Priestley, Silvana Patricia Moncayo
-
Publication number: 20130063456Abstract: Buffer display techniques are described. In one or more implementations, at least part of an off-screen buffer is rasterized by an application to generate an item for display by the computing device. One or more communications are formed that describe the part of the off-screen buffer which contains the item that is to be copied to update an onscreen buffer.Type: ApplicationFiled: September 9, 2011Publication date: March 14, 2013Inventors: Leonardo E. Blanco, Daniel N. Wood, Max McMullen, Allison W. Klein, Brian T. Klamik, Michael I. Borysenko, Keith D. Melmon, Michael P. Crider, Silvana Patricia Moncayo
-
Publication number: 20130063445Abstract: Composition system thread techniques are described. In one or more implementations, a composition system may be configured to compose visual elements received from applications on a thread that is executed separately than a user interface thread of the applications. As such, the composition system may execute asynchronously from a user interface thread of the application. Additionally, the composition system may be configured to expose one or more application programming interfaces (APIs) that are accessible to the applications. The APIs may be used for constructing a tree of objects representing the operations that are to be performed to compose one or more bitmaps. Further, these operations may be controlled by several API visual properties to allow applications to animate content within their windows and use disparate technologies to rasterize such content.Type: ApplicationFiled: September 9, 2011Publication date: March 14, 2013Inventors: Leonardo E. Blanco, Silvana Patricia Moncayo, Jonathan P. Liperi, Reiner Fink, Imran Majid, Joshua Warren Priestley
-
Publication number: 20130067502Abstract: Atlasing and virtual surface techniques are described. In one or more implementations, virtual surface functionality is exposed by an operating system for access by one or more applications of the computing device. A virtual surface is created in response to a request from the one or more applications to be used to render visuals for display by a display device. The virtual surface is allocated in memory of the computing device by the exposed virtual surface functionality to have an area that is larger than an area to be used to display the visuals from the one or more applications.Type: ApplicationFiled: September 9, 2011Publication date: March 14, 2013Applicant: Microsoft CorporationInventors: Leonardo E. Blanco, Silvana Patricia Moncayo, Hang Li, Mary Luo, Imran Majid, Joshua Warren Priestley, Benjamin C. Constable, Anuj B. Gosalia, Aleksandar Antonijevic, Daniel N. Wood, Max McMullen
-
Publication number: 20120306912Abstract: A global composition system is described. In one or more implementations, the global composition system may be configured to perform rendering for a plurality of applications. For example, the global composition system may be configured to expose one or more application programming interfaces (APIs) that are accessible to the applications. The APIs may then be used to cause a single composition engine to perform the rendering for the plurality of applications. The use of a single composition engine may be used to support a variety of different functionality, such as to perform efficient rendering by knowing what elements are provided by each of the applications and how those items relate for rendering to a display device.Type: ApplicationFiled: June 2, 2011Publication date: December 6, 2012Applicant: Microsoft CorporationInventors: Leonardo E. Blanco, Silvana Patricia Moncayo, Reiner Fink
-
Patent number: 7716685Abstract: Described is a pluggable policy component that determines the look and feel, or windows visual experience, of a computer user interface. Window-related instructions are redirected to the policy component, while client area change instructions are provided to a substrate (into which the policy component plugs in) that includes a composition component. The plug-in policy component handles windows-related (e.g., structural or attribute) changes to a scene graph to construct and maintain the scene graph, while the substrate handles program content changes to the client areas within windows. The substrate may include a desktop window manager that has access to the client areas in the scene graph, whereby the desktop window manager can copy a client area for rendering. For example, the desktop window manager can provide a supplemental live thumbnail image of a window.Type: GrantFiled: August 30, 2005Date of Patent: May 11, 2010Assignee: Microsoft CorporationInventors: Greg D. Schechter, Gregory D. Swedberg, Christopher A. Fortier, Jevan Saks, Ian Hanschen, Leonardo E. Blanco, Adrian Secchia, Andrey E. Arsov
-
Patent number: 7626595Abstract: In aspects, a class hierarchy is defined that provides definitions of methods for operating on at least bitmaps and vector graphics. A software developer may instantiate an object according to a class definition of the class hierarchy and assign it to any variable (e.g., a control's property) having a type of an ancestor class of the class. The object may be associated with an image internally represented as bitmap, vector graphics, or some other representation. The control does not need to be aware of how the image is represented. Rather, to draw an image associated with the object, a draw method associated with the object may be called.Type: GrantFiled: August 1, 2005Date of Patent: December 1, 2009Assignee: Microsoft CorporationInventors: Greg D. Schechter, Adam M. Smith, Leonardo E. Blanco, Sriram Subramanian, Rajat Goel
-
Patent number: 7609280Abstract: A system that provides graphics commands that represent graphics or an image, to a consuming process. The graphics commands are represented by a visual tree which includes objects and resources describing the objects. The objects and resources are communicated to a composition engine that creates an analogous composition tree that is analogous to the visual tree. The composition tree is used to render the graphics or image.Type: GrantFiled: April 10, 2006Date of Patent: October 27, 2009Assignee: Microsoft CorporationInventors: Sriram Subramanian, Leonardo E. Blanco, Andrei Baioura, Oreste Dorin Ungureanu, Sriya Sampath, Pawel Olszta
-
Patent number: 7548237Abstract: A visual tree structure as specified by a program is constructed and maintained by a visual system's user interface thread. As needed, the tree structure is traversed on the UI thread, with changes compiled into change queues. A secondary rendering thread that handles animation and graphical composition takes the content from the change queues, to construct and maintain a condensed visual tree. Static visual subtrees are collapsed, leaving a condensed tree with only animated attributes such as transforms as parent nodes, such that animation data is managed on the secondary thread, with references into the visual tree. When run, the rendering thread processes the change queues, applies changes to the condensed trees, and updates the structure of the animation list as necessary by resampling animated values at their new times. Content in the condensed visual tree is then rendered and composed. Animation and a composition communication protocol are also provided.Type: GrantFiled: August 4, 2006Date of Patent: June 16, 2009Assignee: Microsoft CorporationInventors: Paul C. David, Gerhard A. Schneider, Matthew W. Calkins, Oreste Dorin Ungureanu, Ashraf Michail, Andrey E. Arsov, Leonardo E. Blanco
-
Patent number: 7511718Abstract: A media integration layer including an application programming interface (API) and an object model allows program code developers to interface in a consistent manner with a scene graph data structure in order to output graphics. Via the interfaces, program code adds child visuals to other visuals to build up a hierarchical scene graph, writes Instruction Lists such as geometry data, image data, animation data and other data for output, and may specify transform, clipping and opacity properties on visuals. The media integration layer and API enable programmers to accomplish composition effects within their applications in a straightforward manner, while leveraging the graphics processing unit in a manner that does not adversely impact normal application performance. A multiple-level system includes the ability to combine different media types (such as 2D, 3D, Video, Audio, text and imaging) and animate them smoothly and seamlessly.Type: GrantFiled: October 23, 2003Date of Patent: March 31, 2009Assignee: Microsoft CorporationInventors: Sriram Subramanian, Leonardo E. Blanco, Donald B. Curtis, Joseph S. Beda, Gerhard A. Schneider, Greg D. Schechter, Adam M. Smith, Eric S. Vandenberg, Matthew W. Calkins, Kevin T. Gallo, Michael Stokes, Rajat Goel
-
Patent number: 7450130Abstract: Described is an adaptive scheduler associated with a desktop window manager that dynamically controls the rate at which graphics frames are composed. Values corresponding to performance when composing a frame are measured, and the frame composition rate is adjusted as necessary based on the values. The measured data is sampled to provide smooth adjustments. The sampled data is evaluated as to whether the current frame rate is too slow, too fast, or acceptable. If too slow, the frame rate may increased relative to the refresh rate, while if too fast, the frame rate is decreased relative to the refresh rate. In one implementation, the frame rate is too fast if a count of missed frames achieves a missed threshold value, or if a count of late frames achieves a late threshold value. The frame rate is too slow if a count of early frames exceeds an early threshold value.Type: GrantFiled: September 14, 2005Date of Patent: November 11, 2008Assignee: Microsoft CorporationInventors: Gregory D. Swedberg, Prashant Ratanchandani, Greg Schechter, Glenn F. Evans, Leonardo E. Blanco, Kenneth S. Reneris, Sameer Avinash Nene