DataFlowSet.hpp

Go to the documentation of this file.
00001 
00016 #ifndef DataFlowSet_h
00017 #define DataFlowSet_h
00018 
00019 #include <iostream>
00020 #include <OpenAnalysis/Utils/OA_ptr.hpp>
00021 #include <OpenAnalysis/IRInterface/IRHandles.hpp>
00022 
00023 namespace OA {
00024   namespace DataFlow {
00025 
00026 class DataFlowSet {
00027 protected:
00028   //DataFlowSet() {}, why did I do this before?
00029 public:
00030   DataFlowSet() {}
00031   virtual ~DataFlowSet() {}
00032   
00033   // FIXME: is this comment true?
00034   // param for these can't be const because will have to 
00035   // dynamic cast to specific subclass
00036 
00037   //virtual DataFlowSet& operator =(DataFlowSet &other) = 0;
00038   
00039   virtual bool operator ==(DataFlowSet &other) const = 0;
00040   virtual bool operator !=(DataFlowSet &other) const = 0;
00041 
00042   //virtual DataFlowSet* setUnion(DataFlowSet *other) = 0;
00043   //virtual DataFlowSet* setIntersect(DataFlowSet *other) = 0;
00044   
00045   virtual OA_ptr<DataFlowSet> clone() = 0;
00046 
00047   virtual void dump(std::ostream &os) = 0;
00048   virtual void dump(std::ostream &os, OA_ptr<IRHandlesIRInterface>) = 0;
00049 };
00050 
00051   } // end of DataFlow namespace
00052 } // end of OA namespace
00053 
00054 #endif

Generated on Sat Oct 31 05:21:20 2009 for OpenAnalysis by  doxygen 1.6.1