00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 #ifndef COH_ABSTRACT_PROCESSOR_HPP
00017 #define COH_ABSTRACT_PROCESSOR_HPP
00018 
00019 #include "coherence/lang.ns"
00020 
00021 #include "coherence/util/Describable.hpp"
00022 #include "coherence/util/InvocableMap.hpp"
00023 #include "coherence/util/Map.hpp"
00024 #include "coherence/util/Set.hpp"
00025 
00026 COH_OPEN_NAMESPACE3(coherence,util, processor)
00027 
00028 using coherence::util::InvocableMap;
00029 using coherence::util::Map;
00030 using coherence::util::Set;
00031 
00032 
00033 
00034 
00035 
00036 
00037 
00038 
00039 class COH_EXPORT AbstractProcessor
00040     : public abstract_spec<AbstractProcessor,
00041         extends<Describable>,
00042         implements<InvocableMap::EntryProcessor> >
00043     {
00044     
00045 
00046     public:
00047 
00048 
00049 
00050         virtual Map::View processAll(Set::View vSetEntries) const;
00051     };
00052 
00053 COH_CLOSE_NAMESPACE3
00054 
00055 #endif // COH_ABSTRACT_PROCESSOR_HPP