Patents by Inventor John Day-Richter
John Day-Richter 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).
-
Publication number: 20220245588Abstract: A method for providing a binary data file to at least a first client application and a second client application includes receiving a first request to access the binary data file from the first client application, and identifying a first document model associated with the binary data file, wherein the first document model reflects edits made to the binary data file by the first client application and the second client application. The method further includes transmitting data corresponding to the first document model to the first client application, receiving, from the second client application, a second request indicating a modification to the binary data file, revising the first document model associated with the binary data file to include the modification to the binary data file, and transmitting data corresponding to the revised first document model to the second client application.Type: ApplicationFiled: February 18, 2022Publication date: August 4, 2022Inventors: Brian Lewis Cairns, John Day-Richter
-
Patent number: 11257040Abstract: A document collaboration system allows applications to collaborate on a binary data file even if the binary data file is not in a collaborative document format. In response to a request from an application to access a binary data file, the document collaboration system gives the application access to a document model corresponding to the binary data file and the application If the document model does not already exist, it may be created by generating an empty document model, transmitting the binary data file to the application, and allowing the application to fill in the empty document model based on the binary data file. The document model may be provided to and modified by its related application through an application programming interface (API), and changes to the document model may be applied to the binary data file.Type: GrantFiled: October 7, 2019Date of Patent: February 22, 2022Assignee: Google LLCInventors: Brian Lewis Cairns, John Day-Richter
-
Publication number: 20210374899Abstract: In a graphics processing unit (GPU), receiving an input image comprising an array of pixels. Each pixel having a grayscale value from a range of N grayscale values. For each particular input patch of pixels of a set of input patches partitioning the input image and in parallel for each particular grayscale value the range, counting the number of pixels in the particular input patch having the particular grayscale value. In parallel for each particular input patch of pixels of a set of input patches partitioning the input image, creating an output image patch as an ordered sequence of N pixels, with the color value of the nth pixel in each corresponding output patch representing the count of pixels in the particular input patch having the nth grayscale value. Combining the output image patches into a single composite output image of N pixels, the pixel value of the nth pixel in the single composite output image corresponding to the count of pixels in the input image having the nth grayscale value.Type: ApplicationFiled: July 6, 2021Publication date: December 2, 2021Applicant: GOOGLE LLCInventors: John DAY-RICHTER, Peter MCNERNEY
-
Publication number: 20210358074Abstract: In a graphics processing unit (GPU), receiving an input image comprising an array of pixels. Each pixel having a gray scale value from a range of N grayscale values. For each particular input patch of pixels of a set of input patches partitioning the input image and in parallel for each particular grayscale value the range, counting the number of pixels in the particular input patch having the particular grayscale value. In parallel for each particular input patch of pixels of a set of input patches partitioning the input image, creating an output image patch as an ordered sequence of N pixels, with the color value of the nth pixel in each corresponding output patch representing the count of pixels in the particular input patch having the nth grayscale value. Combining the output image patches into a single composite output image of N pixels, the pixel value of the nth pixel in the single composite output image corresponding to the count of pixels in the input image having the nth grayscale value.Type: ApplicationFiled: February 27, 2019Publication date: November 18, 2021Applicant: GOOGLE LLCInventors: JOHN DAY-RICHTER, Peter MCNERNEY
-
Patent number: 11037329Abstract: A GPU receives an image comprising an array of pixels. The image includes at least one pixel of interest, the pixel of interest being positioned a number of pixels along a first axis from a reference and a number of pixels from the reference along a second axis that is orthogonal from the first axis. The GPU sets at least one first color channel of an output image of the pixel of interest based on the position along the first axis and at least one second remaining color channel of the output image of the pixel of interest based on the position along the second axis.Type: GrantFiled: June 3, 2019Date of Patent: June 15, 2021Assignee: Google LLCInventor: John Day-Richter
-
Publication number: 20200380730Abstract: A GPU receives an image comprising an array of pixels. The image includes at least one pixel of interest, the pixel of interest being positioned a number of pixels along a first axis from a reference and a number of pixels from the reference along a second axis that is orthogonal from the first axis. The GPU sets at least one first color channel of an output image of the pixel of interest based on the position along the first axis and at least one second remaining color channel of the output image of the pixel of interest based on the position along the second axis.Type: ApplicationFiled: June 3, 2019Publication date: December 3, 2020Inventor: John Day-Richter
-
Patent number: 10810777Abstract: A GPU receives an image comprising an array of pixels. The image depicts features in a field of an object on a background. The features and the background contrasting with the object field, and at least a portion of the object is at the center of the image. In parallel for each particular pixel of a first plurality of the pixels, the GPU sets the color value of the particular pixel to the lightest color value of a second plurality of the pixels substantially along a line outward from the particular pixel toward an edge of the image. The line can be defined by the particular pixel and the image center.Type: GrantFiled: March 28, 2019Date of Patent: October 20, 2020Assignee: Google LLCInventor: John Day-Richter
-
Publication number: 20200311996Abstract: A GPU receives an image comprising an array of pixels. The image depicts features in a field of an object on a background. The features and the background contrasting with the object field, and at least a portion of the object is at the center of the image. In parallel for each particular pixel of a first plurality of the pixels, the GPU sets the color value of the particular pixel to the lightest color value of a second plurality of the pixels substantially along a line outward from the particular pixel toward an edge of the image. The line can be defined by the particular pixel and the image center.Type: ApplicationFiled: March 28, 2019Publication date: October 1, 2020Inventor: John Day-Richter
-
Patent number: 10678999Abstract: A computer-implemented method for coordinating documents between computer systems includes identifying, on a computing device, changes made by a user to a document having a model stored on the computing device, with corresponding models stored on a remote client and a server system; generating from the identified changes, one or more mutations that describe the changes and a one or more locations that correspond to positions in the model where the changes are to be provided; receiving one or more mutations from the server system and transforming the generated mutations using the received mutations; and updating the model stored on the computing device using the transformed mutations.Type: GrantFiled: January 6, 2016Date of Patent: June 9, 2020Assignee: Google LLCInventors: Micah Lemonik, Olga Sergeyevna Saviano, Janani R. Ravi, Nicholas Cooper, Alexey Kalinichenko, John Day-Richter
-
Publication number: 20200051028Abstract: A document collaboration system allows applications to collaborate on a binary data file even if the binary data file is not in a collaborative document format. In response to a request from an application to access a binary data file, the document collaboration system gives the application access to a document model corresponding to the binary data file and the application If the document model does not already exist, it may be created by generating an empty document model, transmitting the binary data file to the application, and allowing the application to fill in the empty document model based on the binary data file. The document model may be provided to and modified by its related application through an application programming interface (API), and changes to the document model may be applied to the binary data file.Type: ApplicationFiled: October 7, 2019Publication date: February 13, 2020Inventors: Brian Lewis Cairns, John Day-Richter
-
Patent number: 10438169Abstract: A document collaboration system allows applications to collaborate on a binary data file even if the binary data file is not in a collaborative document format. In response to a request from an application to access a binary data file, the document collaboration system gives the application access to a document model corresponding to the binary data file and the application. If the document model does not already exist, it may be created by generating an empty document model, transmitting the binary data file to the application, and allowing the application to fill in the empty document model based on the binary data file. The document model may be provided to and modified by its related application through an application programming interface (API), and changes to the document model may be applied to the binary data file.Type: GrantFiled: March 14, 2014Date of Patent: October 8, 2019Assignee: GOOGLE LLCInventors: Brian Lewis Cairns, John Day-Richter
-
Patent number: 9384176Abstract: A tangible computer-readable storage medium having encoded on it data that represents a model of a document, the document model including a one-dimensional character string that includes characters of the document in an order in which they appear in the document; a map of styles that includes markers that correspond to changes in styles in the document, and pointers to the character string, wherein the pointers define locations along the character string at which the changes in styles are to occur and define style runs between matched markers; and one or more external references to objects outside the document model, the external references including identifiers for the objects and pointers to the character string indicating where in the character string the object will appear.Type: GrantFiled: June 4, 2013Date of Patent: July 5, 2016Assignee: Google Inc.Inventors: Micah Lemonik, Olga Sergeyevna Saviano, Janani R. Ravi, Luiz Amaral Franca Pereira Filho, John Day-Richter, Edgard Lindner
-
Patent number: 9336137Abstract: An object that is not linked to a root object of a data model is identified. A first instruction comprising a fingerprint and a request to delete the object from memory is transmitted to a plurality of user devices. A second instruction to undo the first instruction is received from one of the plurality of user devices, and, in response to the second instruction, a third instruction comprising the fingerprint and a request to execute and delete any instruction that includes the fingerprint is transmitted to the plurality of user devices.Type: GrantFiled: August 22, 2012Date of Patent: May 10, 2016Assignee: Google Inc.Inventors: John Day-Richter, John McGowan
-
Publication number: 20160117298Abstract: A computer-implemented method for coordinating documents between computer systems includes identifying, on a computing device, changes made by a user to a document having a model stored on the computing device, with corresponding models stored on a remote client and a server system; generating from the identified changes, one or more mutations that describe the changes and a one or more locations that correspond to positions in the model where the changes are to be provided; receiving one or more mutations from the server system and transforming the generated mutations using the received mutations; and updating the model stored on the computing device using the transformed mutations.Type: ApplicationFiled: January 6, 2016Publication date: April 28, 2016Inventors: Micah Lemonik, Olga Sergeyevna Saviano, Janani R. Ravi, Nicholas Cooper, Alexey Kalinichenko, John Day-Richter
-
Patent number: 9286276Abstract: A device embeds a first frame in a second frame. A first mutation defining a first change made to a document within the first frame is generated. A second mutation defining a second change made to the document within the second frame is generated. The first mutation and a first embed identifier assigned to the first mutation and the second mutation and a second embed identifier assigned to the second mutation are transmitted to a remote server. A first instruction relating to the document and including the first embed identifier and a second instruction relating to the document and including the second embed identifier are received from the remote server. The first instruction, based on the first embed identifier, is transmitted by the device to the first frame. The second instruction, based on the second embed identifier, is transmitted by the device to the second frame.Type: GrantFiled: June 11, 2012Date of Patent: March 15, 2016Assignee: Google Inc.Inventors: Brian Lewis Cairns, John Day-Richter
-
Patent number: 9251126Abstract: A request for a document from a mobile device via a network is received. In response to the request, within the document a non-textual document element unrecognizable to the mobile device is identified. Within the document, at a first location associated with the non-textual document element, a start marker comprising a first code selected from a predetermined Unicode range is inserted. Within the document, at a second location associated with the non-textual document element, an end marker comprising a second code selected from the predetermined Unicode range is inserted. The second code has a predetermined relationship to the first code. The document is transmitted to the mobile device via the network.Type: GrantFiled: November 16, 2011Date of Patent: February 2, 2016Assignee: GOOGLE INC.Inventors: Andrew Alexander Grieve, John Day-Richter
-
Patent number: 9195840Abstract: Techniques are described for facilitating file access control of a storage service. In response to a third-party application requesting access to a user's file, the service extracts an application-specific ID from a file type associated with the retrieved file; and grants access to the requested file in response to a determination that an application-specific ID for the third-party application matches an application-specific ID extracted from the file. This Abstract is submitted with the understanding that it will not be used to interpret or limit the scope or meaning of the claims.Type: GrantFiled: April 23, 2012Date of Patent: November 24, 2015Assignee: Google Inc.Inventors: John Day-Richter, Brian Lewis Cairns
-
Patent number: 9176720Abstract: Techniques are shown for installing third-party applications onto a network system in appropriate containers on the network system. The containers store data and content of the same internet media type or MIME-type as the third-party applications.Type: GrantFiled: April 23, 2012Date of Patent: November 3, 2015Assignee: Google Inc.Inventors: John Day-Richter, Brian Lewis Cairns, Eric Benson Schoeffler, Michael Jeffrey Procopio, Micah Lemonik, Adam Wayne Besen, Brian Edgar Eaton, Robert Eugene Wyrick
-
Patent number: 9148429Abstract: Techniques are shown for providing third-party applications access to user resources based on user actions and processes that provide the third-party applications with the correct security tokens. The scope of access granted in various implementations of the disclosure is all documents which the user has already opened with the third-party application.Type: GrantFiled: April 23, 2012Date of Patent: September 29, 2015Assignee: Google Inc.Inventors: Brian Lewis Cairns, Eric Benson Schoeffler, John Day Richter, Michael Jeffrey Procopio, Brian Edgar Eaton, Adam Wayne Besen, Robert Eugene Wyrick
-
Publication number: 20150200948Abstract: Techniques are shown for providing third-party applications access to user resources based on user actions and processes that provide the third-party applications with the correct security tokens. The scope of access granted in various implementations of the disclosure is all documents which the user has already opened with the third-party application.Type: ApplicationFiled: April 23, 2012Publication date: July 16, 2015Applicant: GOOGLE INC.Inventors: Brian Lewis Cairns, Eric Benson Schoeffler, John Day Richter, Michael Jeffrey Procopio, Brian Edgar Eaton, Adam Wayne Besen, Robert Eugene Wyrick