home *** CD-ROM | disk | FTP | other *** search
/ Geek 6 / Geek-006.iso / linux / video / xmovie-1.5.3.tar.gz / xmovie-1.5.3.tar / xmovie-1.5.3 / xmovie / asset.C < prev    next >
C/C++ Source or Header  |  2000-11-29  |  2KB  |  99 lines

  1. #include "asset.h"
  2. #include "quicktime.h"
  3. #include <string.h>
  4.  
  5. Asset::Asset()
  6. {
  7.     init_values();
  8. }
  9.  
  10.  
  11. Asset::Asset(const char *path)
  12. {
  13.     init_values();
  14.     strcpy(this->path, path);
  15. }
  16.  
  17. int Asset::init_values()
  18. {
  19.     audio_data = video_data = 0;
  20.     format = channels = rate = bits = byte_order = signed_ = header = 0;
  21.     
  22.     frame_rate = 0;
  23.     width = 0;
  24.     height = 0;
  25.     strcpy(compression, QUICKTIME_YUV2);
  26.     quality = 100;
  27.     audio_streams = 0;
  28.     video_streams = 0;
  29.     return 0;
  30. }
  31.  
  32.  
  33. Asset& Asset::operator=(Asset &asset)
  34. {
  35.     strcpy(this->path, asset.path);
  36.  
  37.     audio_data = asset.audio_data;
  38.     format = asset.format;
  39.     channels = asset.channels;
  40.     rate = asset.rate;
  41.     bits = asset.bits;
  42.     byte_order = asset.byte_order;
  43.     signed_ = asset.signed_;
  44.     header = asset.header;
  45.     audio_streams = asset.audio_streams;
  46.  
  47.     video_data = asset.video_data;
  48.     frame_rate = asset.frame_rate;
  49.     width = asset.width;
  50.     height = asset.height;
  51.     quality = asset.quality;
  52.     strcpy(compression, asset.compression);
  53.     video_streams = asset.video_streams;
  54.     return *this;
  55. }
  56.  
  57. int Asset::operator==(Asset &asset)
  58. {
  59.     if(
  60.     format == asset.format && 
  61.     channels == asset.channels && 
  62.     rate == asset.rate && 
  63.     bits == asset.bits && 
  64.     byte_order == asset.byte_order && 
  65.     signed_ == asset.signed_ && 
  66.     header == asset.header && 
  67.     audio_streams == asset.audio_streams &&
  68.  
  69.     frame_rate == asset.frame_rate &&
  70.     quality == asset.quality &&
  71.     width == asset.width &&
  72.     height == asset.height &&
  73.     !strcmp(compression, asset.compression) &&
  74.     video_streams == asset.video_streams
  75.     ) return 1;
  76.     else
  77.     return 0;
  78. }
  79.  
  80. int Asset::operator!=(Asset &asset)
  81. {
  82.     return !(*this == asset);
  83. }
  84.  
  85. Asset::~Asset()
  86. {
  87. }
  88.  
  89.  
  90. int Asset::dump()
  91. {
  92.     printf("asset::dump\n");
  93.     printf("    audio_data %d format %d channels %d samplerate %d bits %d byte_order %d signed %d header %d\n",
  94.         audio_data, format, channels, rate, bits, byte_order, signed_, header);
  95.     printf("    video_data %d framerate %f width %d height %d compression %c%c%c%c\n",
  96.         video_data, frame_rate, width, height, compression[0], compression[1], compression[2], compression[3]);
  97.     return 0;
  98. }
  99.