text: #ifndef XTREME_IWF_MANUAL_PARSER_H_
  #define XTREME_IWF_MANUAL_PARSER_H_
  
  /**
   * Copyright (2012) JSU Uniphase.  All rights reserved.
   *
   * Author: LIM Fung Chai
   */
  
  #include "xtreme/iwf/data_sink.h"
  
  namespace xtreme {
  namespace iwf {
  
  class iwf;
  
  /**
   * A class for decoding a packet.
   *
   * The ManualParserDataSink decodes the payload of a FrameEvent into the link-layer and
   * tranport-layer data structures. 
   */
  class ManualParserDataSink : public IDataSink {
    public:
      explicit ManualParserDataSink(iwf *manager);
      virtual ~ManualParserDataSink();
  
      virtual void process(const Event* event);
  
    private:
      class Impl;
      Impl* impl_;
  
      class Telemetry;
  };  // class ManualParsingDataSink
  }   // namespace iwf
  }   // namespace xtreme
  
  #endif  // XTREME_IWF_MANUAL_PARSER_H_
  