1.  Field of the Invention
The invention relates to the field of implantable medical devices, and, more particularly, to implantable devices that collect and store data associated with events occurring in the human body. 
2.  Description of the Related Art
Since the introduction of the first implantable pacemakers in the 1960s, there have been considerable advancements in both the field of electronics and of medicine, such that there is presently a wide assortment of commercially available body-implantable electronic medical devices.  The class of implantable medical devices now includes pacemakers, implantable cardioverters, defibrillators, neurostimulators, and drug-administering devices, among others.  Today""s state-of-the-art implantable medical devices are vastly more sophisticated and complex than early ones, capable of performing significantly more complex tasks.  The therapeutic benefits of such devices have been well-proven. 
As the functional sophistication and complexity of implantable medical device systems have increased over the years, it has become increasingly advantageous for these devices to perform many functions beyond the rudimentary functions expected of them.  For example, state-of-the-art cardiac pacemakers now perform many functions beyond simple monitoring and pacing.  For example, these devices can now detect the onset of a variety of cardiac events, collect data associated with those events, and record that data for later retrieval and analysis.  As one example, a modern cardiac pacemaker device can detect the onset of a ventricular tachycardia (VT) event, and it can record the date and time of the event, the duration of the event, and the heart rate observed during the VT event.  This information may be stored within the implanted pacemaker and may be later retrieved by a clinician using a variety of well-known programmer devices.  The clinician is thus able to gain valuable information regarding the patient""s condition, enabling better-informed decisions regarding appropriate therapy. 
Data associated with detected events may be stored in a xe2x80x9clogxe2x80x9d in random access memory (RAM) incorporated in the implanted device.  Given the amount of memory available for the recording of such events, and in view of the amount of memory required to store the desired data for a single episode, a limited number of episodes may be recorded in the implanted device.  For example, in a Model Kappa 700 pacemaker manufactured by Medtronic, data for a maximum of 17 episodes of each of three types may be stored in the pacemaker.  That is, the log memory stores a maximum of 51 entries.  Typically, several different types of events may be of interest.  Using the limited amount of space available for recording information regarding these different event types, the allotted memory is typically divided into sections, with data regarding an episode being stored in the memory section allocated to that particular event type.  Usually, the last occurring episode of an event type, the longest-lasting episode of an event type, and the episode having the fastest heart rate observed of an event type and several of the most recently occurring events will be stored into the log.  After all episodes of a particular event type for which memory exists have been observed and recorded, all subsequent episodes of that type may simply be rejected.  Meanwhile, if no episodes of a particular event type occur, the memory space allocated to that event type will remain unused. 
Because of the above-described limitations, a doctor or clinician who seeks to maximize the amount of information available to him or her must decide which of the particular types of events he or she is most interested in observing.  For example, by selecting only three types of events for data collection, the log memory may be allocated so as to provide for storage of up to five episodes of any particular event type.  However, even under this scenario, valuable memory space will be wasted if no (or fewer than five, in this case) episodes of a selected event type occur.  Moreover, the level of detail that is stored concerning any given episode is less than desirable. 
The present invention overcomes, or at least reduces the effects of, some or all of the shortcomings associated with the above-described arrangements. 
In one aspect of the present invention, an episode summary log memory is adapted to store a plurality of entries, each entry correlating to a cardiac event episode.  An episode detail memory is adapted to store a plurality of sets of data associated with a particular cardiac event episode.  At least one of the entries of the episode summary log memory includes a pointer to a corresponding at least one of the sets of data in the episode detail memory.  In various embodiments of the present invention, both the episode summary log memory and the episode detail memory are allocated from random access memory (RAM), and each entry in the episode summary log memory may include a pointer to a corresponding set of data in the episode detail memory.  The entries in the episode summary log may contain summary information regarding the cardiac event episode, whereas each of the sets of data in the episode detail memory includes detail information about the corresponding cardiac event episode. 
In another aspect of the present invention, a method is provided for storing data associated with a cardiac event.  The method includes detecting the cardiac event of interest, and recording data associated with that cardiac event.  The data includes a date and time of the cardiac event, a duration of the cardiac event, a heart rate observed during the cardiac event, and EGM (electrogram referring to electrical signals from within the heart itself) data associated with the cardiac event.  In specific implementations of the inventive method, the date and time, duration and heart rate may be recorded in a first memory while the EGM data is stored in a second memory.  Moreover, in various implementations of the inventive method, a pointer may be set in the first memory to correlate an entry in the first memory with an entry in the second memory.  In certain implementations of the method, a second cardiac event may be detected and recorded, a pointer may be set in the first memory in association with the second cardiac event, and a pointer associated with an earlier cardiac event in the first memory may be invalidated based on assigned cardiac event priorities and selected cardiac event characteristics.