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

Asset Class Reference

#include <asset.h>

List of all members.

Public Member Functions

 Asset ()
 Asset (Asset &asset)
 Asset (const char *path)
 Asset (const int plugin_type, const char *plugin_path)
 ~Asset ()
int init_values ()
int dump ()
void copy_from (Asset *asset, int do_index)
void copy_location (Asset *asset)
void copy_format (Asset *asset, int do_index=1)
void copy_index (Asset *asset)
int64_t get_index_offset (int channel)
int64_t get_index_size (int channel)
char * get_compression_text (int audio, int video)
void load_defaults (Defaults *defaults, char *prefix, int do_format, int do_compression, int do_path, int do_data_types, int do_bits)
void save_defaults (Defaults *defaults, char *prefix, int do_format, int do_compression, int do_path, int do_data_types, int do_bits)
char * construct_param (char *param, char *prefix, char *return_value)
void load_format_defaults (Defaults *defaults)
void save_format_defaults (Defaults *defaults)
void update_index (Asset *asset)
int equivalent (Asset &asset, int test_audio, int test_video)
Assetoperator= (Asset &asset)
int operator== (Asset &asset)
int operator!= (Asset &asset)
int test_path (const char *path)
int test_plugin_title (const char *path)
int read (FileXML *file, int expand_relative=1)
int read_audio (FileXML *xml)
int read_video (FileXML *xml)
int read_index (FileXML *xml)
int reset_index ()
int set_timecode (char *tc, int format, int end)
int reset_timecode ()
int write (FileXML *file, int include_index, char *output_path)
int write_index (char *path, int data_bytes)
int write_audio (FileXML *xml)
int write_video (FileXML *xml)
int write_index (FileXML *xml)
int update_path (char *new_path)

Public Attributes

char path [BCTEXTLEN]
char pipe [BCTEXTLEN]
int use_pipe
char prefix [BCTEXTLEN]
char folder [BCTEXTLEN]
int format
int audio_data
int channels
int sample_rate
int bits
int byte_order
int signed_
int header
int dither
char acodec [BCTEXTLEN]
int64_t audio_length
int video_data
int layers
double frame_rate
char reel_name [BCTEXTLEN]
int reel_number
int64_t tcstart
int64_t tcend
int tcformat
int width
int height
char vcodec [BCTEXTLEN]
int64_t video_length
int ampeg_bitrate
int ampeg_derivative
int vorbis_min_bitrate
int vorbis_bitrate
int vorbis_max_bitrate
int vorbis_vbr
int theora_fix_bitrate
int theora_bitrate
int theora_quality
int theora_sharpness
int theora_keyframe_frequency
int theora_keyframe_force_frequency
int mp3_bitrate
int mp4a_bitrate
int mp4a_quantqual
double aspect_ratio
int interlace_autofixoption
int interlace_mode
int interlace_fixmethod
int jpeg_quality
int vmpeg_iframe_distance
int vmpeg_progressive
int vmpeg_denoise
int vmpeg_seq_codes
int vmpeg_bitrate
int vmpeg_derivative
int vmpeg_quantization
int vmpeg_cmodel
int vmpeg_fix_bitrate
int vmpeg_preset
int vmpeg_field_order
int vmpeg_pframe_distance
int divx_bitrate
int divx_rc_period
int divx_rc_reaction_ratio
int divx_rc_reaction_period
int divx_max_key_interval
int divx_max_quantizer
int divx_min_quantizer
int divx_quantizer
int divx_quality
int divx_fix_bitrate
int h264_bitrate
int h264_quantizer
int h264_fix_bitrate
int divx_use_deblocking
int png_use_alpha
int exr_use_alpha
int exr_compression
int tiff_cmodel
int tiff_compression
int ms_bitrate
int ms_bitrate_tolerance
int ms_interlaced
int ms_quantization
int ms_gop_size
int ms_fix_bitrate
int ac3_bitrate
int use_header
int index_status
int64_t index_zoom
int64_t index_start
int64_t index_bytes
int64_t index_end
int64_t old_index_end
int64_t * index_offsets
int64_t * index_sizes
float * index_buffer
int id


