X-Git-Url: http://git.cinelerra-gg.org/git/?p=goodguy%2Fhistory.git;a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Fundostack.h;h=e6791d0a27d65441a6d3073272f047b22fb15a63;hp=f54cb0da34de7fe9392da8c6cfccf6e274e056ca;hb=7ead44762b23da404eee89b63e0474153fdf58a1;hpb=486c0ba74d53fd9e7bd72656dc7649567b654107 diff --git a/cinelerra-5.1/cinelerra/undostack.h b/cinelerra-5.1/cinelerra/undostack.h index f54cb0da..e6791d0a 100644 --- a/cinelerra-5.1/cinelerra/undostack.h +++ b/cinelerra-5.1/cinelerra/undostack.h @@ -31,11 +31,56 @@ #define UNDOLEVELS 500 #define UNDO_KEY_INTERVAL 100 -// The undo stack is a series of key undo buffers and -// incremental undo buffers. The incremental buffers -// store the differences in the most compact way possible: -// a series of offsets, sizes and values. This should allow -// a huge number of undo updates. + +#define hash_sz2 8 +#define hash_sz (1< +{ +public: + UndoVersion(int v) { ver = v; } + ~UndoVersion() { remove_all_objects(); } + int ver; + + void scan_lines(UndoHashTable *hash, char *sp, char *ep); +}; class UndoStackItem : public ListItem @@ -56,16 +101,10 @@ public: // The string must be deleted by the user. char* get_data(); char* get_filename(); - int has_data(); int get_size(); int is_key(); uint64_t get_flags(); - -// Get pointer to incremental data for use in an apply_difference command. - char* get_incremental_data(); - int get_incremental_size(); - void set_creator(void *creator); void* get_creator();