A little background.
I am using a mega Processor with a Rugged Circuits external memory board.
Currently, I am storing nine(9) structs containing four members each in the memory board. Since the structs are stored in the memory board, I have to tell the processor where to put them and where to go and get the data. I currently have all of that working fine.
The Structs are setup as follows:
struct {
byte DataArray1[501][62];
float MapLat;
float MapLong;
String FileNam;
}*PtrDataArray_2d_1 = 8704, *PtrDataArray_2d_2 = 8704, //Assigns array to memory location
*PtrDataArray_2d_3 = 8704, *PtrDataArray_2d_4 = 8704, *PtrDataArray_2d_5 = 8704,
*PtrDataArray_2d_6 = 8704, *PtrDataArray_2d_7 = 8704;
I am currently accessing the Structs as follows:
// Write to a member
PtrDataArray_2d_6->DataArray1[y][x] = Value3;
// Read from a member
Value3 = PtrDataArray_2d_6->DataArray1[y][x] ;
This of course is being done within functions and works fine as long as everything is local and all of the variables involved are globally visible. None of the variables are currently passed to or from the functions.
The program is getting large and it is time to start moving finished sections of code to .cpp files. In order for me to do that, all of the variables used in the functions will have to be passed to the functions and of course declared in the .h file.
I have spent all day looking in various places trying to get this to work but am not getting anywhere.
I have tried all of the following and so far I cannot get anything to compile.
void Convert(struct *PtrDataArray_2d_6)
void Convert(struct (*PtrDataArray_2d_6))
void Convert(struct PtrDataArray_2d_6)
void Convert(struct &PtrDataArray_2d_6)
Options 1 and 2 seem to me to be the best guess but no luck. The compiler wants a token before "*".
Option 4 was a shot in the dark and the compiler again complained about a token problem.
I know there has got to be a way to get this done. Any ideas?
Thanks for your assistance in advance