Glue.h

Go to the documentation of this file.
00001 /*
00002 
00003 Glue.h -- helper class for combining several single channel framestreams to one multichannel framestream
00004 See the copyright notice and acknowledgment of authors in the file COPYRIGHT
00005 Code written by Jorge Castellanos, Graham Wakefield, Florian Hollerweger, 2005
00006 
00007 */
00008 
00009 #ifndef GLUE_H
00010 #define GLUE_H
00011 
00012 #include "CSL_Core.h"
00013 #include "Variable.h"
00014 #include "CPoint.h"
00015 
00016 namespace csl {
00017 
00018 class Glue : public FrameStream {
00019 
00020 protected:
00021 
00022     unsigned mNumInputs;    // number of input mono framestreams
00023     Buffer mInBuffer;       // input value buffer
00024     FrameStream **mInPtr;   // reference to the input framestreams
00025     
00026 public:
00027     
00028     Glue();                         // defaults to two inputs
00029     Glue(unsigned int numInputs);   // specify number of inputs
00030     ~Glue();                        // destructor
00031     
00032     // specify the mono framestream at the Nth input of our Glue object
00033     void setNthInput(FrameStream &input, unsigned int channel);
00034     
00035     // Overriding Framestream::next_buffer(). Here, the input mono framestreams are combined to one output multichannel framestream
00036     virtual status next_buffer(Buffer &inputBuffer, Buffer &outputBuffer);
00037     
00038 };
00039 
00040 }
00041 
00042 #endif
00043 
00044 

Generated on Thu Sep 17 23:14:16 2009 for CSL by  doxygen 1.5.8