Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members

assets.h

Go to the documentation of this file.
00001 #ifndef ASSETS_H
00002 #define ASSETS_H
00003 
00004 #include <stdio.h>
00005 #include <stdint.h>
00006 
00007 #include "arraylist.h"
00008 #include "asset.inc"
00009 #include "assets.inc"
00010 #include "batch.inc"
00011 #include "defaults.inc"
00012 #include "edl.inc"
00013 #include "filexml.inc"
00014 #include "guicast.h"
00015 #include "linklist.h"
00016 #include "pluginserver.inc"
00017 #include "sharedlocation.h"
00018 
00019 class Assets : public List<Asset>
00020 {
00021 public:
00022         Assets(EDL *edl);
00023         virtual ~Assets();
00024 
00025         int load(ArrayList<PluginServer*> *plugindb, 
00026                 FileXML *xml, 
00027                 uint32_t load_flags);
00028         int save(ArrayList<PluginServer*> *plugindb, 
00029                 FileXML *xml, 
00030                 char *output_path);
00031         Assets& operator=(Assets &assets);
00032         void copy_from(Assets *assets);
00033 
00034 // Enter a new asset into the table.
00035 // If the asset already exists return the asset which exists.
00036 // If the asset doesn't exist, store a copy of the argument and return the copy.
00037         Asset* update(Asset *asset);
00038 // Update the index information for assets with the same path
00039         void update_index(Asset *asset);
00040 
00041 
00042 // Parent EDL
00043         EDL *edl;
00044         
00045 
00046 
00047 
00048 
00049 
00050 
00051 
00052 
00053         int delete_all();
00054         int dump();
00055 
00056 // return the asset containing this path or create a new asset containing this path
00057         Asset* update(const char *path);
00058 
00059 // Insert the asset into the list if it doesn't exist already but
00060 // don't create a new asset.
00061         void update_ptr(Asset *asset);
00062 
00063 // return the asset containing this path or 0 if not found
00064         Asset* get_asset(const char *filename);
00065 // remove asset from table
00066         Asset* remove_asset(Asset *asset);
00067 
00068 // return number of the asset
00069         int number_of(Asset *asset);
00070         Asset* asset_number(int number);
00071 
00072         int update_old_filename(char *old_filename, char *new_filename);
00073 };
00074 
00075 
00076 
00077 
00078 #endif

Generated on Sun Jan 8 13:38:50 2006 for Cinelerra-svn by  doxygen 1.4.4