Detailed Description

Definition at line 26 of file asset.h.


Constructor & Destructor Documentation

Asset::Asset  ) 
 

Definition at line 15 of file asset.C.

References init_values().

Asset::Asset Asset asset  ) 
 

Definition at line 20 of file asset.C.

References init_values().

Asset::Asset const char *  path  ) 
 

Definition at line 26 of file asset.C.

References init_values().

Asset::Asset const int  plugin_type,
const char *  plugin_path
 

Definition at line 32 of file asset.C.

References init_values().

Asset::~Asset  ) 
 

Definition at line 37 of file asset.C.

References index_offsets, and index_sizes.


Member Function Documentation

char * Asset::construct_param char *  param,
char *  prefix,
char *  return_value
 

Definition at line 867 of file asset.C.

void Asset::copy_format Asset asset,
int  do_index = 1
 

Definition at line 197 of file asset.C.

References ac3_bitrate, acodec, ampeg_bitrate, ampeg_derivative, aspect_ratio, audio_data, audio_length, bits, byte_order, channels, dither, divx_bitrate, divx_fix_bitrate, divx_max_key_interval, divx_max_quantizer, divx_min_quantizer, divx_quality, divx_quantizer, divx_rc_period, divx_rc_reaction_period, divx_rc_reaction_ratio, divx_use_deblocking, exr_compression, exr_use_alpha, format, frame_rate, h264_bitrate, h264_fix_bitrate, h264_quantizer, header, height, interlace_autofixoption, interlace_fixmethod, interlace_mode, jpeg_quality, layers, mp3_bitrate, mp4a_bitrate, mp4a_quantqual, ms_bitrate, ms_bitrate_tolerance, ms_fix_bitrate, ms_gop_size, ms_interlaced, ms_quantization, pipe, png_use_alpha, prefix, reel_name, reel_number, sample_rate, signed_, tcend, tcformat, tcstart, theora_bitrate, theora_fix_bitrate, theora_keyframe_force_frequency, theora_keyframe_frequency, theora_quality, theora_sharpness, tiff_cmodel, tiff_compression, update_index(), use_header, use_pipe, vcodec, video_data, video_length, vmpeg_bitrate, vmpeg_cmodel, vmpeg_denoise, vmpeg_derivative, vmpeg_field_order, vmpeg_fix_bitrate, vmpeg_iframe_distance, vmpeg_pframe_distance, vmpeg_preset, vmpeg_progressive, vmpeg_quantization, vmpeg_seq_codes, vorbis_bitrate, vorbis_max_bitrate, vorbis_min_bitrate, vorbis_vbr, and width.

Referenced by Record::configure_batches(), copy_from(), Record::new_batch(), and operator=().

void Asset::copy_from Asset asset,
int  do_index
 

Definition at line 185 of file asset.C.

References copy_format(), and copy_location().

Referenced by BatchRenderJob::copy_from(), Assets::copy_from(), and AssetEdit::run().

void Asset::copy_index Asset asset  ) 
 

void Asset::copy_location Asset asset  ) 
 

Definition at line 191 of file asset.C.

References folder, and path.

Referenced by copy_from(), and operator=().

int Asset::dump  ) 
 

Definition at line 1246 of file asset.C.

References acodec, aspect_ratio, audio_data, audio_length, bits, byte_order, channels, dither, format, frame_rate, header, height, index_status, layers, path, reel_name, reel_number, sample_rate, signed_, tcend, tcformat, tcstart, vcodec, video_data, video_length, and width.

Referenced by Assets::dump(), and FileAVI::open_avifile_in().

int Asset::equivalent Asset asset,
int  test_audio,
int  test_video
 

Definition at line 377 of file asset.C.

