- suppress prog_mode to the constructor and set mode to NONE_MODE
- parse file extension
- program, idCode and reset are now virtual
This commit is contained in:
Gwenhael Goavec-Merou 2019-09-28 15:26:47 +02:00
parent 52889506a5
commit 66fbbce59a
2 changed files with 12 additions and 14 deletions

View File

@ -5,21 +5,17 @@
using namespace std;
Device::Device(FtdiJtag *jtag, enum prog_mode mode, string filename):
_filename(filename), _mode(mode)
Device::Device(FtdiJtag *jtag, string filename):
_filename(filename),
_file_extension(filename.substr(filename.find_last_of(".") +1)),
_mode(NONE_MODE)
{
_jtag = jtag;
cout << _file_extension << endl;
}
int Device::idCode()
{
return 0;
}
Device::~Device() {}
void Device::program()
{
throw std::runtime_error("Not implemented");
}
void Device::reset()
{
throw std::runtime_error("Not implemented");

View File

@ -17,13 +17,15 @@ class Device {
SPI_MODE,
MEM_MODE
};
Device(FtdiJtag *jtag, enum prog_mode, std::string filename);
virtual void program();
int idCode();
void reset();
Device(FtdiJtag *jtag, std::string filename);
virtual ~Device();
virtual void program(unsigned int offset = 0) = 0;
virtual int idCode() = 0;
virtual void reset();
protected:
FtdiJtag *_jtag;
std::string _filename;
std::string _file_extension;
enum prog_mode _mode;
};