← Back to Patent Explorer
US5438655A Expired / Lapsed US ⏱️ 0.0 years remaining

Methods and apparatus for updating and antialiasing waveforms

Assignee: Koninklijke Philips NV
•
Filing: 1993-07-29
•
Granted: 1995-08-01
•
Expires: 2013-07-29
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method and apparatus for scheduling waveform updates, and for implementing antialiasing techniques compatible with a standard graphics drawing package. Interrupts are requested at regular intervals to update a waveform based on data samples received from a data source. When there is a delay in servicing a requested interrupt, the waveform is updated with a relatively large number of data samples so that the monitoring system does not fall behind the data source. However, a limit is placed on the number of data samples used to update the waveform at the servicing of a single interrupt to ensure that an erase bar that updates the waveform maintains a substantially constant velocity. Additionally, when there is a delay in servicing an interrupt, the next interrupt is requested to occur more quickly. The waveform is broken up into a plurality of wave segments extending between adjacent pixel columns and each wave segment is updated using three calls to a line drawing primitive of the graphics package. Two one-pixel wide lines are drawn in an intermediate antialiasing color, and a one-pixel wide line is drawn in a foreground color.

Inventors

  • 👤 Frank Richichi
  • 👤 Jeffrey T. LeBlanc

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-03 06:46
CPC Classifications
G; G06; G06T; G06T11/00; G06T11/10; A; A61; A61B; A61B5/00; A61B5/24; A61B5/316; A61B5/318; A61B5/339

Claims Analysis