References acodec, bits, byte_order, channels, dither, format, frame_rate, header, height, interlace_autofixoption, interlace_fixmethod, interlace_mode, layers, path, reel_name, reel_number, sample_rate, signed_, tcend, tcformat, tcstart, vcodec, and width.

Referenced by PreferencesThread::apply_settings(), VWindow::change_source(), Edits::clear_handle(), CICache::delete_entry(), Edit::equivalent_output(), operator==(), and AssetEdit::run().

char * Asset::get_compression_text int  audio,
int  video
 

Definition at line 337 of file asset.C.

References acodec, format, and vcodec.

Referenced by AssetEditWindow::create_objects().

int64_t Asset::get_index_offset int  channel  ) 
 

Definition at line 320 of file asset.C.

References channels, and index_offsets.

Referenced by IndexFile::draw_index().

int64_t Asset::get_index_size int  channel  ) 
 

Definition at line 328 of file asset.C.

References channels, and index_sizes.

Referenced by IndexFile::draw_index().

int Asset::init_values  ) 
 

Definition at line 45 of file asset.C.

References ac3_bitrate, acodec, ampeg_bitrate, ampeg_derivative, aspect_ratio, audio_data, audio_length, bits, byte_order, channels, dither, divx_bitrate, divx_fix_bitrate, divx_max_key_interval, divx_max_quantizer, divx_min_quantizer, divx_quality, divx_quantizer, divx_rc_period, divx_rc_reaction_period, divx_rc_reaction_ratio, divx_use_deblocking, exr_compression, exr_use_alpha, folder, format, frame_rate, h264_bitrate, h264_fix_bitrate, h264_quantizer, header, height, interlace_autofixoption, interlace_fixmethod, interlace_mode, jpeg_quality, layers, mp3_bitrate, mp4a_bitrate, mp4a_quantqual, ms_bitrate, ms_bitrate_tolerance, ms_fix_bitrate, ms_gop_size, ms_interlaced, ms_quantization, EDL::next_id(), path, pipe, png_use_alpha, prefix, reset_index(), reset_timecode(), sample_rate, signed_, theora_bitrate, theora_fix_bitrate, theora_keyframe_force_frequency, theora_keyframe_frequency, theora_quality, theora_sharpness, tiff_cmodel, tiff_compression, use_header, use_pipe, vcodec, video_data, video_length, vmpeg_bitrate, vmpeg_cmodel, vmpeg_denoise, vmpeg_derivative, vmpeg_field_order, vmpeg_fix_bitrate, vmpeg_iframe_distance, vmpeg_pframe_distance, vmpeg_preset, vmpeg_progressive, vmpeg_quantization, vmpeg_seq_codes, vorbis_bitrate, vorbis_max_bitrate, vorbis_min_bitrate, vorbis_vbr, and width.

Referenced by Asset().

void Asset::load_defaults Defaults *  defaults,
char *  prefix,
int  do_format,
int  do_compression,
int  do_path,
int  do_data_types,
int  do_bits
 

Definition at line 879 of file asset.C.

References ac3_bitrate, acodec, ampeg_bitrate, ampeg_derivative, aspect_ratio, audio_data, bits, byte_order, dither, divx_bitrate, divx_fix_bitrate, divx_max_key_interval, divx_max_quantizer, divx_min_quantizer, divx_quality, divx_quantizer, divx_rc_period, divx_rc_reaction_period, divx_rc_reaction_ratio, divx_use_deblocking, exr_compression, exr_use_alpha, format, GET_DEFAULT, h264_bitrate, h264_fix_bitrate, h264_quantizer, interlace_autofixoption, interlace_fixmethod, interlace_mode, jpeg_quality, load_format_defaults(), mp3_bitrate, mp4a_bitrate, mp4a_quantqual, ms_bitrate, ms_bitrate_tolerance, ms_fix_bitrate, ms_gop_size, ms_interlaced, ms_quantization, path, png_use_alpha, reel_name, reel_number, signed_, tcend, tcformat, tcstart, theora_bitrate, theora_fix_bitrate, theora_keyframe_force_frequency, theora_keyframe_frequency, theora_quality, theora_sharpness, tiff_cmodel, tiff_compression, vcodec, video_data, vmpeg_bitrate, vmpeg_cmodel, vmpeg_denoise, vmpeg_derivative, vmpeg_field_order, vmpeg_fix_bitrate, vmpeg_iframe_distance, vmpeg_pframe_distance, vmpeg_preset, vmpeg_progressive, vmpeg_quantization, vmpeg_seq_codes, vorbis_bitrate, vorbis_max_bitrate, vorbis_min_bitrate, and vorbis_vbr.

