Main Page | Namespace List | Class Hierarchy | Class List | File List | Class Members | File Members

Effect.H

Go to the documentation of this file.
00001 /**************************************************************
00002  *  Name: Sascha Becker (sab)
00003  *  File: Effect.H
00004  *  Asgn: cavewriting
00005  *  Date: Sat Jan  1 13:51:37 EST 2005
00006  **************************************************************/
00007 
00008 #ifndef Effect_Header
00009 #define Effect_Header
00010 
00011 #include <DrawObj.H>
00012 #include <IS3D.H>
00013 #include "Word.H"
00014 
00015 using namespace std;
00016 using namespace xercesc; 
00017 
00018 namespace cavewriting {
00019 
00031 class Effect : public IS3D::AnimObj {
00032 
00033 public:
00034 
00040   Effect(Array<Word*>& words, double startTime, double duration = 100.0, bool startPaused = true);
00041   Effect(Word* word, double startTime, double duration = 100.0, bool startPaused = true);
00042 
00043 
00044   virtual ~Effect();
00045 
00047   virtual void animate(); 
00048 
00051 
00052   Array<Word*>& getWords() {return _words;}
00053 
00057   void addWord(Word* word) { _words.append(word); }
00058 
00061   static Effect* fromXML(xercesc::DOMElement* effectNode, bool startPaused = true); 
00062   
00064   virtual void start();
00065 protected:
00066   Array<Word*> _words;
00067   Word* _word;
00068 
00069   double _startTime; 
00070   double _duration;   
00071   bool _paused;
00072 
00073 private:
00074 
00075 };
00076 
00077 }
00078 
00079 #endif

Generated on Sun Apr 17 13:34:27 2005 for cavewriting by  doxygen 1.4.0