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: 20220245588
    Abstract: 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: Application
    Filed: February 18, 2022
    Publication date: August 4, 2022
    Inventors: Brian Lewis Cairns, John Day-Richter
  • Patent number: 11257040
    Abstract: 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: Grant
    Filed: October 7, 2019
    Date of Patent: February 22, 2022
    Assignee: Google LLC
    Inventors: Brian Lewis Cairns, John Day-Richter
  • Publication number: 20210374899
    Abstract: 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: Application
    Filed: July 6, 2021
    Publication date: December 2, 2021
    Applicant: GOOGLE LLC
    Inventors: John DAY-RICHTER, Peter MCNERNEY
  • Publication number: 20210358074
    Abstract: 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: Application
    Filed: February 27, 2019
    Publication date: November 18, 2021
    Applicant: GOOGLE LLC
    Inventors: JOHN DAY-RICHTER, Peter MCNERNEY
  • Patent number: 11037329
    Abstract: 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: Grant
    Filed: June 3, 2019
    Date of Patent: June 15, 2021
    Assignee: Google LLC
    Inventor: John Day-Richter
  • Publication number: 20200380730
    Abstract: 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: Application
    Filed: June 3, 2019
    Publication date: December 3, 2020
    Inventor: John Day-Richter
  • Patent number: 10810777
    Abstract: 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: Grant
    Filed: March 28, 2019
    Date of Patent: October 20, 2020
    Assignee: Google LLC
    Inventor: John Day-Richter
  • Publication number: 20200311996
    Abstract: 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: Application
    Filed: March 28, 2019
    Publication date: October 1, 2020
    Inventor: John Day-Richter
  • Patent number: 10678999
    Abstract: 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: Grant
    Filed: January 6, 2016
    Date of Patent: June 9, 2020
    Assignee: Google LLC
    Inventors: Micah Lemonik, Olga Sergeyevna Saviano, Janani R. Ravi, Nicholas Cooper, Alexey Kalinichenko, John Day-Richter
  • Publication number: 20200051028
    Abstract: 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: Application
    Filed: October 7, 2019
    Publication date: February 13, 2020
    Inventors: Brian Lewis Cairns, John Day-Richter
  • Patent number: 10438169
    Abstract: 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: Grant
    Filed: March 14, 2014
    Date of Patent: October 8, 2019
    Assignee: GOOGLE LLC
    Inventors: Brian Lewis Cairns, John Day-Richter
  • Patent number: 9384176
    Abstract: 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: Grant
    Filed: June 4, 2013
    Date of Patent: July 5, 2016
    Assignee: Google Inc.
    Inventors: Micah Lemonik, Olga Sergeyevna Saviano, Janani R. Ravi, Luiz Amaral Franca Pereira Filho, John Day-Richter, Edgard Lindner
  • Patent number: 9336137
    Abstract: 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: Grant
    Filed: August 22, 2012
    Date of Patent: May 10, 2016
    Assignee: Google Inc.
    Inventors: John Day-Richter, John McGowan
  • Publication number: 20160117298
    Abstract: 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: Application
    Filed: January 6, 2016
    Publication date: April 28, 2016
    Inventors: Micah Lemonik, Olga Sergeyevna Saviano, Janani R. Ravi, Nicholas Cooper, Alexey Kalinichenko, John Day-Richter
  • Patent number: 9286276
    Abstract: 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: Grant
    Filed: June 11, 2012
    Date of Patent: March 15, 2016
    Assignee: Google Inc.
    Inventors: Brian Lewis Cairns, John Day-Richter
  • Patent number: 9251126
    Abstract: 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: Grant
    Filed: November 16, 2011
    Date of Patent: February 2, 2016
    Assignee: GOOGLE INC.
    Inventors: Andrew Alexander Grieve, John Day-Richter
  • Patent number: 9195840
    Abstract: 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: Grant
    Filed: April 23, 2012
    Date of Patent: November 24, 2015
    Assignee: Google Inc.
    Inventors: John Day-Richter, Brian Lewis Cairns
  • Patent number: 9176720
    Abstract: 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: Grant
    Filed: April 23, 2012
    Date of Patent: November 3, 2015
    Assignee: 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: 9148429
    Abstract: 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: Grant
    Filed: April 23, 2012
    Date of Patent: September 29, 2015
    Assignee: 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: 20150200948
    Abstract: 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: Application
    Filed: April 23, 2012
    Publication date: July 16, 2015
    Applicant: GOOGLE INC.
    Inventors: Brian Lewis Cairns, Eric Benson Schoeffler, John Day Richter, Michael Jeffrey Procopio, Brian Edgar Eaton, Adam Wayne Besen, Robert Eugene Wyrick