Referenced by MenuVEffectThread::get_derived_attributes(), MenuAEffectThread::get_derived_attributes(), BatchRenderJob::load(), Render::load_defaults(), Record::load_defaults(), Preferences::load_defaults(), BatchRenderThread::load_defaults(), and RenderFarmClientThread::read_asset().

void Asset::load_format_defaults Defaults *  defaults  ) 
 

Definition at line 1017 of file asset.C.

References format, GET_DEFAULT, path, pipe, and use_pipe.

Referenced by FormatFormat::handle_event(), and load_defaults().

int Asset::operator!= Asset asset  ) 
 

Definition at line 425 of file asset.C.

Asset & Asset::operator= Asset asset  ) 
 

Definition at line 369 of file asset.C.

References copy_format(), and copy_location().

int Asset::operator== Asset asset  ) 
 

Definition at line 417 of file asset.C.

References equivalent().

int Asset::read FileXML file,
int  expand_relative = 1
 

Definition at line 442 of file asset.C.

References FileXML::filename, folder, format, XMLTag::get_property(), path, read_audio(), read_index(), FileXML::read_tag(), FileXML::read_text(), read_video(), File::strtoformat(), FileXML::tag, XMLTag::title_is(), and use_header.

Referenced by BatchRenderJob::load(), Assets::load(), RenderFarmClientThread::read_asset(), and IndexFile::read_info().

int Asset::read_audio FileXML xml  ) 
 

Definition at line 529 of file asset.C.

References acodec, audio_data, audio_length, bits, byte_order, channels, dither, XMLTag::get_property(), header, sample_rate, signed_, FileXML::tag, tcend, tcformat, tcstart, XMLTag::title_is(), and video_data.

Referenced by read().

int Asset::read_index FileXML xml  ) 
 

Definition at line 592 of file asset.C.

References channels, XMLTag::get_property(), index_bytes, index_offsets, index_sizes, index_zoom, FileXML::read_tag(), FileXML::tag, and XMLTag::title_is().

Referenced by read().

int Asset::read_video FileXML xml  ) 
 

Definition at line 568 of file asset.C.

References frame_rate, XMLTag::get_property(), height, layers, reel_name, reel_number, FileXML::tag, tcend, tcformat, tcstart, XMLTag::title_is(), vcodec, video_data, video_length, and width.

Referenced by read().

int Asset::reset_index  ) 
 

Definition at line 162 of file asset.C.

References index_buffer, index_bytes, index_end, index_offsets, index_sizes, index_start, index_status, index_zoom, and old_index_end.

Referenced by init_values().

int Asset::reset_timecode  ) 
 

Definition at line 174 of file asset.C.

References reel_name, reel_number, tcend, tcformat, and tcstart.

Referenced by init_values().

void Asset::save_defaults Defaults *  defaults,
char *  prefix,
int  do_format,
int  do_compression,
int  do_path,
int  do_data_types,
int  do_bits
 

Definition at line 1039 of file asset.C.

