More HACMan stuff again
Dependencies: FatFileSystem SDFileSystem mbed
txtFile.h@0:ddc821040077, 2015-06-11 (annotated)
- Committer:
- TBSliver
- Date:
- Thu Jun 11 13:50:10 2015 +0000
- Revision:
- 0:ddc821040077
Initial no idea whats here commit
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
TBSliver | 0:ddc821040077 | 1 | /* |
TBSliver | 0:ddc821040077 | 2 | txtFile.h |
TBSliver | 0:ddc821040077 | 3 | |
TBSliver | 0:ddc821040077 | 4 | Header file containing outline for all methods dealing |
TBSliver | 0:ddc821040077 | 5 | with txt file data, editing, reading, searching etc. |
TBSliver | 0:ddc821040077 | 6 | |
TBSliver | 0:ddc821040077 | 7 | */ |
TBSliver | 0:ddc821040077 | 8 | |
TBSliver | 0:ddc821040077 | 9 | #ifndef TXTFILE_H |
TBSliver | 0:ddc821040077 | 10 | #define TXTFILE_H |
TBSliver | 0:ddc821040077 | 11 | |
TBSliver | 0:ddc821040077 | 12 | #include "mbed.h" |
TBSliver | 0:ddc821040077 | 13 | #include "SDFileSystem.h" |
TBSliver | 0:ddc821040077 | 14 | #include <string> |
TBSliver | 0:ddc821040077 | 15 | |
TBSliver | 0:ddc821040077 | 16 | class TxtFile { |
TBSliver | 0:ddc821040077 | 17 | |
TBSliver | 0:ddc821040077 | 18 | public: |
TBSliver | 0:ddc821040077 | 19 | //constructor and deconstructor |
TBSliver | 0:ddc821040077 | 20 | TxtFile(char fileAddr[], char *readWrite, bool doParseFile); |
TBSliver | 0:ddc821040077 | 21 | ~TxtFile(); |
TBSliver | 0:ddc821040077 | 22 | |
TBSliver | 0:ddc821040077 | 23 | //returns whether a file is open or not |
TBSliver | 0:ddc821040077 | 24 | bool isOpen(); //done |
TBSliver | 0:ddc821040077 | 25 | |
TBSliver | 0:ddc821040077 | 26 | //closes the file and returns true if successful |
TBSliver | 0:ddc821040077 | 27 | bool closeFile(); //done |
TBSliver | 0:ddc821040077 | 28 | |
TBSliver | 0:ddc821040077 | 29 | //returns if the file is parsed or not |
TBSliver | 0:ddc821040077 | 30 | bool isParsed(); //done |
TBSliver | 0:ddc821040077 | 31 | |
TBSliver | 0:ddc821040077 | 32 | //counts the number of lines and sets the line start locations |
TBSliver | 0:ddc821040077 | 33 | void parseFile(); //needs testing |
TBSliver | 0:ddc821040077 | 34 | |
TBSliver | 0:ddc821040077 | 35 | //returns the number of lines |
TBSliver | 0:ddc821040077 | 36 | int lineCount(); |
TBSliver | 0:ddc821040077 | 37 | |
TBSliver | 0:ddc821040077 | 38 | //seeks to the position seekLoc |
TBSliver | 0:ddc821040077 | 39 | void seekPos(int seekLoc); //done |
TBSliver | 0:ddc821040077 | 40 | |
TBSliver | 0:ddc821040077 | 41 | //returns currentFilePos |
TBSliver | 0:ddc821040077 | 42 | int getPos(); //done |
TBSliver | 0:ddc821040077 | 43 | |
TBSliver | 0:ddc821040077 | 44 | //seeks to the start of the current line |
TBSliver | 0:ddc821040077 | 45 | int seekLineStart(); |
TBSliver | 0:ddc821040077 | 46 | |
TBSliver | 0:ddc821040077 | 47 | //seeks to the end of the current line |
TBSliver | 0:ddc821040077 | 48 | int seekLineEnd(); |
TBSliver | 0:ddc821040077 | 49 | |
TBSliver | 0:ddc821040077 | 50 | //seeks to a specific line start |
TBSliver | 0:ddc821040077 | 51 | void seekLine(int line); |
TBSliver | 0:ddc821040077 | 52 | |
TBSliver | 0:ddc821040077 | 53 | //returns which line pointer is on |
TBSliver | 0:ddc821040077 | 54 | int getLine(); |
TBSliver | 0:ddc821040077 | 55 | |
TBSliver | 0:ddc821040077 | 56 | //returns the length of the current line |
TBSliver | 0:ddc821040077 | 57 | int lineLength(); //done |
TBSliver | 0:ddc821040077 | 58 | |
TBSliver | 0:ddc821040077 | 59 | //converts a csv in a file to an array - will only read off one line |
TBSliver | 0:ddc821040077 | 60 | void csvToIntArray(int line, int arrayStart, int arrayEnd, int *array); |
TBSliver | 0:ddc821040077 | 61 | |
TBSliver | 0:ddc821040077 | 62 | //reads a line |
TBSliver | 0:ddc821040077 | 63 | void readLine(int line); |
TBSliver | 0:ddc821040077 | 64 | |
TBSliver | 0:ddc821040077 | 65 | |
TBSliver | 0:ddc821040077 | 66 | private: |
TBSliver | 0:ddc821040077 | 67 | |
TBSliver | 0:ddc821040077 | 68 | FILE *fp; |
TBSliver | 0:ddc821040077 | 69 | |
TBSliver | 0:ddc821040077 | 70 | bool isFileOpen; //value representing if the file is open or not |
TBSliver | 0:ddc821040077 | 71 | bool isFileParsed; //representing if the file has been parsed or not |
TBSliver | 0:ddc821040077 | 72 | |
TBSliver | 0:ddc821040077 | 73 | int noLines; //number of lines in the file, with a -1 offset (1 line = 0, 2 lines = 1 etc) |
TBSliver | 0:ddc821040077 | 74 | int fileLineStart[]; //starting seek location for every line in the file |
TBSliver | 0:ddc821040077 | 75 | int fileLineLength[]; //length of each line |
TBSliver | 0:ddc821040077 | 76 | int currentFilePos; //current position in the file relative to the start |
TBSliver | 0:ddc821040077 | 77 | }; |
TBSliver | 0:ddc821040077 | 78 | |
TBSliver | 0:ddc821040077 | 79 | #endif |