public int TransitionIndex(QDateTime dt, ref int secondIndex, ref bool validTime)
{
StackItem[] stack = new StackItem[4];
#if DEBUG
stack[1].s_class = (IntPtr) DebugGCHandle.Alloc(dt);
#else
stack[1].s_class = (IntPtr) GCHandle.Alloc(dt);
#endif
stack[2].s_int = secondIndex;
stack[3].s_bool = validTime;
interceptor.Invoke("transitionIndex#$$", "transitionIndex(const QDateTime&, int*, bool*) const", stack);
#if DEBUG
DebugGCHandle.Free((GCHandle) stack[1].s_class);
#else
((GCHandle) stack[1].s_class).Free();
#endif
secondIndex = stack[2].s_int;
validTime = stack[3].s_bool;
return stack[0].s_int;
}