public override int TightMarshal1(OpenWireFormat wireFormat, Object o, BooleanStream bs)
{
ProducerInfo info = (ProducerInfo)o;
int rc = base.TightMarshal1(wireFormat, o, bs);
rc += TightMarshalCachedObject1(wireFormat, (DataStructure)info.ProducerId, bs);
rc += TightMarshalCachedObject1(wireFormat, (DataStructure)info.Destination, bs);
rc += TightMarshalObjectArray1(wireFormat, info.BrokerPath, bs);
bs.WriteBoolean(info.DispatchAsync);
return rc + 4;
}