annotate chordtools/checklabs.m @ 1:8973548174c1 tip

adding tools to repo
author christopherh
date Mon, 06 May 2013 14:43:47 +0100
parents
children
rev   line source
christopherh@1 1 %
christopherh@1 2 % CHECKLABS check chord syntax in all lab files in a directory
christopherh@1 3 %
christopherh@1 4 % success = checklabs(directory, logfile)
christopherh@1 5 %
christopherh@1 6 % Check the syntax of chord symbols in every lab file in the target
christopherh@1 7 % directory. A log of syntax errors is created in the text file logfile
christopherh@1 8 %
christopherh@1 9 % Success = 1 if all symbols have correct syntax, 0 otherwise.
christopherh@1 10 %
christopherh@1 11 % returns: success (boolean)
christopherh@1 12 %
christopherh@1 13 %
christopherh@1 14 % Author: Christopher Harte, March 2009
christopherh@1 15 %
christopherh@1 16 % Copyright: Centre for Digital Music, Queen Mary University of London 2005
christopherh@1 17 %
christopherh@1 18 % This file is part of the C4DM Chord Toolkit V2.0
christopherh@1 19 %
christopherh@1 20 % The C4DM Chord Toolkit is free software; you can redistribute it and/or
christopherh@1 21 % modify it under the terms of the GNU General Public License as published
christopherh@1 22 % by the Free Software Foundation; either version 2 of the License, or
christopherh@1 23 % (at your option) any later version.
christopherh@1 24 %
christopherh@1 25 % The C4DM Chord Toolkit is distributed in the hope that it will be useful,
christopherh@1 26 % but WITHOUT ANY WARRANTY; without even the implied warranty of
christopherh@1 27 % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
christopherh@1 28 % GNU General Public License for more details.
christopherh@1 29 %
christopherh@1 30 % You should have received a copy of the GNU General Public License
christopherh@1 31 % along with the C4DM Toolkit; if not, write to the Free Software
christopherh@1 32 % Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
christopherh@1 33
christopherh@1 34 %
christopherh@1 35 function [success] = checklabs(directory, logfile)
christopherh@1 36
christopherh@1 37 files = dir([directory '/*.lab']);
christopherh@1 38
christopherh@1 39 ilength = length(files);
christopherh@1 40
christopherh@1 41 success = 1;
christopherh@1 42
christopherh@1 43 fid = fopen(logfile, 'a');
christopherh@1 44
christopherh@1 45 for index = 1:ilength
christopherh@1 46
christopherh@1 47 ok = checklabsyntax([directory '/' files(index).name],fid);
christopherh@1 48
christopherh@1 49 success = success && ok;
christopherh@1 50
christopherh@1 51 end
christopherh@1 52
christopherh@1 53 fclose(fid);
christopherh@1 54