Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

LWClip.h

Go to the documentation of this file.
00001 
00002 /*
00003     TEDDY - General graphics application library
00004     Copyright (C) 1999-2002  Timo Suoranta
00005     tksuoran@cc.helsinki.fi
00006 
00007     This library is free software; you can redistribute it and/or
00008     modify it under the terms of the GNU Lesser General Public
00009     License as published by the Free Software Foundation; either
00010     version 2.1 of the License, or (at your option) any later version.
00011 
00012     This library is distributed in the hope that it will be useful,
00013     but WITHOUT ANY WARRANTY; without even the implied warranty of
00014     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00015     Lesser General Public License for more details.
00016 
00017     You should have received a copy of the GNU Lesser General Public
00018     License along with this library; if not, write to the Free Software
00019     Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
00020 
00021     $Id: LWClip.h,v 1.4 2002/01/11 14:34:59 tksuoran Exp $
00022 */
00023 
00024 
00025 #include "Teddy/TeddyConfig.h"
00026 #if defined( TEDDY_INCLUDE_LW_SCENE )
00027 #ifndef TEDDY__IMPORTS__LW_CLIP__H
00028 #define TEDDY__IMPORTS__LW_CLIP__H
00029 
00030 
00031 #include "Teddy/Imports/lwdef.h"
00032 
00033 
00034 namespace Teddy   {
00035 namespace Imports {
00036 
00037 
00038 class LWFile;
00039 
00040 
00046 class LWClip {
00047 public:
00048     LWClip( LWFile *f );
00049 
00050     void processClip();
00051 
00052 protected:
00053     void readStillImage_FNAM0                  ();
00054     void readImageSequence_U1_U1_I2_I2_FNAM0_S0();
00055     void readAnimation_FNAM0_S0_U2_d           ();
00056     void readStillColorCycle_I2_I2_FNAM0       ();
00057     void readContrast_FP4_VX                   ();
00058     void readBrightness_FP4_VX                 ();
00059     void readSaturation_FP4_VX                 ();
00060     void readHue_FP4_VX                        ();
00061     void readGamma_F4_VX                       ();
00062     void readNegative_U2                       ();
00063     void readImageFilter_S0_U2_d               ();
00064     void readPixelFilter_S0_U2_d               ();
00065 
00066     ID4     clip_type;
00067     U4      clip_length;
00068     LWFile *f;
00069 
00070 //  These are public for easy access from LWSurfaceBlok
00071 public:
00072     FNAM0   still_image;                      
00073     U1      image_sequence_num_digits;        
00074     U1      image_sequence_flags;             
00075     I2      image_sequence_offset;            
00076     I2      image_sequence_loop_length;       
00077     FNAM0   image_sequence_prefix;            
00078     S0      image_sequence_suffix;            
00079     FNAM0   plugin_animation_filename;        
00080     S0      plugin_animation_server_name;     
00081     U2      plugin_animation_flags;           
00082     I2      color_cycling_still_image_lo;     
00083     I2      color_cycling_still_image_hi;     
00084     FNAM0   color_cycling_still_image_name;   
00085     FP4     contrast_modifier;                
00086     VX      contrast_modifier_envelope;       
00087     FP4     brightness_modifier;              
00088     VX      brightness_modifier_envelope;     
00089     FP4     saturation_modifier;              
00090     VX      saturation_modifier_envelope;     
00091     FP4     hue_modifier;                     
00092     VX      hue_modifier_envelope;            
00093     F4      gamma_modifier;                   
00094     VX      gamma_modifier_envelope;          
00095     U2      negative_modifier;                
00096     S0      plugin_image_filter_server_name;  
00097     U2      plugin_image_filter_flags;        
00098     S0      plugin_pixel_filter_server_name;  
00099     U2      plugin_pixel_filter_flags;        
00100 
00101 };
00102 
00103 
00104 };  //  namespace Imports
00105 };  //  namespace Teddy
00106 
00107 
00108 #endif  //  TEDDY_INCLUDE_LW_SCENE
00109 #endif  //  TEDDY__IMPORTS__LW_CLIP__H
00110