System for distributing objects to multiple clients
First Claim
1. A method for updating a set of images for a presentation through a single-buffered multipoint dispatcher over a network to multiple clients, comprising:
- defining a set of screens included in a presentation;
dividing each screen of the set of screens into tiles;
storing packets corresponding to each of the tiles of a first screen in a single buffered multipoint dispatcher according to a time sorted hierarchy, wherein a top packet has a most recent time value and a bottom packet has a least recent time value;
comparing each of the tiles of the first screen with corresponding tiles of a second screen to determine non-matching tiles between the first screen and the second screen;
providing packets corresponding to each of the non-matching tiles to the single buffered multipoint dispatcher; and
replacing packets corresponding to each of the non-matching tiles of the first screen with packets corresponding to each of the non-matching tiles of the second screen while maintaining the time sorted hierarchy, wherein the replacing packets while maintaining the time sorted hierarchy allows for supporting clients with different connection speeds at different frame rates.
2 Assignments
0 Petitions
Accused Products
Abstract
A method for updating a subset of a frame of an image is provided. The frame of the image is subdivided into a plurality of tiles. The method initiates with providing a fixed-size queue having a stationary last packet at a bottom of the fixed size queue. Then, a plurality of packets is stored in a time sorted order above the last packet, the plurality of packets corresponding to a frame of an image. Next, an updated packet is received, the updated packet corresponds to a previously received packet of the plurality of packets. Then, the previously received packet is replaced with the updated packet while maintaining the time sorted order. Replacing the previously received packet includes: identifying the previously received packet adjusting any pointers pointing at the previously received packet to point at a packet below the previously received packet; and moving the previously received packet to a top of the fixed size queue. An apparatus and system for distributing packets through a multi point dispatcher between multiple clients is also provided.
-
Citations
32 Claims
-
1. A method for updating a set of images for a presentation through a single-buffered multipoint dispatcher over a network to multiple clients, comprising:
-
defining a set of screens included in a presentation;
dividing each screen of the set of screens into tiles;
storing packets corresponding to each of the tiles of a first screen in a single buffered multipoint dispatcher according to a time sorted hierarchy, wherein a top packet has a most recent time value and a bottom packet has a least recent time value;
comparing each of the tiles of the first screen with corresponding tiles of a second screen to determine non-matching tiles between the first screen and the second screen;
providing packets corresponding to each of the non-matching tiles to the single buffered multipoint dispatcher; and
replacing packets corresponding to each of the non-matching tiles of the first screen with packets corresponding to each of the non-matching tiles of the second screen while maintaining the time sorted hierarchy, wherein the replacing packets while maintaining the time sorted hierarchy allows for supporting clients with different connection speeds at different frame rates. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method for distributing packets through a multi point dispatcher having a fixed-size buffer shared between multiple clients, comprising:
-
providing a fixed-size queue configured to contain a plurality of packets;
defining a client pointer for one of the multiple clients, the client pointer indicating a most recent packet in the queue received by the one of the multiple clients;
receiving an updated packet corresponding to a previously received packet in the queue; and
replacing the previously received packet in the queue with the updated packet, the replacing including;
determining if the client pointer is pointing to the packet being replaced;
if the client pointer is pointing to the packet being replaced, the method includes adjusting the client pointer pointing to the packet being replaced to point to a packet below the packet being replaced. - View Dependent Claims (8, 9, 10, 11, 12, 13)
-
-
14. A method for updating a subset of a frame of an image, the frame being subdivided into a plurality of tiles, comprising:
-
providing a fixed-size queue having a stationary last packet at a bottom of the fixed size queue;
storing a plurality of packets in a time sorted order above the last packet, the plurality of packets corresponding to a frame of an image;
receiving an updated packet corresponding to a previously received packet of the plurality of packets; and
replacing the previously received packet with the updated packet while maintaining the time sorted order, the replacing including, identifying the previously received packet;
adjusting any pointers pointing at the previously received packet to point at a packet below the previously received packet; and
moving the previously received packet to a top of the fixed size queue. - View Dependent Claims (15, 16, 17, 18, 19)
-
-
20. A computer readable media having program instructions for updating a subset of a frame of an image, the frame being subdivided into a plurality of tiles, comprising:
-
program instructions for storing a plurality of packets in a time sorted order in a fixed-size queue having a stationary last packet at a bottom of the fixed size queue, the plurality of packets corresponding to a frame of an image;
program instructions for receiving an updated packet corresponding to a previously received packet of the plurality of packets; and
program instructions for replacing the previously received packet with the updated packet while maintaining the time sorted order, the program instructions for replacing including, program instructions for identifying the previously received packet;
program instructions for adjusting any pointers pointing at the previously received packet to point at a packet below the previously received packet; and
program instructions for moving the previously received packet to a top of the fixed size queue. - View Dependent Claims (21, 22, 23, 24)
-
-
25. An integrated circuit chip configured to dispatch updates to objects in a pre-defined set of objects, comprising:
-
logic for storing a plurality of packets in a time sorted order in a fixed-size queue having a stationary last packet at a bottom of the fixed size queue, the plurality of packets corresponding to a frame of an image;
logic for receiving an updated packet corresponding to a previously received packet of the plurality of packets; and
logic for replacing the previously received packet with the updated packet while maintaining the time sorted order, the logic for replacing including, logic for identifying the previously received packet;
logic for adjusting any pointers pointing at the previously received packet to point at a packet below the previously received packet; and
logic for moving the previously received packet to a top of the fixed size queue. - View Dependent Claims (26, 27)
-
-
28. A system for distributing objects to multiple clients, comprising:
-
a plurality of clients, each of the plurality of clients configured to receive image data for display on a computer monitor, the image data being updated periodically;
a server in communication with the client, the server including, a dispatcher enabled to store a first set of packets defining the image in a fixed-size queue shared by the plurality of clients, the first set of packets being stored according to an introduction into the fixed size queue where a most recently introduced packet is stored at a top of the fixed size queue and a least recently introduced packet is stored at a bottom of the fixed size queue, the dispatcher configured to receive an updated packet, the updated packet replacing a corresponding packet of the first set of packets;
a client pointer associated with each of the plurality of clients, the client pointer pointing to a most recently received packet for the corresponding client, wherein the client pointer is configured to point to a next lower packet in the fixed size queue when the updated packet the most recently received packet for the corresponding client. - View Dependent Claims (29, 30, 31, 32)
-
Specification