References ac3_bitrate, acodec, ampeg_bitrate, ampeg_derivative, aspect_ratio, audio_data, bits, byte_order, dither, divx_bitrate, divx_fix_bitrate, divx_max_key_interval, divx_max_quantizer, divx_min_quantizer, divx_quality, divx_quantizer, divx_rc_period, divx_rc_reaction_period, divx_rc_reaction_ratio, divx_use_deblocking, exr_compression, exr_use_alpha, format, h264_bitrate, h264_fix_bitrate, h264_quantizer, interlace_autofixoption, interlace_fixmethod, interlace_mode, jpeg_quality, mp3_bitrate, mp4a_bitrate, mp4a_quantqual, ms_bitrate, ms_bitrate_tolerance, ms_fix_bitrate, ms_gop_size, ms_interlaced, ms_quantization, path, png_use_alpha, reel_name, reel_number, save_format_defaults(), signed_, tcend, tcformat, tcstart, theora_bitrate, theora_fix_bitrate, theora_keyframe_force_frequency, theora_keyframe_frequency, theora_quality, theora_sharpness, tiff_cmodel, tiff_compression, UPDATE_DEFAULT, vcodec, video_data, vmpeg_bitrate, vmpeg_cmodel, vmpeg_denoise, vmpeg_derivative, vmpeg_field_order, vmpeg_fix_bitrate, vmpeg_iframe_distance, vmpeg_pframe_distance, vmpeg_preset, vmpeg_progressive, vmpeg_quantization, vmpeg_seq_codes, vorbis_bitrate, vorbis_max_bitrate, vorbis_min_bitrate, and vorbis_vbr.

Referenced by BatchRenderJob::save(), Render::save_defaults(), Record::save_defaults(), Preferences::save_defaults(), BatchRenderThread::save_defaults(), MenuVEffectThread::save_derived_attributes(), MenuAEffectThread::save_derived_attributes(), and RenderFarmServerThread::send_asset().

void Asset::save_format_defaults Defaults *  defaults  ) 
 

Definition at line 1174 of file asset.C.

References format, path, pipe, UPDATE_DEFAULT, and use_pipe.

Referenced by FormatFormat::handle_event(), and save_defaults().

int Asset::set_timecode char *  tc,
int  format,
int  end
 

Definition at line 1227 of file asset.C.

References frame_rate, tcend, tcformat, and tcstart.

int Asset::test_path const char *  path  ) 
 

Definition at line 430 of file asset.C.

Referenced by TrackCanvas::draw_resources(), Assets::get_asset(), CICache::update(), Assets::update(), and Assets::update_index().

int Asset::test_plugin_title const char *  path  ) 
 

Definition at line 438 of file asset.C.

void Asset::update_index Asset asset  ) 
 

Definition at line 1196 of file asset.C.

References channels, index_buffer, index_bytes, index_end, index_offsets, index_sizes, index_start, index_status, index_zoom, and old_index_end.

Referenced by copy_format(), and Assets::update_index().

int Asset::update_path char *  new_path  ) 
 

Definition at line 1190 of file asset.C.

References path.

Referenced by Assets::update_old_filename().

int Asset::write FileXML file,
int  include_index,
char *  output_path
 

Definition at line 687 of file asset.C.

References FileXML::append_newline(), FileXML::append_tag(), FileXML::append_text(), folder, format, File::formattostr(), index_status, path, XMLTag::set_property(), XMLTag::set_title(), FileXML::tag, use_header, write_audio(), write_index(), and write_video().

Referenced by BatchRenderJob::save(), Assets::save(), RenderFarmServerThread::send_asset(), and write_index().

int Asset::write_audio FileXML xml  ) 
 

Definition at line 751 of file asset.C.

References acodec, FileXML::append_newline(), FileXML::append_tag(), audio_data, audio_length, bits, byte_order, channels, dither, header, sample_rate, XMLTag::set_property(), XMLTag::set_title(), signed_, and FileXML::tag.

Referenced by write().

int Asset::write_index FileXML xml  ) 
 

Definition at line 832 of file asset.C.

References FileXML::append_newline(), FileXML::append_tag(), channels, index_bytes, index_offsets, index_sizes, index_zoom, XMLTag::set_property(), XMLTag::set_title(), and FileXML::tag.

int Asset::write_index char *  path,
int  data_bytes
 