Total Claims: 49
Claim 1
Independent Claim 192 words
A method for operating a monitoring system that displays a waveform representing a time-varying characteristic of a data source, the monitoring system receiving data samples from the data source at a data sample frequency, the monitoring system including a processor and a memory, the processor executing an operating system, the monitoring system further including a display device having a plurality of pixels, the display device displaying the waveform as a fixed wave with an erase bar moving across the display screen to update the waveform, the method comprising the steps of: requesting that the operating system service an interrupt after an interrupt time period has lapsed; storing the received data samples in the memory; determining a maximum number of stored data samples that will be used to update the waveform at the servicing of the interrupt; when the requested interrupt is serviced, determining whether the number of stored data samples exceeds the maximum number; and updating the waveform based on the stored data samples, including the step of; updating the waveform based on only the maximum number of stored data samples when the number of stored data samples exceeds the maximum number.
Claim 2
Independent Claim 192 words
A method for operating a monitoring system that displays a waveform representing a time-varying characteristic of a data source, the monitoring system receiving data samples from the data source at a data sample frequency, the monitoring system including a processor and a memory, the processor executing an operating system, the monitoring system further including a display device having a plurality of pixels, the display device displaying the waveform as a fixed wave with an erase bar moving across the display screen to update the waveform, the method comprising the steps of: requesting that the operating system service an interrupt after an interrupt time period has lapsed; storing the received data samples in the memory; determining a maximum number of stored data samples that will be used to update the waveform at the servicing of the interrupt; when the requested interrupt is serviced, determining whether the number of stored data samples exceeds the maximum number; and updating the waveform based on the stored data samples, including the step of; updating the waveform based on only the maximum number of stored data samples when the number of stored data samples exceeds the maximum number.
Claim 3
Dependent Claim 83 words
A method as recited in claim 1 wherein the number of data samples received during the interrupt time period when the interrupt is serviced precisely at the requested time constitutes an ideal number of data samples upon which to base the waveform update at the servicing of each interrupt, and wherein the step of updating the waveform based on the stored data samples includes the step of updating the waveform based on a whole number multiple of the ideal number of data samples.
Claim 4
Dependent Claim 55 words
A method as recited in claim 1 wherein the step of determining the maximum number of stored data samples includes the step of establishing the maximum number to be equal to twice the number of data samples received from the data source during the interrupt time period when the interrupt is serviced precisely when requested.
Claim 5
Dependent Claim 17 words
A method as recited in claim 1 wherein the operating system is a non-real time operating system.
Claim 6
Dependent Claim 44 words
A method as recited in claim 1 wherein the step of determining the maximum number of stored data samples includes the step of establishing the maximum number so that the erase bar maintains an appearance of substantially constant velocity as the waveform is updated.
Claim 7
Dependent Claim 27 words
A method as recited in claim 1 including the step of selecting the interrupt time period to be a whole number multiple of the data sample frequency.
Claim 8
Dependent Claim 87 words
A method as recited in claim 1 including the steps of: determining a difference between the time at which the interrupt was requested to be serviced and the time at which it was actually serviced, the difference indicating an interrupt lag time; reducing the requested interrupt time period by an amount based upon the interrupt lag time; and following the step of updating the waveform, returning to the step of requesting that the operating system service an interrupt after the expiration of the reduced interrupt time period.
Claim 9
Dependent Claim 107 words
A method as recited in claim 7 including the step of determining the time at which a next data sample to be updated was received, and wherein the step of reducing the requested interrupt time period based upon the interrupt lag time includes the steps of: determining an actual interrupt time period indicating an amount of time elapsed between the time the interrupt is serviced and the time at which the next data sample to be updated was received; dividing the actual interrupt time period by the requested interrupt time period to generate a quotient and a remainder; and reducing the interrupt time period by the remainder.
Claim 10
Dependent Claim 35 words
A method as recited in claim 7 including the step of inhibiting the performance of the step of reducing the requested interrupt time period when the number of stored data samples exceeds the maximum number.
Claim 11
Dependent Claim 137 words
A method as recited in claim 7 wherein the step of updating the waveform based on the maximum number of data samples includes the step of identifying the next stored data sample to be updated, and wherein the step of determining whether the number of stored data samples exceeds the maximum number includes the steps of: determining a predetermined time period during which the maximum number of data samples will be received from the data source; determining the time at which the next data sample to be updated was received; determining the time at which the last data sample was received before the servicing of the interrupt; and determining whether the time period elapsed between the receipt of the next data sample to be updated and the most recently received data sample exceeds the predetermined time period.
Claim 12
Dependent Claim 308 words
A method as recited in claim 7 wherein the monitoring system includes a graphics drawing package to draw the waveform on the display device, the display device pixels being arranged in an array, the array including a plurality of rows and columns, the graphics drawing package having a line drawing primitive which draws lines between two selected pixels, and wherein the step of updating the waveform includes the steps of: selecting foreground, background and intermediate pixel colors; determining a plurality of interconnected wave line segments that form the waveform, each wave line segment extending between first and second end pixels, the end pixels being located in adjacent pixel columns, the first end pixel having column and row coordinates indicating a position of the first end pixel on the display device, the second end pixel having column and row coordinates indicating a position of the second end pixel on the display device; and drawing each wave line segment of the waveform, the drawing of each wave line segment including the steps of; calling the line drawing primitive to draw, in the intermediate color, a first line between the first end pixel of the wave line segment and a pixel having a column coordinate equal to the column coordinate of the first end pixel, and a row coordinate equal to the row coordinate of the second end pixel; calling the line drawing primitive to draw, in the intermediate color, a second line between the second end pixel of the wave line segment and a pixel having a column coordinate equal to the column coordinate of the second end pixel, and a row coordinate equal to the row coordinate of the first end pixel; and calling the line drawing primitive to draw, in the foreground color, a third line between the first and second end pixels of the wave line segment.
Claim 13
Dependent Claim 43 words
A method as recited in claim 1 wherein the operating system is UNIX and wherein the step of requesting that the operating system service an interrupt includes the step of setting the UNIX select function timer equal to the requested interrupt time period.
Claim 14
Dependent Claim 137 words
A method as recited in claim 1 wherein the step of updating the waveform based on the maximum number of data samples includes the step of identifying the next stored data sample to be updated, and wherein the step of determining whether the number of stored data samples exceeds the maximum amount includes the steps of: establishing a predetermined time period during which the maximum number of data samples will be received from the data source; determining the time at which the next data sample to be updated was received; determining the time at which the last data sample was received before the servicing of the interrupt; and determining whether the time period elapsed between the receipt of the next data sample to be updated and the most recently received data sample exceeds the predetermined time period.
Claim 15
Dependent Claim 308 words
A method as recited in claim 1 wherein the monitoring system includes a graphics drawing package to draw the waveform on the display device, the display device pixels being arranged in an array, the array including a plurality of rows and columns, the graphics drawing package having a line drawing primitive which draws lines between two selected pixels, and wherein the step of updating the waveform includes the steps of: selecting foreground, background and intermediate pixel colors; determining a plurality of interconnected wave line segments that form the waveform, each wave line segment extending between first and second end pixels, the end pixels being located in adjacent pixel columns, the first end pixel having column and row coordinates indicating a position of the first end pixel on the display device, the second end pixel having column and row coordinates indicating a position of the second end pixel on the display device; and drawing each wave line segment of the waveform, the drawing of each wave line segment including the steps of; calling the line drawing primitive to draw, in the intermediate color, a first line between the first end pixel of the wave line segment and a pixel having a column coordinate equal to the column coordinate of the first end pixel, and a row coordinate equal to the row coordinate of the second end pixel; calling the line drawing primitive to draw, in the intermediate color, a second line between the second end pixel of the wave line segment and a pixel having a column coordinate equal to the column coordinate of the second end pixel, and a row coordinate equal to the row coordinate of the first end pixel; and calling the line drawing primitive to draw, in the foreground color, a third line between the first and second end pixels of the wave line segment.
Claim 16
Independent Claim 323 words
A method for scheduling waveform updates in a monitoring system that displays a waveform representing a time-varying characteristic of a data source, the monitoring system receiving data samples from the data source at a data sample frequency, the monitoring system including a processor and a memory, the processor executing an operating system, the monitoring system further including a display device that displays the waveform as a fixed wave with an erase bar moving across the display device to udpate the waveform, the method comprising the steps of: determining an ideal interrupt time period and a corresponding ideal number of data samples, the ideal interrupt time period indicating a time period at which the waveform would ideally be updated to synchronize waveform updates with the data source, the ideal number of data samples indicating the number of data samples that will be received from the data source during the ideal interrupt time period; requesting that the operating system service an interrupt after the expiration of the ideal interrupt time period; storing the received data samples in the memory; when the interrupt is serviced, determining the time at which a next data sample to be updated was received; determining an update time period indicating the amount of time elapsed between the receipt of the next data sample to be updated and the servicing of the interrupt; updating the waveform based on the stored data samples including the step of updating the waveform based on more than the ideal number of data samples when the update time period is two or more times as long as the ideal interrupt time period; determining a difference between the time at which the interrupt was requested to be serviced and the time at which the interrupt was actually serviced, the difference indicating an interrupt lag period; reducing the requested interrupt time period by the lag time period; and returning to the step of requesting that an interrupt be serviced.
Claim 17
Independent Claim 323 words
A method for scheduling waveform updates in a monitoring system that displays a waveform representing a time-varying characteristic of a data source, the monitoring system receiving data samples from the data source at a data sample frequency, the monitoring system including a processor and a memory, the processor executing an operating system, the monitoring system further including a display device that displays the waveform as a fixed wave with an erase bar moving across the display device to udpate the waveform, the method comprising the steps of: determining an ideal interrupt time period and a corresponding ideal number of data samples, the ideal interrupt time period indicating a time period at which the waveform would ideally be updated to synchronize waveform updates with the data source, the ideal number of data samples indicating the number of data samples that will be received from the data source during the ideal interrupt time period; requesting that the operating system service an interrupt after the expiration of the ideal interrupt time period; storing the received data samples in the memory; when the interrupt is serviced, determining the time at which a next data sample to be updated was received; determining an update time period indicating the amount of time elapsed between the receipt of the next data sample to be updated and the servicing of the interrupt; updating the waveform based on the stored data samples including the step of updating the waveform based on more than the ideal number of data samples when the update time period is two or more times as long as the ideal interrupt time period; determining a difference between the time at which the interrupt was requested to be serviced and the time at which the interrupt was actually serviced, the difference indicating an interrupt lag period; reducing the requested interrupt time period by the lag time period; and returning to the step of requesting that an interrupt be serviced.
Claim 18
Dependent Claim 38 words
A method as recited in claim 15 including the steps of: inhibiting the performance of the step of reducing the requested interrupt time period when the waveform is updated with more than the ideal number of data samples.
Claim 19
Independent Claim 233 words
A method for operating a monitoring system that displays a waveform representing a time-varying characteristic of a data source, the monitoring system receiving data samples from the data source at a data sample frequency, the monitoring system including a processor, a memory and a timer, the processor executing an operating system, the monitoring system further including a display device having a plurality of pixels, the display device displaying the waveform as a fixed wave with an erase bar moving across the display device to update the waveform, the method comprising the steps of: setting the timer equal to an ideal interrupt time period indicating a time period at which waveform updates would ideally be performed to synchronize the waveform updates with the receipt of the data samples; requesting that the operating system service an interrupt after the expiration of the timer; storing the received data samples in the memory; when the requested interrupt is serviced, updating the waveform based on at least some of the stored data samples; determining a difference between the time at which the interrupt was requested to be serviced and the time at which the interrupt was actually serviced, the difference indicating an interrupt lag time; setting the timer equal to the ideal interrupt time period minus a value based on the interrupt lag time; and returning to the step of requesting that the operating system service an interrupt.
Claim 20
Independent Claim 233 words
A method for operating a monitoring system that displays a waveform representing a time-varying characteristic of a data source, the monitoring system receiving data samples from the data source at a data sample frequency, the monitoring system including a processor, a memory and a timer, the processor executing an operating system, the monitoring system further including a display device having a plurality of pixels, the display device displaying the waveform as a fixed wave with an erase bar moving across the display device to update the waveform, the method comprising the steps of: setting the timer equal to an ideal interrupt time period indicating a time period at which waveform updates would ideally be performed to synchronize the waveform updates with the receipt of the data samples; requesting that the operating system service an interrupt after the expiration of the timer; storing the received data samples in the memory; when the requested interrupt is serviced, updating the waveform based on at least some of the stored data samples; determining a difference between the time at which the interrupt was requested to be serviced and the time at which the interrupt was actually serviced, the difference indicating an interrupt lag time; setting the timer equal to the ideal interrupt time period minus a value based on the interrupt lag time; and returning to the step of requesting that the operating system service an interrupt.
Claim 21
Dependent Claim 44 words
A method as recited in claim 17 including the steps of: determining whether the interrupt lag period exceeds the ideal interrupt time period; and when the interrupt lag period exceeds the ideal interrupt time period, inhibiting the step of reducing the interrupt time period.
Claim 22
Dependent Claim 69 words
A method as recited in claim 17 wherein the step of reducing the requested interrupt time period includes the steps of: determining an elapsed interrupt time period indicating the amount of time elapsed between the requesting and servicing of the interrupt; dividing the elapsed interrupt time period by the ideal interrupt time period to generate a quotient and a remainder; and reducing the interrupt time period by the remainder.
Claim 23
Dependent Claim 36 words
A method as recited in claim 19 including the steps of: determining whether the quotient is greater than one; and when the quotient is greater than one, inhibiting the step of reducing the interrupt time period.
Claim 24
Dependent Claim 308 words
A method as recited in claim 17 wherein the monitoring system includes a graphics drawing package to draw the waveform on the display device, the display device pixels being arranged in an array, the array including a plurality of rows and columns, the graphics drawing package having a line drawing primitive which draws lines between two selected pixels, and wherein the step of updating the waveform includes the steps of: selecting foreground, background and intermediate pixel colors; determining a plurality of interconnected wave line segments that form the waveform, each wave line segment extending between first and second end pixels, the end pixels being located in adjacent pixel columns, the first end pixel having column and row coordinates indicating a position of the first end pixel on the display device, the second end pixel having column and row coordinates indicating a position of the second end pixel on the display device; and drawing each wave line segment of the waveform, the drawing of each wave line segment including the steps of; calling the line drawing primitive to draw, in the intermediate color, a first line between the first end pixel of the wave line segment and a pixel having a column coordinate equal to the column coordinate of the first end pixel, and a row coordinate equal to the row coordinate of the second end pixel; calling the line drawing primitive to draw, in the intermediate color, a second line between the second end pixel of the wave line segment and a pixel having a column coordinate equal to the column coordinate of the second end pixel, and a row coordinate equal to the row coordinate of the first end pixel; and calling the line drawing primitive to draw, in the foreground color, a third line between the first and second end pixels of the wave line segment.
Claim 25
Dependent Claim 174 words
An antialiasing method for drawing a waveform on a display device, the display device having an array of pixels, the array including a plurality of rows and columns, the method including the steps of: selecting background, foreground and intermediate pixel colors; determining a plurality of interconnected wave segments that form the waveform, each wave segment extending between first and second end pixels, the end pixels being located in adjacent pixel columns; drawing one-pixel wide waveform-lines between the first and second end pixels of each wave segment, the waveform lines being drawn in the foreground color, each waveform line having a midpoint wherein the waveform line switches columns from the column including the first end pixel of the waveform line to the column including the second end pixel of the waveform line; and drawing an antialiasing line segment in the intermediate color for at least one waveform line, the antialiasing line segment having the same midpoint as the at least one waveform line and creating a mirror image of the at least one waveform line.
Claim 26
Dependent Claim 174 words
An antialiasing method for drawing a waveform on a display device, the display device having an array of pixels, the array including a plurality of rows and columns, the method including the steps of: selecting background, foreground and intermediate pixel colors; determining a plurality of interconnected wave segments that form the waveform, each wave segment extending between first and second end pixels, the end pixels being located in adjacent pixel columns; drawing one-pixel wide waveform-lines between the first and second end pixels of each wave segment, the waveform lines being drawn in the foreground color, each waveform line having a midpoint wherein the waveform line switches columns from the column including the first end pixel of the waveform line to the column including the second end pixel of the waveform line; and drawing an antialiasing line segment in the intermediate color for at least one waveform line, the antialiasing line segment having the same midpoint as the at least one waveform line and creating a mirror image of the at least one waveform line.
Claim 27
Dependent Claim 294 words
An antialiasing method for controlling a graphics drawing package to draw a waveform on a display device, the display device having an array of pixels, the array including a plurality of rows and columns, the graphics drawing package having a line drawing primitive which draws lines between two selected pixels, the method including the steps of: selecting foreground, background and intermediate pixel colors; determining a plurality of interconnected wave line segments that form the waveform, each wave line segment extending between first and second end pixels, the end pixels being located in adjacent pixel columns, the first end pixel having column and row coordinates indicating a position of the first end pixel on the display device, the second end pixel having column and row coordinates indicating a position of the second end pixel on the display device; and drawing each wave line segment of the waveform, the drawing of each wave line segment including the steps of; calling the line drawing primitive to draw, in the intermediate color, a first line between the first end pixel of the wave line segment and a pixel having a column coordinate equal to the column coordinate of the first end pixel, and a row coordinate equal to the row coordinate of the second end pixel; calling the line drawing primitive to draw, in the intermediate color, a second line between the second end pixel of the wave line segment and a pixel having a column coordinate equal to the column coordinate of the second end pixel, and a row coordinate equal to the row coordinate of the first end pixel; and calling the line drawing primitive to draw, in the foreground color, a third line between the first and second end pixels of the wave line segment.
Claim 28
Dependent Claim 294 words
An antialiasing method for controlling a graphics drawing package to draw a waveform on a display device, the display device having an array of pixels, the array including a plurality of rows and columns, the graphics drawing package having a line drawing primitive which draws lines between two selected pixels, the method including the steps of: selecting foreground, background and intermediate pixel colors; determining a plurality of interconnected wave line segments that form the waveform, each wave line segment extending between first and second end pixels, the end pixels being located in adjacent pixel columns, the first end pixel having column and row coordinates indicating a position of the first end pixel on the display device, the second end pixel having column and row coordinates indicating a position of the second end pixel on the display device; and drawing each wave line segment of the waveform, the drawing of each wave line segment including the steps of; calling the line drawing primitive to draw, in the intermediate color, a first line between the first end pixel of the wave line segment and a pixel having a column coordinate equal to the column coordinate of the first end pixel, and a row coordinate equal to the row coordinate of the second end pixel; calling the line drawing primitive to draw, in the intermediate color, a second line between the second end pixel of the wave line segment and a pixel having a column coordinate equal to the column coordinate of the second end pixel, and a row coordinate equal to the row coordinate of the first end pixel; and calling the line drawing primitive to draw, in the foreground color, a third line between the first and second end pixels of the wave line segment.
Claim 29
Dependent Claim 40 words
An antialiasing method as recited in claim 23 wherein the steps of calling the line drawing primitive to draw the first and second lines are performed before the step of calling the line drawing primitive to draw the third line.
Claim 30
Dependent Claim 41 words
An antialiasing method as recited in claim 23 wherein the steps of calling the line drawing primitive to draw the first, second and third lines each include the step of instructing the line drawing primitive to draw a one-pixel wide line.
Claim 31
Dependent Claim 52 words
An antialiasing method as recited in claim 23 wherein the step of selecting the foreground, background and intermediate colors includes the step of selecting the intermediate color so that its red, green and blue components are each linearly halfway between the red, green and blue components of the foreground and background colors.
Claim 32
Dependent Claim 51 words
An antialiasing method as recited in claim 23 wherein the step of drawing the waveform includes the steps of: determining whether any wave line segments are horizontal; and calling the line drawing primitive to draw a one-pixel wide horizontal line in the intermediate color immediately adjacent any horizontal wave line segments.
Claim 33
Dependent Claim 161 words
A monitoring system for displaying a waveform representing a time-varying characteristic of a data source, the monitoring system comprising: a processor executing an operating system; means for displaying the waveform as a fixed wave with a moving erase bar to update the waveform; means for requesting that the operating system service an interrupt after an interrupt time period has lapsed; means for storing the received data samples; means for establishing a maximum number of stored data samples that will be used to update the waveform at the servicing of the interrupt; means for determining when the requested interrupt has been serviced; waveform update means for updating the waveform when the requested interrupt has been serviced, the waveform update means including; means for determining whether the number of stored data samples exceeds the maximum number; and means for updating the waveform based on only the maximum number of stored data samples when the number of stored data samples exceeds the maximum number.
Claim 34
Dependent Claim 161 words
A monitoring system for displaying a waveform representing a time-varying characteristic of a data source, the monitoring system comprising: a processor executing an operating system; means for displaying the waveform as a fixed wave with a moving erase bar to update the waveform; means for requesting that the operating system service an interrupt after an interrupt time period has lapsed; means for storing the received data samples; means for establishing a maximum number of stored data samples that will be used to update the waveform at the servicing of the interrupt; means for determining when the requested interrupt has been serviced; waveform update means for updating the waveform when the requested interrupt has been serviced, the waveform update means including; means for determining whether the number of stored data samples exceeds the maximum number; and means for updating the waveform based on only the maximum number of stored data samples when the number of stored data samples exceeds the maximum number.
Claim 35
Dependent Claim 44 words
A monitoring system as recited in claim 28 wherein said means for determining the maximum number of stored data samples includes means for establishing the maximum number so that the erase bar maintains an appearance of substantially constant velocity as the waveform is updated.
Claim 36
Dependent Claim 61 words
A monitoring system as recited in claim 28 further comprising: means for determining a difference between the time at which the interrupt was requested to be serviced and the time at which it was actually serviced, the difference indicating an interrupt lag time; and means for reducing the requested interrupt time period by an amount based upon the interrupt lag time.
Claim 37
Dependent Claim 292 words
A monitoring system for displaying a waveform representing a time-varying characteristic of a data source, the monitoring system comprising: a processor executing an operating system; means for displaying the waveform as a fixed wave with a moving erase bar to udpate the waveform; means for determining an ideal interrupt time period and a corresponding ideal number of data samples, the ideal interrupt time period indicating a time period at which the waveform would ideally be updated to synchronize waveform updates with the data source, the ideal number of data samples indicating the number of data samples that will be received from the data source during the ideal interrupt time period; means for requesting that the operating system service an interrupt after the expiration of the ideal interrupt time period; means for storing the received data samples; means for determining when the interrupt has been serviced; means for determining a difference between the time at which the interrupt was requested to be serviced and the time at which the interrupt was actually serviced, the difference indicating an interrupt lag period; and means for reducing the requested interrupt time period by the lag time period; and waveform update means for updating the waveform when the interrupt has been serviced, the waveform update means including; means for determining the time at which a next data sample to be updated was received; means for determining an update time period indicating the amount of time elapsed between the receipt of the next data sample to be updated and the servicing of the interrupt; and means for updating the waveform based on more than the ideal number of data samples when the update time period is two or more times as long as the ideal interrupt time period.
Claim 38
Dependent Claim 292 words
A monitoring system for displaying a waveform representing a time-varying characteristic of a data source, the monitoring system comprising: a processor executing an operating system; means for displaying the waveform as a fixed wave with a moving erase bar to udpate the waveform; means for determining an ideal interrupt time period and a corresponding ideal number of data samples, the ideal interrupt time period indicating a time period at which the waveform would ideally be updated to synchronize waveform updates with the data source, the ideal number of data samples indicating the number of data samples that will be received from the data source during the ideal interrupt time period; means for requesting that the operating system service an interrupt after the expiration of the ideal interrupt time period; means for storing the received data samples; means for determining when the interrupt has been serviced; means for determining a difference between the time at which the interrupt was requested to be serviced and the time at which the interrupt was actually serviced, the difference indicating an interrupt lag period; and means for reducing the requested interrupt time period by the lag time period; and waveform update means for updating the waveform when the interrupt has been serviced, the waveform update means including; means for determining the time at which a next data sample to be updated was received; means for determining an update time period indicating the amount of time elapsed between the receipt of the next data sample to be updated and the servicing of the interrupt; and means for updating the waveform based on more than the ideal number of data samples when the update time period is two or more times as long as the ideal interrupt time period.
Claim 39
Dependent Claim 208 words
A monitoring system for displaying a waveform representing a time-varying characteristic of a data source, the monitoring system receiving data samples from the data source at a data source frequency, the monitoring system comprising: a processor executing an operating system; means for displaying the waveform as a fixed wave with a moving erase bar to update the waveform; a timer for storing an interrupt time period; means for setting the timer equal to an ideal interrupt time period indicating a time period at which waveform updates would ideally be performed to synchronize the waveform updates with the receipt of the data samples; means for requesting that the operating system service an interrupt after the expiration of the timer; means for storing the received data samples; means for determining when the requested interrupt has been serviced and when the requested interrupt has been serviced, for updating the waveform based on at least some of the stored data samples; means for determining a difference between the time at which the interrupt was requested to be serviced and the time at which the interrupt was actually serviced, the difference indicating an interrupt lag time; and means for reducing the interrupt time period by a value based on the interrupt lag time.
Claim 40
Dependent Claim 208 words
A monitoring system for displaying a waveform representing a time-varying characteristic of a data source, the monitoring system receiving data samples from the data source at a data source frequency, the monitoring system comprising: a processor executing an operating system; means for displaying the waveform as a fixed wave with a moving erase bar to update the waveform; a timer for storing an interrupt time period; means for setting the timer equal to an ideal interrupt time period indicating a time period at which waveform updates would ideally be performed to synchronize the waveform updates with the receipt of the data samples; means for requesting that the operating system service an interrupt after the expiration of the timer; means for storing the received data samples; means for determining when the requested interrupt has been serviced and when the requested interrupt has been serviced, for updating the waveform based on at least some of the stored data samples; means for determining a difference between the time at which the interrupt was requested to be serviced and the time at which the interrupt was actually serviced, the difference indicating an interrupt lag time; and means for reducing the interrupt time period by a value based on the interrupt lag time.
Claim 41
Independent Claim 179 words
An apparatus for drawing a waveform on a display device, the display device having an array of pixels, the array including a plurality of rows and columns, the apparatus comprising: means for selecting background, foreground and intermediate pixel colors; means for determining a plurality of interconnected wave segments that form the waveform, each wave segment extending between first and second end pixels, the end pixels being located in adjacent pixel columns; means for drawing one-pixel wide waveform lines between the first and second end pixels of each wave segment, the waveform lines being drawn in the foreground color, each waveform line having a midpoint wherein the waveform line switches columns from the column including the first end pixel of the waveform line to the column including the second end pixel of the waveform line; and means for drawing an antialiasing line segment in the intermediate color for at least one waveform line, the antialiasing line segment having the same midpoint as the at least one waveform line and creating a mirror image of the at least one waveform line.
Claim 42
Independent Claim 179 words
An apparatus for drawing a waveform on a display device, the display device having an array of pixels, the array including a plurality of rows and columns, the apparatus comprising: means for selecting background, foreground and intermediate pixel colors; means for determining a plurality of interconnected wave segments that form the waveform, each wave segment extending between first and second end pixels, the end pixels being located in adjacent pixel columns; means for drawing one-pixel wide waveform lines between the first and second end pixels of each wave segment, the waveform lines being drawn in the foreground color, each waveform line having a midpoint wherein the waveform line switches columns from the column including the first end pixel of the waveform line to the column including the second end pixel of the waveform line; and means for drawing an antialiasing line segment in the intermediate color for at least one waveform line, the antialiasing line segment having the same midpoint as the at least one waveform line and creating a mirror image of the at least one waveform line.
Claim 43
Independent Claim 299 words
An apparatus for controlling a graphics drawing package to draw a waveform on a display device, the display device having an array of pixels, the array including a plurality of rows and columns, the graphics drawing package having a line drawing primitive which draws lines between two selected pixels, the method including the steps of: means for selecting foreground, background and intermediate pixel colors; means for determining a plurality of interconnected wave line segments that form the waveform, each wave line segment extending between first and second end pixels, the end pixels being located in adjacent pixel columns, the first end pixel having column and row coordinates indicating a position of the first end pixel on the display device, the second end pixel having column and row coordinates indicating a position of the second end pixel on the display device; and drawing means for drawing each wave line segment of the waveform, the drawing means including; means for calling the line drawing primitive to draw, in the intermediate color, a first line between the first end pixel of the wave line segment and a pixel having a column coordinate equal to the column coordinate of the first end pixel, and a row coordinate equal to the row coordinate of the second end pixel; means for calling the line drawing primitive to draw, in the intermediate color, a second line between the second end pixel of the wave line segment and a pixel having a column coordinate equal to the column coordinate of the second end pixel, and a row coordinate equal to the row coordinate of the first end pixel; and means for calling the line drawing primitive to draw, in the foreground color, a third line between the first and second end pixels of the wave line segment.
Claim 44
Independent Claim 299 words
An apparatus for controlling a graphics drawing package to draw a waveform on a display device, the display device having an array of pixels, the array including a plurality of rows and columns, the graphics drawing package having a line drawing primitive which draws lines between two selected pixels, the method including the steps of: means for selecting foreground, background and intermediate pixel colors; means for determining a plurality of interconnected wave line segments that form the waveform, each wave line segment extending between first and second end pixels, the end pixels being located in adjacent pixel columns, the first end pixel having column and row coordinates indicating a position of the first end pixel on the display device, the second end pixel having column and row coordinates indicating a position of the second end pixel on the display device; and drawing means for drawing each wave line segment of the waveform, the drawing means including; means for calling the line drawing primitive to draw, in the intermediate color, a first line between the first end pixel of the wave line segment and a pixel having a column coordinate equal to the column coordinate of the first end pixel, and a row coordinate equal to the row coordinate of the second end pixel; means for calling the line drawing primitive to draw, in the intermediate color, a second line between the second end pixel of the wave line segment and a pixel having a column coordinate equal to the column coordinate of the second end pixel, and a row coordinate equal to the row coordinate of the first end pixel; and means for calling the line drawing primitive to draw, in the foreground color, a third line between the first and second end pixels of the wave line segment.
Claim 45
Dependent Claim 210 words
An antialiasing method for controlling a graphics drawing package to draw a waveform on a display device, the display device having an array of pixels, the array including a plurality of rows and columns, the graphics drawing package having a line drawing primitive which draws lines between two selected pixels, the method including the steps of: selecting foreground, background and intermediate pixel colors; determining a plurality of interconnected wave line segments that form the waveform, each wave line segment extending between first and second end pixels, the end pixels being located in adjacent pixel columns, the first end pixel having column and row coordinates indicating a position of the first end pixel on the display device, the second end pixel having column and row coordinates indicating a position of the second end pixel on the display device; and drawing each wave line segment of the waveform, the drawing of each wave line segment including the steps of; calling the line drawing primitive to draw, in the intermediate color, a first line between the first and second end pixels of the wave line segment; and calling the line drawing primitive to draw, in the foreground color, a second line between the first and second end pixels of the wave line segment.
Claim 46
Dependent Claim 210 words
An antialiasing method for controlling a graphics drawing package to draw a waveform on a display device, the display device having an array of pixels, the array including a plurality of rows and columns, the graphics drawing package having a line drawing primitive which draws lines between two selected pixels, the method including the steps of: selecting foreground, background and intermediate pixel colors; determining a plurality of interconnected wave line segments that form the waveform, each wave line segment extending between first and second end pixels, the end pixels being located in adjacent pixel columns, the first end pixel having column and row coordinates indicating a position of the first end pixel on the display device, the second end pixel having column and row coordinates indicating a position of the second end pixel on the display device; and drawing each wave line segment of the waveform, the drawing of each wave line segment including the steps of; calling the line drawing primitive to draw, in the intermediate color, a first line between the first and second end pixels of the wave line segment; and calling the line drawing primitive to draw, in the foreground color, a second line between the first and second end pixels of the wave line segment.
Claim 47
Dependent Claim 43 words
An antialiasing method as recited in claim 35 wherein the step of calling the line drawing primitive to draw the first line includes the step of instructing the line drawing primitive to draw a line having a width of more than one pixel.
Claim 48
Dependent Claim 38 words
An antialiasing method as recited in claim 36 wherein the step of calling the line drawing primitive to draw the first line is performed before the step of calling the line drawing primitive to draw the second line.
Claim 49
Dependent Claim 48 words
An antialiasing method as recited in claim 37 wherein the step of calling the line drawing primitive to draw the second line includes the step of instructing the line drawing primitive to draw a line having a width that is less than the width of the first line.

References Cited (Backward Citations)

US5371842A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1998-07-31 1999-01-30 1999-08-01 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2002-07-31 2003-01-30 2003-08-01 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2006-07-31 2007-01-30 2007-08-01 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag