Hello again! OK, I got it, it's working flawlessly:
SV* getNext(SV* obj) { SWFDisplayItem item = SvITEM(obj)->next; if(item == NULL) return &PL_sv_undef; SV* obj_ref = newSViv(0); SV* itemobj = newSVrv(obj_ref, "SWFMing::DisplayItem"); sv_setiv(itemobj, (IV)item); SvREADONLY_on(itemobj); return obj_ref; } Hope this is the right way... Apparently, as a Perl API newbee I'm still dealing with making the right connections between the SVs , the C Library, and the Perl Classes. --- Ogla Sungutay <[EMAIL PROTECTED]> wrote: > Hello all!! > > My first message to the list! > Folks, how can I access a C linked list (of an > external library) from Perl? > > Let me illustrate what I'm trying to do: > > // from Ming-C SWF Output Library > // ming.sourceforge.net > > struct SWFDisplayList_s > { > > SWFDisplayItem head; > SWFDisplayItem tail; > byte isSprite; > int depth; > }; > struct SWFDisplayItem_s > { > SWFDisplayItem next; > > int flags; > int depth; > SWFCharacter character; > SWFPosition position; > SWFMatrix matrix; > > }; > > SWF* type definitions are all pointers to structs. > Then, in Perl I should loop through the > SWFDisplayList! > > This problem is a very generic one I presume; am I > missing something in the C-Cookbook?? > > Any help is appreciated. > > > Ogla > > > > > > > > > > > > > > > > __________________________________ > Do you Yahoo!? > SBC Yahoo! - Internet access at a great low price. > http://promo.yahoo.com/sbc/ __________________________________ Do you Yahoo!? SBC Yahoo! - Internet access at a great low price. http://promo.yahoo.com/sbc/