How to I call a C++ function from my C# class with the following signature?

int MyFunc(MyStructure **)

typedef struct MyStructure
  unsigned char ID[16];
  unsigned int* Path;
  AnotherStructure *Format;

typedef struct AnotherStructure
  short Owner;
  short Type;

I attempted the following in C#...

public struct MyStruture
  public fixed byte ID[16];
  uint* Path;
  IntPtr Format;

internal static extern int MyFunc(IntPtr pStructure)

MyStructure[] Arr=new MyStructure[16];
int iSize=Marshal.Sizeof(typeof(MyStructure))*16;

IntPtr pStructure=Marshal.AllocHGlobal(iSize);
Marshal.StructureToPtr(Arr, pStructure, false);

int iRes=MyFunc(IntPtr);


I get an error "The specified structure must be blittable or have layout information.
Parameter name: structure"

Any suggestion?