IP Library Granted Patent US 9,411,931
Granted Patent B2
US 9,411,931 · App. 13/354,912 · Granted Aug 9, 2016

Method, apparatus and computer program product for receiving digital data files

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,411,931
App. No.
13/354,912
Granted
Aug 9, 2016
Kind
B2
Abstract

A method, apparatus and computer program product are provided to efficiently receive digital imaging data files, regardless of their size. For a respective data packet of a digital imaging data file, the method may determine whether that portion of the digital imaging data file that has been received satisfies the first threshold. If the first threshold is not satisfied, the method may receive the respective data packet using memory, such as by appending the data packet to a linked list. However, if the first threshold is satisfied, the method may receive the respective data packet and subsequent data packet(s) of the digital imaging data file using file storage. The receipt of the respective data packet using file storage is slower than the receipt of the respective data packet using memory.

Claims (30)

1. A method comprising:

for a respective data packet of a digital imaging data file comprised of a plurality of data packets, determining, with a processor, whether that portion of the digital imaging data file that has been received equals or exceeds a first threshold defining a first file size;

in an instance in which the first threshold is not satisfied in that the portion of the digital imaging data file that has been received has a size that is less than the first file size, receiving the respective data packet using a memory; and

in an instance in which the first threshold is satisfied in that the portion of the digital imaging data file that has been received has a size that equals or exceeds the first file size, receiving the respective data packet and subsequent data packet(s) of the digital imaging data file using file storage, wherein receiving the respective data packet using file storage is slower than receiving the respective data packet using memory.

2. A method according to claim 1 further comprising, in an instance in which the first threshold is satisfied, initially receiving the respective data packet using a memory buffer, and wherein receiving the respective data packet and subsequent data packet(s) using file storage comprises transferring data from the memory buffer to the file storage in an instance in which the memory buffer contains data that satisfies a second threshold defining a second file size, smaller than the first file size.

3. A method according to claim 2 further comprising receiving a plurality of digital imaging data files from a plurality of sources, and wherein the first and second thresholds associated with one source differ from the first and second thresholds associated with another source.

4. A method according to claim 3 wherein receiving a plurality of digital data files comprises receiving a plurality of digital data files from a plurality of PACS.

5. A method according to claim 2 wherein the memory buffer is sized to receive a plurality of data packets, and wherein transferring data comprises performing a single input/output (I/O) operation in order to transfer the data comprising a plurality of data packets across a network connection to the file storage.

6. A method according to claim 1 further comprising receiving the digital imaging data file without indication of a size of the digital imaging data file.

7. A method according to claim 1 wherein receiving the respective data packet using memory comprises appending the data packet to a linked list in the memory.

8. An apparatus for storing a digital imaging data file comprised of a plurality of data packets, the apparatus comprising;

a memory;

a file storage; and

a processor configured to determine, for a respective data packet, whether that portion of the digital imaging data file that has been received equals or exceeds a first threshold defining a first file size, said processor also configured, in an instance in which the first threshold is not satisfied in that the portion of the digital imaging data file that has been received has a size that is less than the first file size, to receive the respective data packet using the memory, said processor further configured, in an instance in which the first threshold is satisfied in that the portion of the digital imaging data file that has been received has a size that equals or exceeds the first file size, to receive the respective data packet and subsequent data packet(s) of the digital imaging data file using the file storage,

wherein receipt of the respective data packet using the file storage is slower than receipt of the respective data packet using the memory.

9. An apparatus according to claim 8 further comprising a memory buffer, wherein the processor is further configured, in an instance in which the first threshold is satisfied, to initially receive the respective data packet using the memory buffer, and wherein the processor being configured to receive the respective data packet and subsequent data packet(s) in the file storage comprises the processor being configured to transfer data from the memory buffer to the file storage in an instance in which the memory buffer contains data that satisfies a second threshold defining a second file size, smaller than the first file size.

10. An apparatus according to claim 9 wherein the processor is configured to control receipt of a plurality of digital imaging data files from a plurality of sources, and wherein the first and second thresholds associated with one source differ from the first and second thresholds associated with another source.

11. An apparatus according to claim 10 wherein the plurality of digital data files comprise a plurality of digital data files from a plurality of PACS.

12. An apparatus according to claim 9 wherein the memory buffer is sized to receive a plurality of data packets, and wherein the processor being configured to transfer data comprises the processor being configured to perform a single input/output (I/O) operation in order to transfer the data comprising a plurality of data packets across a network connection to the file storage.

13. An apparatus according to claim 8 wherein the digital imaging data file is received without indication of a size of the digital imaging data file.

14. An apparatus according to claim 8 wherein the processor being configured to receive the respective data packet using memory comprises the processor being configured to append the data packet to a linked list in the memory.

