I have problem with passing struct object from specified namespace as parameter in constructor of class. I have my struct:
settings.h
namespace settings
{
typedef struct
{
volatile uint8_t ddr;
volatile uint8_t port;
uint8_t pin1;
uint8_t pin2;
uint8_t timerChannel;
uint8_t showChannel;
uint8_t sensePin;
uint16_t resistorValue;
uint16_t maxCurrent;
}TServoSettings;
}
settings.cpp
#include "settings.h"
namespace settings
{
TServoSettings servo1 =
{
//Here are some values from preprocessor definies
SERVO1_DDR,
SERVO1_PORT,
SERVO1_PIN1,
SERVO1_PIN2,
SERVO1_TIMER_CHANNEL,
SERVO1_SHOW_CHANNEL,
SERVO1_SENSE,
SERVO1_R,
SERVO1_MAXCURR
};
}
And then I have my example class:
myclass.h
class CMyclass
{
public:
CMyclass(TServoSettings * ptr); //<------HOW CAN I PASS HERE CREATED BEFORE OBJECT OF STRUCTURE FROM NAMESPACE AS A PARAMETER - POINTER??????
~CMyclass();
};
myclass.cpp
#include "myclass.h"
CMyclass::CMyclass(TServoSettings * ptr) //HOW PASS ??
{
//Do some things with this pointer
}
CMyclass::CMyclass()
{
//Hothing to do here :(
}
main.cpp
#include "settings.h"
#include "myclass.h"
int main()
{
CMyclass someobject(&settings::servo1); //AND HOW PASS HERE ?????
}
I would like to be glad if someone can help me with this.