Definition at line 642 of file asset.C.

References _, audio_length, fclose(), fopen(), fseek(), ftell(), fwrite(), index_buffer, index_end, index_start, index_status, old_index_end, write(), and FileXML::write_to_file().

Referenced by FileMPEG::get_index(), IndexThread::run(), and write().

int Asset::write_video FileXML xml  ) 
 

Definition at line 798 of file asset.C.

References FileXML::append_newline(), FileXML::append_tag(), frame_rate, height, layers, reel_name, reel_number, XMLTag::set_property(), XMLTag::set_title(), FileXML::tag, tcend, tcformat, tcstart, vcodec, video_data, video_length, and width.

Referenced by write().


Member Data Documentation

int Asset::ac3_bitrate
 

Definition at line 272 of file asset.h.

Referenced by copy_format(), AC3ConfigAudioBitrate::handle_event(), init_values(), load_defaults(), FileAC3::open_file(), and save_defaults().

char Asset::acodec[BCTEXTLEN]
 

Definition at line 129 of file asset.h.

Referenced by FileMOV::asset_to_format(), copy_format(), dump(), equivalent(), FileMOV::format_to_asset(), get_compression_text(), MOVConfigAudioPopup::handle_event(), AVIACodecList::handle_event(), init_values(), load_defaults(), FileOGG::open_file(), read_audio(), save_defaults(), MOVConfigAudio::update_parameters(), and write_audio().

int Asset::ampeg_bitrate
 

Definition at line 169 of file asset.h.

Referenced by copy_format(), MPEGABitrate::handle_event(), init_values(), load_defaults(), FileMPEG::open_file(), and save_defaults().

int Asset::ampeg_derivative
 

Definition at line 171 of file asset.h.

Referenced by copy_format(), MPEGABitrate::create_objects(), MPEGLayer::handle_event(), init_values(), load_defaults(), FileMPEG::open_file(), save_defaults(), and FileMPEG::write_samples().

double Asset::aspect_ratio
 

Definition at line 197 of file asset.h.

Referenced by copy_format(), dump(), init_values(), PackageRenderer::initialize(), load_defaults(), FileYUV::open_file(), FileOGG::open_file(), FileMPEG::open_file(), FileMPEGVideo::run(), and save_defaults().

int Asset::audio_data
 

Definition at line 120 of file asset.h.

Referenced by MWindow::asset_to_edl(), FileMOV::asset_to_format(), Render::check_asset(), FormatCheck::check_format(), FileOGG::close_file(), copy_format(), PackageRenderer::create_engine(), RecordThread::create_objects(), RecordMonitorGUI::create_objects(), RecordGUI::create_objects(), MenuEffectWindow::create_objects(), FormatTools::create_objects(), AssetPicon::create_objects(), AssetEditWindow::create_objects(), PackageRenderer::do_audio(), TrackCanvas::drag_stop(), dump(), FileOGG::flush_ogg(), FileSndFile::format_to_asset(), FileMOV::format_to_asset(), MenuVEffectThread::get_derived_attributes(), MenuAEffectThread::get_derived_attributes(), FormatAudio::handle_event(), init_values(), Edits::insert_asset(), load_defaults(), MWindow::load_filenames(), FileAVI::open_avifile_in(), FileAVI::open_avifile_out(), FileYUV::open_file(), FileVorbis::open_file(), FileOGG::open_file(), FileMPEG::open_file(), Record::open_input_devices(), RecordThread::pause_recording(), Preferences::Preferences(), read_audio(), FileList::read_list_header(), PackageRenderer::render_package(), RecordMonitorGUI::resize_event(), Record::rewind_file(), ThreadIndexer::run(), RecordVideo::run(), RecordThread::run(), MenuEffectThread::run(), MainIndexes::run(), AssetEdit::run(), save_defaults(), PackageRenderer::stop_output(), RecordThread::sync_position(), FormatTools::update(), and write_audio().

int64_t Asset::audio_length
 

Definition at line 132 of file as