I have made this function:
void AG_Table_Open(unsigned long APtr_AGHead, char* AID_AGHead, EDB_Rec A_Rec){
EDB dbagidx(&AG_Table_EEPROM_Writer, &AG_Table_EEPROM_Reader);
int memPos = APtr_AGHead+sizeof(AID_AGHead)-1;
if (EEPROM.read(APtr_AGHead + 0) == AID_AGHead[0] &&
EEPROM.read(APtr_AGHead + 1) == AID_AGHead[1] &&
EEPROM.read(APtr_AGHead + 2) == AID_AGHead[2]) {
DBGL3_PRN("AG_EDBIndex DB exists... (mem loc: ");
DBGL3_PRN(memPos, DEC);
DBGL3_PRNLN(")");
if (dbagidx.open(memPos)==EDB_OK){
DBGL3_PRN("AG_EDBIndex DB opened... (RecCount: ");
DBGL3_PRN(dbagidx.count(), DEC);
DBGL3_PRNLN(")");
}
else {
DBGL3_PRNLN("AG_EDBIndex DB could not opened...!");
// db.create(200, TABLE_SIZE, sizeof(logUpPeriod));
// db.create(300, 100, sizeof(logUpPeriod));
// DBGL3_PRNLN("DB created...");
}
}
else {
for (unsigned int t=0; t<sizeof(AID_AGHead); t++)
EEPROM.write(APtr_AGHead + t, *((char*)&AID_AGHead + t));
DBGL3_PRNLN("AG_EDBIndex DB header ID saved...!");
dbagidx.create(memPos, 120, sizeof(A_Rec));
}
}
and I am trying to call it:
struct AG_EDBIndexRec {
byte id;
}
stctAGEDBIndexRec;
...
AG_Table_Open(AG_EDBIndex_START, AG_EDBIndex_ID, EDB_Rec stctAGEDBIndexRec);
The compiler reports:
_AG_Template_Prg.cpp: In function ‘void setup()’:
_AG_Template_Prg:113: error: expected primary-expression before ‘stctAGEDBIndexRec’
Why I get this compiler error? I am very confused!
Actually I want to pass the record structure in the function in order to be used…
Thank you