N_STD::ostream &operator << (N_STD::ostream &out, FlashTagDefineBitsJPEG1 &data) { out << FlashTagHeader(6, 2+data.len); WRITE_UWORD(data.GetID()); for(UDWORD d=0; d < data.len; d++) { out.put((unsigned char)data.data[d]); } return out; }
N_STD::ostream& operator<<(N_STD::ostream& out, FlashTagPlaceObject &data) { N_STD::ostrstream st; WRITE_UWORD2(data.characterID,st); WRITE_UWORD2(data.depth,st); st << data.matrix; if (data.hascfx) { st << data.cfx; } out << FlashTagHeader(4, st.pcount()); out.write(st.rdbuf()->str(), st.pcount()); return out; }
N_STD::ostream &operator << (N_STD::ostream &out, FlashTagDefineFontInfo &data) { out << FlashTagHeader(13, (UDWORD)strlen(data.str)+2+2+data.codes.size()*((data.flags & 1) ? 2:1)); WRITE_UWORD(data.FontID); out.put((unsigned char)strlen(data.str)); out << data.str; out.put((unsigned char)data.flags); if((data.flags & 1) == 1) { for(N_STD::vector<UWORD>::iterator i = data.codes.begin(); i != data.codes.end(); i++) { WRITE_UWORD(*i); } } else { for(N_STD::vector<UWORD>::iterator i = data.codes.begin(); i != data.codes.end(); i++) { out.put((char)*i); } } return out; }
N_STD::ostream &operator << (N_STD::ostream &out, FlashTagDefineBitsPtr &data) { out << FlashTagHeader(1023, sizeof(UDWORD)); WRITE_UDWORD(data.ref) return out; }