converter referência a representação de ponteiro em C ++

Existe uma maneira de "converter" uma referência ao ponteiro em c + +? No exemplo abaixo,func já definiu protótipo e não posso mudar isso, masfunc é minha API e gostaria de passar os dois parâmetros, ou um (e o segundo definido como NULL) ou nenhum (ambos definidos como NULL):

void func2(some1 *p1, some2 *p2);

func(some1& obj, some2& obj2)
{
   func2(..);
}