Method and system for event communication on a distributed scanner/workstation platform
First Claim
1_9. ] A medical imaging system having at least one host, and further comprising:
- a first application at the at least one host, the first application being a first event source;
a second application at the at least one host, the second application being a first event listener capable of receiving a first event provided from the first application; and
an event name service in communication with the first and second applications, wherein at least one of the first and second applications is capable of registering with the event name service.
1 Assignment
0 Petitions
Accused Products
Abstract
A system and method are disclosed for event communication on a distributed scanner/workstation platform. In one embodiment, a medical imaging system having at least one host further includes a first application, a second application, and an event name service. The first application is at the at least one host, and is a first event source. The second application is at the at least one host, and is a first event listener capable of receiving a first event provided from the first application. The event name service is in communication with the first and second applications. At least one of the first and second applications is capable of registering with the event name service.
37 Citations
209 Claims
-
1_9. ] A medical imaging system having at least one host, and further comprising:
-
a first application at the at least one host, the first application being a first event source;
a second application at the at least one host, the second application being a first event listener capable of receiving a first event provided from the first application; and
an event name service in communication with the first and second applications, wherein at least one of the first and second applications is capable of registering with the event name service.
-
-
2_9. ] The system of claim 1, wherein the at least one host includes a first host and a second host, wherein the first application is at the first host and the second application is at the second host, and wherein first and second hosts differ in at least one of their respective languages, their respective architectures, or the respective devices on which the respective hosts reside.
-
3_9. ] The system of claim 1, wherein the communication of the first event between the first and second applications occurs by way of the internet, and at least one of the first and second applications includes applets.
-
4_9. ] The system of claim 1, wherein the application that is capable of registering with the event name service is also capable of deregistering from the event name service.
-
5_9. ] The system of claim 1, further comprising a plurality of additional hosts at which are a plurality of additional applications, wherein each of the additional applications is either an event source or an event listener.
-
6_9. ] The system of claim 5, wherein at least some of the additional applications are additional event listeners, and wherein the first event source determines whether to provide the first event to the first event listener and the additional event listeners based upon a filter determined by the event name service in response to the registering of at least some of the first event listener and the additional event listeners at the event name service.
-
7_9. ] The system of claim 5, wherein at least some of the additional applications are additional event listeners, and wherein the first event source provides the first event to the first event listener and each of the additional event listeners in a multicast mode of operation.
-
8_9. ] The system of claim 5, wherein at least some of the additional applications are additional event sources, and wherein the first event listener is capable of providing a command to the event name service to provide a listing of the first event source and the additional event sources that are currently active.
-
9_9. ] The system of claim 1 wherein, when the first event listener registers with the event name service to receive the first event but the first event source is not yet on line, the event name service acts as a proxy for the first event source until such time as the first event source becomes on line.
-
10_9. ] The system of claim 1, wherein the first and second applications each employ a package including a DEM C++ library, a DEMIDL C++ library, a DEMJNI C++ library, and a DEMjarjava library.
-
11_9. ] The system of claim 10, wherein each DEM C++ library includes a DEM package including a TerraSourceUtil class, a TerraListenerUtil class, and a TerraNameServiceUtil class, wherein each TerraSourceUtil class includes an Isourcelmpl subclass, wherein each TerraListenerUtil class includes a TerraEventUtil subclass and an Ilistenerlmpl subclass, and wherein each TerraNameServiceUtil class includes a NameServiceUtil subclass.
-
12_9. ] The system of claim 10, wherein each DEMIDL C++ library includes a DEMIDL package that comprises an INameService class, an ISource class, and an Listener class, wherein the INameService class is implemented in the event name service, the ISource class is implemented in the first event source and owns a FilterRep class and a ListenerRep class, wherein the ListenerRep class is also in association with the IListener class, and wherein the IListener class is implemented in the first event listener and owns an EventRep class.
-
13_9. ] The system of claim 1, wherein the medical imaging system is one of an MRI medical imaging system, a CT system, a PET medical imaging system, an x-ray scanner and a nuclear imaging scanner.
-
14_9. ] In a medical imaging system, a system for communicating information comprising:
-
a plurality of event source applications, the event source applications being capable of providing events, as publishers, to event listener applications;
a plurality of event listener applications, the event listener applications being capable of receiving, as subscribers, at least some of the events from the event source applications using an event filtering mechanism;
a hosting means for hosting at least one of the plurality of event source and event listener applications; and
an event name service at which the event listener applications can register, wherein the event source applications only provide the events to the event listener applications if the event listener applications have registered for the events with the event name service.
-
-
15_9. ] The system of claim 13, wherein at least one of the event source applications and one of the event listener applications are located on a single host device, the single host device being included in a hosting means, and wherein the language employed in the communication of the event is CORBA.
-
16_9. ] The system of claim 13, wherein one of the event source applications is located on a different host device than one of the event listener applications, and one of the event source applications employs a different architecture and a different language than one of the event listener applications.
-
17_9. ] In a medical imaging system, a method of communicating information, the method comprising:
-
providing a first application that is an event listener, a second application that is an event source, and an event name service;
registering at least one of the event listener and the event source with the event name service; and
sending an event from the event source to the event listener when the at least one of the event listener and the event source is registered with the event name service.
-
-
18_9. ] The method of claim 17, wherein the registering of the at least one of the event listener and the event source with the event name service is the registering of the event listener with the event name service, and further comprising:
-
determining whether a particular event source for providing a desired event currently exists;
providing a proxy for the particular event source because the particular event source is currently not on line, wherein the proxy is provided by the event name service; and
transferring a registration from the proxy to the particular event source when the particular event source comes on line.
-
-
19_9. ] The method of claim 17, further comprising:
-
providing a listing of registered event sources; and
unregistering the at least one of the event listener and the event source from the event name service.
-
-
20_9. ] A method of communicating information on a distributed medical imaging scanner/workstation platform, the method comprising:
-
providing a first event source on a first host of the platform;
providing a first event listener on a second host of the platform;
registering the first event source at an event name service;
providing a listing of the first event source and a second event source in response to a request;
determining whether a desired event source capable of providing a desired event as required by the first event listener is registered; and
when the desired event source is registered, firing the desired event from the desired event source to the first event listener.
-
Specification