15. A computer program product for storing a digital imaging data file comprised of a plurality of data packets, the computer program product comprising at least one non-transitory computer-readable storage medium having computer-readable program instructions stored therein, the computer-readable program instructions comprising:

program instructions configured, for a respective data packet, to determine whether that portion of the digital imaging data file that has been received equals or exceeds a first threshold defining a first file size;

program instructions configured, in an instance in which the first threshold is not satisfied in that the portion of the digital imaging data file that has been received has a size that is less than the first file size, to receive the respective data packet using memory; and

program instructions configured, in an instance in which the first threshold is satisfied in that the portion of the digital imaging data file that has been received has a size that equals or exceeds the first file size, to receive the respective data packet and subsequent data packet(s) of the digital imaging data file using file storage, wherein receipt of the respective data packet using file storage is slower than receipt of the respective data packet using memory.

16. A computer program product according to claim 15 further comprising program instructions configured, in an instance in which the first threshold is satisfied, to initially receive the respective data packet using a memory buffer, and wherein the program instructions configured to receive the respective data packet and subsequent data packet(s) using file storage comprise program instructions configured to transfer data from the memory buffer to the file storage in an instance in which the memory buffer contains data that satisfies a second threshold defining a second file size, smaller than the first file size.

17. A computer program product according to claim 16 wherein the program instructions configured to receive a digital imaging data file comprise program instructions configured to receive a plurality of digital imaging data files from a plurality of sources, and wherein the first and second thresholds associated with one source differ from the first and second thresholds associated with another source.

18. A computer program product according to claim 16 wherein the memory buffer is sized to receive a plurality of data packets, and wherein the program instructions configured to transfer data comprise program instructions configured to perform a single input/output (I/O) operation in order to transfer the data comprising a plurality of data packets across a network connection to the file storage.

19. A computer program product according to claim 15 wherein the digital imaging data file is received without indication of a size of the digital imaging data file.

20. A computer program product according to claim 15 wherein the program instructions configured to receive the respective data packet using memory comprise program instructions configured to append the data packet to a linked list in the memory.

Assignments (9)
RELEASE OF SECURITY INTEREST Recorded Oct 5, 2022
From: BANK OF AMERICA, N.A.
To: CHANGE HEALTHCARE RESOURCES, LLC (FORMERLY KNOWN AS ALTEGRA HEALTH OPERATING COMPANY LLC); CHANGE HEALTHCARE SOLUTIONS, LLC; CHANGE HEALTHCARE PERFORMANCE, INC. (FORMERLY KNOWN AS CHANGE HEALTHCARE, INC.); CHANGE HEALTHCARE OPERATIONS, LLC; CHANGE HEALTHCARE HOLDINGS, INC.; CHANGE HEALTHCARE TECHNOLOGIES, LLC (FORMERLY KNOWN AS MCKESSON TECHNOLOGIES LLC); CHANGE HEALTHCARE HOLDINGS, LLC
Reel/Frame 061620/0054 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 23, 2018
From: CHANGE HEALTHCARE LLC
To: CHANGE HEALTHCARE HOLDINGS, LLC
Reel/Frame 046449/0899 →
CHANGE OF ADDRESS Recorded Mar 23, 2017
From: CHANGE HEALTHCARE LLC
To: CHANGE HEALTHCARE LLC
Reel/Frame 042082/0061 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 10, 2017
From: PF2 IP LLC
To: CHANGE HEALTHCARE LLC
Reel/Frame 041966/0356 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 9, 2017
From: MCKESSON CORPORATION
To: PF2 IP LLC
Reel/Frame 041938/0501 →
SECURITY AGREEMENT Recorded Mar 2, 2017
From: CHANGE HEALTHCARE HOLDINGS, LLC; CHANGE HEALTHCARE, INC.; CHANGE HEALTHCARE HOLDINGS, INC.; CHANGE HEALTHCARE OPERATIONS, LLC; CHANGE HEALTHCARE SOLUTIONS, LLC; ALTEGRA HEALTH OPERATING COMPANY LLC; MCKESSON TECHNOLOGIES LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 041858/0482 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 12, 2017
From: MCKESSON FINANCIAL HOLDINGS UNLIMITED COMPANY
To: MCKESSON CORPORATION
Reel/Frame 041355/0408 →
CHANGE OF NAME Recorded Jan 11, 2017
From: MCKESSON FINANCIAL HOLDINGS
To: MCKESSON FINANCIAL HOLDINGS UNLIMITED COMPANY
Reel/Frame 041329/0879 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 20, 2012
From: YIU, EDWOOD; MA, SHIRLEY; LAI, LILY
To: MCKESSON FINANCIAL HOLDINGS
Reel/Frame 027569/0363 →