compoundUpdateInputVisitor.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef EQSERVER_COMPOUNDUPDATEINPUTVISITOR_H
00019 #define EQSERVER_COMPOUNDUPDATEINPUTVISITOR_H
00020
00021 #include "compoundVisitor.h"
00022
00023 #include <eq/base/hash.h>
00024
00025 namespace eq
00026 {
00027 namespace server
00028 {
00029 class Channel;
00030 class Frame;
00031
00035 class CompoundUpdateInputVisitor : public CompoundVisitor
00036 {
00037 public:
00038 CompoundUpdateInputVisitor(
00039 const stde::hash_map<std::string, Frame*>& outputFrames );
00040 virtual ~CompoundUpdateInputVisitor() {}
00041
00043 virtual VisitorResult visit( Compound* compound );
00044
00045 private:
00046 const stde::hash_map<std::string, Frame*>& _outputFrames;
00047
00048 void _updateZoom( const Compound* compound, Frame* frame,
00049 const Frame* outputFrame );
00050 };
00051 }
00052 }
00053 #endif // EQSERVER_CONSTCOMPOUNDVISITOR_H