This patent application is related to processing devices and interfaces in the medical device area.
Hemodialysis is a process which employs a machine that includes a dialyzer to aid patients whose renal function has deteriorated to the point where their body cannot adequately rid itself of toxins. The dialyzer may include a semi-permeable membrane, the membrane serving to divide the dialyzer into two chambers. Blood is pumped through one chamber and a dialysis solution through the second. As the blood flows by the dialysis fluid, impurities, such as urea and creatinine, diffuse through the semi-permeable membrane into the dialysis solution. The electrolyte concentration of the dialysis fluid may be set so as to maintain electrolytic balance within the patient. Other purification techniques and processes may additionally be used. Hemodialysis may be generally referred to herein as “dialysis,” although it is noted that other types of dialysis exist, such a peritoneal dialysis, and it is noted that the system described herein may be used in connection with any appropriate dialysis system or similar treatment system.
Since dialysis involves removing blood from and returning blood to a patient, performing a dialysis procedure carries a degree of risk. Dialysis treatment requires monitoring of several patient vital signs and dialysis parameters during the dialysis process in order to optimize the overall efficacy of the dialysis procedure, to assess the condition of a fistula (the access to the patient's blood) and to determine the actual purification achieved. Some examples of parameters monitored and analyzed by a dialysis machine or equipment include the blood access flow rate or the rate at which blood flows out of the patient to the dialyzer, a critical parameter; and the ratio Kt/V to measure dialysis efficiency, where K is the clearance or dialysance (both terms representing the purification efficiency of the dialyzer), t is treatment time and V is the patient's total water value.
A processing device coupled to the dialysis machine may be used to manage and oversee the functions of the dialysis process and to, for example, monitor, analyze and interpret patient vital signs and dialysis parameters during a dialysis procedure. The processing device may include a display that displays information concerning the dialysis procedure and include an interface that enables configuration and control of the dialysis machine. A health care practitioner such as a nurse or a patient care technician may oversee the dialysis treatment sessions. Data provided by the dialysis machine and the processing device may aid the health care practitioner in performing his or her duties.
For various descriptions of dialysis systems and components, reference is made, for example, to U.S. Pat. No. 8,110,104 B2 to Crnkovich et al., entitled “Dialysis Systems and Related Components,” and U.S. Pat. No. 6,775,577 B2 to Crnkovich et al., entitled “Method and System for Controlling a Medical Device,” which are incorporated herein by reference. For a description of a sensor system that may be used in connection with monitoring and issuing alerts during a dialysis procedure, reference is made, for example, to U.S. Pat. No. 7,973,667 B2 to Crnkovich et al., entitled “Wetness Sensor,” which is incorporated herein by reference. For various descriptions of interfaces for dialysis systems, reference is made, for example, to U.S. Pat. No. 8,323,503 B2 to Levin et al., entitled “User Interface Processing Device” and U.S. Patent App. Pub. No. 2007/0112603 A1 to Kauthen et al., entitled “Digital Data Entry Methods and Devices,” which are incorporated herein by reference.
An operator needs to re-glove after every patient interaction during a dialysis treatment, which often involves changing a graphical screen on the dialysis machine. The user may change screens as often as once every half hour during a typical dialysis treatment. Accordingly, it would be desirable to provide a system that efficiently and effectively enables a user, such as health care practitioner overseeing the dialysis treatment, to change the screens of the dialysis machine without having to touch or otherwise physically contact the dialysis machine.
According to the system described herein, a method of non-contact interfacing with a medical device includes providing a first device that enables non-contact interfacing with the medical device by a user. A command signal is received from the user at the medical device, in which the command signal corresponds to a treatment performed using the medical device. The command signal is a non-contact command received from the user without physical contact of the user with the medical device. The command signal is processed at the medical device to generate information corresponding to the treatment performed using the medical device. The information is displayed on a screen of the medical device. The medical device may include a dialysis machine, and the information displayed on the screen of the medical device may include dialysis treatment information displayed during a dialysis treatment. The first device may include an interface device that transmits a wireless signal to the medical device in response to an action by the user. The non-contact command may cause a change in the information being displayed on the screen of the medical device which may include a different screen being displayed on the medical device and/or a section of the information being activated by the non-contact command. The method may further include recognizing a gesture of the user and/or a voice command of the user using a command recognition device coupled to the dialysis machine as the command signal.
According further to the system described herein, a non-transitory computer-readable medium stores software for non-contact interfacing with a medical device. The software includes executable code that operates a first device that enables non-contact interfacing with the medical device by a user. Executable code is provided that receives a command signal from the user at the medical device, wherein the command signal corresponds to a treatment performed using the medical device, wherein the command signal is a non-contact command received from the user without physical contact of the user with the medical device. Executable code is provided that processes the command signal at medical device to generate information corresponding to the treatment performed using the medical device. Executable code is provided that displays the information on a screen of the medical device. The medical device may include a dialysis machine, and the information displayed on the screen of the medical device includes dialysis treatment information displayed during a dialysis treatment. The first device may include an interface device that transmits a wireless signal to the medical device in response to an action by the user. The non-contact command may cause a change in the information being displayed on the screen of the medical device that may include a different screen being displayed on the medical device and/or a section of the information being activated by the non-contact command. Executable code may be provided that recognizes a gesture of the user and/or a voice command using a command recognition device coupled to the dialysis machine as the command signal. Executable code that recognizes a voice command of the user using a command recognition device coupled to the dialysis machine as the command signal.
According further to the system described herein, a system for enabling non-contact interfacing with a dialysis machine is provided. The system includes at least one sensor of the dialysis machine that receives signals corresponding to a dialysis treatment performed by the dialysis machine. A first device is communicationally coupled to the at least one sensor, wherein the first device includes at least one component that processes received signals into information corresponding to the dialysis treatment. At least one screen displays the information corresponding to the dialysis treatment. The first device includes an interface device that transmits a wireless signal to the medical device in response to an action by the user, wherein the wireless signal includes a command signal that causes a change in the information being displayed on the screen of the medical device. The change in the information being displayed on the screen of the medical device includes a different screen being displayed on the medical device and/or a section of the information being activated by the non-contact command. The first device includes a command recognition device that performs recognizing a gesture of the user a command recognition as the command signal and/or recognizing a voice command of the user as the command signal.
Embodiments of the system described herein are explained with reference to the several figures of the drawings, which are briefly described as follows.
According to various embodiments of the system described herein, a sensor 40 may be coupled to the controller device 30 that may be used to control the dialysis machine 22 in connection with transmitting and/or receiving signals to or from a remote or external interface device, as further discussed in detail elsewhere herein. The sensor 40 may be wirelessly coupled to one or more wireless interface devices that may be used by a PCT to monitor and/or control a dialysis treatment being performed by the dialysis machine 22. Various embodiments for the one or more wireless interface devices and for the actions and functions of the sensor 40 in connection with control of the dialysis machine 22 are further discussed in detail elsewhere herein. It is noted that the system described herein may be used with any appropriate wireless communication technology, including, for example, IEEE 802.11b/g, 802.11b/g/n, and/or Bluetooth, having appropriate security and encryption standards, and used in conjunction with appropriate wireless networks, having hardware and software components, that support such wireless communication technologies.
In an embodiment, the dialysis machine 102 may include a display 112 with touch screen features. The dialysis machine 102 may centralize and consolidate dialysis functions and data entry functions in a single device 102, without, e.g., the use of a separate, external display (e.g., display 12 of
In an embodiment, a sensor 140 may be coupled to the dialysis machine 102. As noted in connection with the sensor 40 of
The user interface devices 208-1, 208-2, 208-3 . . . , 208-N may include any of a variety of user interface devices known in the art, such as an alphanumeric keyboard or a keypad, a pointing device (e.g., a touchpad, a mouse, or a trackball), a display, and a display with a touch screen. In an implementation, one or more of the user interface devices 208-1, 208-2, 208-3 . . . , 208-N may be located external to the HD device 200, specifically user interface device 208-3 is shown remotely located and wirelessly coupled, via wireless connection 214-3, to the HD device 200. Various embodiments for a user interface device, like that of user interface device 208-3, being used to wirelessly monitor and/or control the dialysis machine 102 are further discussed in detail elsewhere herein.
The second processing device 204 of the HD device 200 may be configured to communicate with the external network 120, such as a local-area network or the Internet, via a wired or wireless connection 124 (and, e.g., via a network interface (not shown)). In other implementations, other processing devices such as the UIP 206 or the first processing device 202 may communicate with an external network such as the external network 120.
As described herein, the UIP 206 may be configured to share the user interface devices 208-1, 208-2, 208-3 . . . , 208-N between the first processing device 202 and the second processing device 204. The UIP 206 may switch focus from the first processing device 202 to the second processing device 204. The UIP 206 may likewise switch focus from the second processing device 204 to the first processing device 202. Specifically, a processing device, such as the first or the second processing device 202, 204 of
When a processing device, such as the first or the second processing device 202, 204 of
When a processing device (such as the first processing device 202 or the second processing device 204) has focus, one or more user interface processing devices (such as the UIP 206) may manage communications between one or more user interface devices (such as the user interface devices 208-1, 208-2, 208-3 . . . , 208-N) and the processing device. The UIP 206 may, when the processing device has focus, permit the user interface devices 208-1, 208-2, 208-3 . . . , 208-N to affect operation of the processing device. The UIP 206 may switch between modes. The modes may be exclusive of one another and may include a mode in which the first processing device 202 has focus, and a mode in which a second processing device 204 has focus.
According to various embodiments of the system described herein, one or more of the interface devices 208-1 to 208-N, such as the device 208-3, may include one or more remote interface devices wireless coupled to the dialysis machine 102 via a sensor, such as the sensor 40, 140 or 140′ discussed in
The keyboard 308 is connected to the UIP 306 via connection 338. The pointing device 310 is connected to the UIP 306 via connection 340. The display 312 is connected to a digital video switch 316 via connection 342, which is in turn connected to the UIP 306, the FHP 302, and the EP 304 via respective connections 344, 346, 348. A touch screen controller 314 is connected to the display 312 via connection 350, and to the UIP 306 via connection 352. Although one UIP 306 is shown in
As described above, the UIP 306 may switch focus from the FHP 302 to the EP 304. The UIP 306 may likewise switch focus from the EP 304 to the FHP 302. When the FHP 302 has focus, one or more of the keyboard 308, the pointing device 310, the display 312 with a touch screen will generally affect operation of the FHP 302. When the EP 304 has focus, the keyboard 308, the pointing device 310, the display 312 with a touch screen, and/or the remote interface device 400 may generally affect operation of the EP 304. User interactions with the devices 308, 310, 312, 400 will likewise generally affect operation of whichever processing device (the FHP 302 or the EP 304) has focus. The processing device that has focus (the FHP 302 or the EP 304) may control, e.g., the display 312 in certain circumstances.
In various implementation, one or more of the user interface devices may be located external to the HD device 300. In this example implementation, when the EP 304 has focus, the FHP 302 does not have focus, and the FHP 302 may not have control of and/or be controlled by the devices 308, 310, 312, 400. When the FHP 302 has focus, the EP 304 does not have focus, and the EP 304 may not have control of and/or be controlled by the devices 308, 310, 312, 400. The UIP 306 may send protocol data relating to the devices 308, 310, 312 to the EP 304 and the FHP 302, even when one of these devices does not have focus, so that the EP 304 and the FHP 302 may maintain connections with the devices 308, 310, 312. That is, from the perspective of the processing device (EP 304 or FHP 302) that does not have focus, a connection at least appears to be maintained with the devices 308, 310, 312, 400, even though these devices 308, 310, 312, 400 are not controlled by, and do not control, the processing device that does not have focus. The UIP 306 may therefore send protocol data related to the devices 308, 310, 312, 400 to the FHP 302 and the EP 304, irrespective of which processing device 302, 304 has focus. The UIP 306 may switch between modes. The modes may be exclusive of one another and may include a mode in which the first processing device 302 has focus, and a mode in which the second processing device 304 has focus.
In accordance with the system described herein, it is noted that systems and techniques are known for providing wireless devices that may enable wireless coupling of a switch or controller with a base device or computer. The control communication between the controller and the base device may be a wirelessly transmitted control signal, such as a wireless radiofrequency signal and/or an optical or acoustic signal, for example. The system described herein may be used in connection with any appropriate remote control signal and mechanism to enable one device to wirelessly send instructions to another device.
The interface device 401 may include a control portion 410 and an indicator portion 415. The control portion 410 may include one or more buttons or keys that may be pressed by a user to wirelessly select and/or otherwise cause activation of elements on a display screen of a dialysis machine, such as the display 112 of the dialysis machine 102, without requiring the user to touch or otherwise physically contact any other device or component being used in connection with a dialysis treatment of patient. When one or more of the keys on the control portion 410 are pressed, a wireless command is sent to the dialysis machine 102 and received by the sensor 140 or the sensor 140′. The wireless command may be used to navigate through the screens on the display 112. In an embodiment, the screens on the display 112 may switched in a pre-defined order and/or a user may cycle through activatable portions of any one screen in a pre-defined way using one or more of the buttons of the control portion 410. In another embodiment, where the control portion 410 of the interface device 401 has multiple keys, each key may be assigned be assigned to a particular screen, such that dedicated screens are associated with dedicated keys.
The indicator portion 415 may include one or more indictors, such as lights, that may communicate a successful pairing of the interface device with the sensor 140, of the dialysis machine 102 and/or with the remote sensor 140′ communicating with the dialysis machine 102. The indicators of the indicator portion 415 may further communicate other information, such as low battery and/or other information concerning the communication pathway between the interface device 401 and the dialysis machine 102.
The interface device 401 may include a transceiver device 420 that receives and/or transmits signals according to the functionality discussed herein. The transceiver device 420 may include one or more processors to process signals in connection in connection with the transmission of instructions for remotely controlling the dialysis machine 102. The transceiver device 420 may further include a memory, and/or other non-transitory computer-readable media, to store data in connection with the information transmitted and/or received by the interface device 401 and in connection with the execution of software or other executable code in connection with the operations of the interface device 401. The interface device 401 may further include a power source 430, such as a battery.
The interface device 401 may be configured for operation by a user's hand and/or may be placed on the floor and operated by a user's foot. In an embodiment, the interface device 401 may be paired with the dialysis machine 102 to provide that only the interface device 401 is wirelessly controlling the dialysis machine 102. The interface device 401 may receive certain information wirelessly transmitted by the sensor 140 or the sensor 140′, for example, in connection with pairing or authenticating the interface device 401 with the dialysis machine 102, and/or in connection with acknowledging control signals sent by the interface device 401 to the dialysis machine 102 to control the display 112 thereof as discussed herein.
Screen access buttons 502 (main access), 504 (trends), 506 (dialysate), 508 (test options), 510 (heparin), 512 (Kt/V), 514 (BTM), and 516 (blood pressure) may be used to access the various treatment screens in a manner that may be similar to that accessed at the display 112, for example, via touch screen functionality of the display 112. For example, as shown in
A status box 518 appears at the top left corner of the treatment screen being displayed in the information 500. During normal operation it displays the operation mode of the machine, which in this case is “Dialysis.” During alarm situations, a warning message may be displayed in the status box 518. The message displayed in the status box 518 may also prompt the operator for a specific action in situations when the treatment parameters are being set. During normal treatment, a box 520 displays the current time and the box 522 displays the time of the last blood pressure reading and the patient's blood pressure and pulse rate at that time. Arterial pressure in mmHg is displayed numerically in a meter box 524, and graphically in a bar graph 526. Similarly, venous pressure in mmHg is displayed numerically in a meter box 528 and graphically in a bar graph 530, and transmembrane pressure (TMP) in mmHg is displayed numerically in a meter box 532 and graphically in a bar graph 534.
A Tx clock button 536 may be activated start, or to pause or suspend, the treatment. The Tx clock button 536 controls multiple functions of the hemodialysis machine when it is activated. A UF-goal button 538 displays the desired ultrafiltration (UF) in milliliters to be removed during the dialysis treatment. This is typically the difference between the patient's pre and dry weight plus saline or fluid intake during treatment. The UF-time button 540 acts as a countdown timer displaying the remaining time in hours and minutes that ultrafiltration will be performed. The timer stops during a blood alarm or whenever the UF pump is stopped. During treatment, A UF-rate button 542 displays the current rate of ultrafiltration in milliliters per hour. The rate ultrafiltration occurs is determined by the values entered in a UF-goal button 538 and a UF-time button 540 and the profile selected with a UF-profile button 546. A UF-removed button 544 keeps a running total in milliliters of the fluid drawn from the patient through ultrafiltration. When the value displayed in the UF-Removed button 544 is equal to the value entered in the UF-goal button 538, an alarm sounds and the message, “UF GOAL REACHED” is displayed in the status box 518. A UF-profile button 546 when touched brings up the UF Profile selection screen. Once a profile is selected, and the operator pushes the main access button 502, the profile selected is displayed in the UF-profile button 546.
A dialysate flow button 548 displays the current dialysate flow rate in milliliters per minute. A temperature button 550 displays the current temperature in degrees centigrade of the dialysate. Pressing the temperature button 550 allows the operator to set the desired temperature, and thereafter the actual temperature is displayed. If the temperature varies too far from the set point, an alarm sounds, a warning message is displayed in the status box 518, and the dialysate goes into bypass. A conductivity button 552 displays the current conductivity in millisiemens per centimeter of the dialysate. An RTD (Remaining Time of Dialysis) button 554 acts as a countdown timer displaying the amount of treatment time remaining. At the end of treatment (RTD=0:00) an alarm sounds and the message “RTD ZERO” is displayed in the status box 518. An SVS profile button 556 when touched brings up the Sodium Variation System (SVS) profile selection screen. Once a profile is selected, and the operator pushes the main access button 502, the profile selected is displayed in the SVS profile button 556.
In various embodiments, commands recognized by the interface device 401, such as gesture and/or voice commands, may be used to control functionality of the treatment screen being displayed as information 500 on the interface device 401. Accordingly, the mechanism of control of the treatment screen may deviate from control of the treatment screen that is being displayed on the display 112 of the dialysis machine 102. For example, whereas the display 112 on the dialysis machine 102 is controlled by touch screen functionality, treatment screen displayed on the screen 410 of the interface device 401 may be controlled, for example, by the command-based recognition that may be used to iterate through and/or highlight different buttons of the information 500 for the treatment screen that is being displayed on the screen 410. As discussed elsewhere herein, in other embodiments, the information 500 being displayed on the interface device 401 may present a treatment screen that is somewhat different from the treatment screen presented on the display 112 of the dialysis machine 102 in a manner that facilitates that command-based recognition control enabled by the interface device 401.
In various embodiments, the commands recognized by the command recognition device 145 of the sensor 142 may be gestures recognized and used by a gesture-recognition module of the command recognition device 430 in connection with the operation of the interface device 401 may include, for example, hand gestures, head gestures and/or eye gestures of the user. In other embodiments, the command recognition device 430 may include a voice recognition module that enables voice-based control of the interface device 401. The command recognition capability thereby enables hands-free, non-contact operation of the interface device and remote control of the dialysis machine according to the system described herein. Multiple techniques and systems are known for providing non-contact command recognition capability, including gesture and/or voice based command recognition, and reference is made, for purposes of illustrative and descriptive example only, to U.S. Pat. No. 8,228,315 to Starner et al., entitled “Methods and Systems for a Virtual Input Device,” and U.S. Pat. No. 8,223,088 to Gomez et al., entitled “Multimode Input Field for a Head-Mounted Display,” which are incorporated herein by reference.
After the step 806, processing proceeds to a step 808 where information displayed on the display of the dialysis machine during the dialysis treatment is modified based on the wireless signal received. For example, as discussed elsewhere herein, the instruction sent from the interface device as a wireless signal, may enable navigation through screens displayed on the display of the dialysis machine in a pre-ordered manner and further enabling cycling through activatable portions of particular screens until selection of a particular portion of the displayed screen. After the step 808, processing is complete for the described processing iteration of the interface device. It is noted that the processing of the flow diagram 800 may be an on-going process in which the interface device continuously transmits wireless signals in response to user action, such as pressing buttons on the interface device. It is noted that the processing steps performed in the flow diagram 800 may be performed in connection with the execution of software on a non-transitory computer-readable medium of the interface device by one or more processors of the interface device and/or execution of software on a non-transitory computer readable medium of a sensor of the dialysis machine by one or more processors of the sensor. In an embodiment, the software may correspond to software that facilitates and/or otherwise interfaces with the dialysis machine in connection with the performance of the dialysis treatment, such as by providing one or more dialysis treatment screens.
After the step 824, processing proceeds to a step 826 where information displayed on the display of the dialysis machine during the dialysis treatment is modified based on the wireless signal received. For example, as discussed elsewhere herein, the instruction sent from the interface device as a wireless signal, may enable navigation through screens displayed on the display of the dialysis machine in a pre-ordered manner and further enabling cycling through activatable portions of particular screens until selection of a particular portion of the displayed screen. After the step 826, processing is complete for the described processing iteration of the interface device. It is noted that the processing of the flow diagram 820 may be an on-going process in which the interface device continuously transmits wireless signals in response to user action, such as pressing buttons on the interface device. It is noted that the processing steps performed in the flow diagram 820 may be performed in connection with the execution of software on a non-transitory computer-readable medium of the interface device by one or more processors of the command recognition device and/or execution of software on a non-transitory computer readable medium of a sensor of the dialysis machine by one or more processors of the sensor. In an embodiment, the software may correspond to software that facilitates and/or otherwise interfaces with the dialysis machine in connection with the performance of the dialysis treatment, such as by providing one or more dialysis treatment screens.
After the step 904, processing proceeds to a test step 906 where it is determined whether the input command received from a user that includes instructions to navigate from a current screen of information to a different screen of information displayed on the display of the dialysis machine. If, at the test step 906, it is determined that input command is to navigate to a different screen, then processing proceeds to a step 908 where a next screen of information is displayed on the display of the dialysis machine. In an embodiment, the next screen of information displayed may be pre-defined, thereby enabling a user to cycle through screens by pressing a button of the interface device and/or by providing gesture or voice command. In other embodiments, different buttons, gestures and/or voice commands may be pre-assigned to specific pre-defined screens, thereby enabling the user to directly go to a particular screen. After the step 908, processing is complete for the current iteration of the process being discussed, noting that the processing of the flow diagram 900 may be a repeatedly processed.
If, at the test step 906, it is determined that the input command is not directed to navigating to a different screen, then processing proceeds to a test step 910 where it is determined whether the input command is directed to activation of a section of the current screen being displayed on the display of the dialysis machine. If, not, then processing proceeds to a step 912 where other processing is performed with respect to the input command, and thereafter, processing is complete. If, at the test step 910, it is determined that the input command is to select and/or activate a section of the current screen, such as a button displayed on the screen in connection with a dialysis treatment screen, then processing proceeds to a step 914, where the input command is processes to select/activate the appropriate section. In various embodiments, the selection/activation may include iterations of cycling through activatable sections of the current screen and/or buttons on the interface device and/or specific gestures or voice commands may enable direct selection of a button on the current displayed screen.
After the step 914, processing proceeds to a step 916 where the selected portion of the screen is activated (e.g., button on the display is activated) and the current screen information is updated to reflect the activated button. For example, the received control activation command may have adjusted a parameter of the dialysis treatment being performed and the confirmation is updated information of the dialysis treatment that is transmitted to the interface device. The updated information may therefore correspond to a treatment screen of the dialysis treatment displayed on the dialysis machine. After the step 914, processing is complete for the current iteration of the processing being described. It is noted that the processing of the flow diagram 900 may be an on-going process in which the dialysis machine repeatedly processes monitors for input commands and/or signals in connection with the system described herein. It is noted that the processing steps performed in the flow diagram 900 may be performed in connection with the execution of software on a non-transitory computer-readable medium of the dialysis machine by one or more processors of the dialysis machine, including, in particular, one or more processors of a sensor of the dialysis machine. In an embodiment, the software may correspond to software that facilitates and/or otherwise interfaces with an interface device specifically in connection with non-contact monitoring and control of the dialysis treatment, such as in connection with the providing of dialysis treatment screens. It is noted that the processing of the flow diagram 900 may be performed in conjunction with other processing of the dialysis machine, including for example, input of commands directly to the dialysis machine via a touch screen display, for example.
It is noted that the system described herein is discussed principally in connection with the use of dialysis machines and treatments. It is noted that, in other embodiments, the system described herein may also be used in connection with other medical devices where wireless, non-contact control of such devices may be appropriately performed. It is also noted that the system described herein may be used in connection and conjunction with the features and functions of a system like that described in the application filed concurrently herewith to Christensen, entitled “Wearable Interface for Remote Monitoring and Control of a Medical Device,” having Attorney Docket No. FRM-002US, which is assigned to the same assignee as that of the present application and which is incorporated herein by reference.
Various embodiments discussed herein may be combined with each other in appropriate combinations in connection with the system described herein. Additionally, in some instances, the order of steps in the flowcharts, flow diagrams and/or described flow processing may be modified, where appropriate. Further, various aspects of the system described herein may be implemented using software, hardware, a combination of software and hardware and/or other computer-implemented modules or devices having the described features and performing the described functions. Software implementations of the system described herein may include executable code that is stored in a computer-readable medium and executed by one or more processors. The computer-readable medium may include volatile memory and/or non-volatile memory, and may include, for example, a computer hard drive, ROM, RAM, flash memory, portable computer storage media such as a CD-ROM, a DVD-ROM, a flash drive and/or other drive with, for example, a universal serial bus (USB) interface, and/or any other appropriate tangible or non-transitory computer-readable medium or computer memory on which executable code may be stored and executed by a processor. The system described herein may be used in connection with any appropriate operating system.
Other embodiments of the invention will be apparent to those skilled in the art from a consideration of the specification or practice of the invention disclosed herein. It is intended that the specification and examples be considered as exemplary only, with the true scope and spirit of the invention being indicated by the following claims.