Main Page   Namespace List   Class Hierarchy   Compound List   File List   Compound Members   File Members  

BASfile.h

Go to the documentation of this file.
00001 // BASfile.h: BAS Partitur format file model.
00002 // Haejoong Lee, Xiaoyi Ma, Steven Bird
00003 // Copyright (C) 2001 Linguistic Data Consortium, U Penn.
00004 // Web: http://www.ldc.upenn.edu/; Email: ldc@ldc.upenn.edu
00005 // For license information, see the file `LICENSE' included
00006 // with the distribution.
00007 
00008 
00009 #ifndef _BASFILE_H_
00010 #define _BASFILE_H_
00011 
00012 #include <string>
00013 #include <fstream>
00014 #include "Record.h"
00015 #include "RE.h"
00016 #include <map>
00017 
00018 
00020 class BASfile : public Record
00021 {
00022 private:
00023   RE* tierRE[6];
00024   RE* tierREsub;
00025   map<string,int> classMap;
00026 
00027   bool tier_process1(const string& tier);
00028   bool tier_process4(const string& tier);
00029   bool tier_process5(const string& tier);
00030   bool (BASfile::*tier_process[6])(const string&);
00031 
00032   void
00033   init();
00034 
00035   virtual void
00036   preprocess();
00037 
00038   virtual void
00039   read_entry();
00040 
00041 public:
00042   BASfile();
00043   BASfile(const string& filename);
00044   ~BASfile();
00045 
00047   bool read_record();
00048 
00050   string get_type();
00052   string get_time();
00054   string get_dur();
00056   string get_ref();
00058   string get_label();
00059 };
00060 
00061 #endif

Generated at Wed Jul 3 14:54:02 2002 for Annotation Graph API by doxygen1.2.7 written by Dimitri van Heesch, © 1997-2001