/**
  * Copy and cleanup functions.
  **/
 internal override DDS.ReturnCode CopyIn(DomainParticipantQos from, ref v_participantQos to)
 {
     DDS.ReturnCode result;
     if (from != null)
     {
         to._parent      = new v_qos();
         to._parent.kind = V_QOSKIND.V_PARTICIPANT_QOS;
         result          = UserDataQosPolicyMarshaler.CopyIn(from.UserData, ref to.userData);
         if (result == DDS.ReturnCode.Ok)
         {
             result = EntityFactoryQosPolicyMarshaler.CopyIn(
                 from.EntityFactory, ref to.entityFactory);
         }
         if (result == DDS.ReturnCode.Ok)
         {
             result = SchedulingQosPolicyMarshaler.CopyIn(
                 from.WatchdogScheduling, ref to.watchdogScheduling);
         }
     }
     else
     {
         result = DDS.ReturnCode.BadParameter;
         ReportStack.Report(result, "DomainParticipantQos attribute may not be a null pointer.");
     }
     return(result);
 }
 internal override void CleanupIn(ref v_publisherQos to)
 {
     PresentationQosPolicyMarshaler.CleanupIn(ref to.presentation);
     PartitionQosPolicyMarshaler.CleanupIn(ref to.partition.v);
     GroupDataQosPolicyMarshaler.CleanupIn(ref to.groupData);
     EntityFactoryQosPolicyMarshaler.CleanupIn(ref to.entityFactory);
 }
 /**
  * Copy and cleanup functions.
  **/
 internal override DDS.ReturnCode CopyIn(PublisherQos from, ref v_publisherQos to)
 {
     DDS.ReturnCode result;
     if (from != null)
     {
         to._parent      = new v_qos();
         to._parent.kind = V_QOSKIND.V_PUBLISHER_QOS;
         result          = PresentationQosPolicyMarshaler.CopyIn(
             from.Presentation, ref to.presentation);
         if (result == DDS.ReturnCode.Ok)
         {
             result = PartitionQosPolicyMarshaler.CopyIn(
                 from.Partition, ref to.partition.v);
         }
         if (result == DDS.ReturnCode.Ok)
         {
             result = GroupDataQosPolicyMarshaler.CopyIn(
                 from.GroupData, ref to.groupData);
         }
         if (result == DDS.ReturnCode.Ok)
         {
             result = EntityFactoryQosPolicyMarshaler.CopyIn(
                 from.EntityFactory, ref to.entityFactory);
         }
     }
     else
     {
         result = DDS.ReturnCode.BadParameter;
         ReportStack.Report(result, "PublisherQos attribute may not be a null pointer.");
     }
     return(result);
 }
 internal override void CopyOut(v_publisherQos from, ref PublisherQos to)
 {
     if (to == null)
     {
         to = new PublisherQos();
     }
     PresentationQosPolicyMarshaler.CopyOut(from.presentation, ref to.Presentation);
     PartitionQosPolicyMarshaler.CopyOut(from.partition.v, ref to.Partition);
     GroupDataQosPolicyMarshaler.CopyOut(from.groupData, ref to.GroupData);
     EntityFactoryQosPolicyMarshaler.CopyOut(from.entityFactory, ref to.EntityFactory);
 }
 internal override void CopyOut(v_subscriberQos from, ref SubscriberQos to)
 {
     if (to == null)
     {
         to = new SubscriberQos();
     }
     PresentationQosPolicyMarshaler.CopyOut(from.presentation, ref to.Presentation);
     PartitionQosPolicyMarshaler.CopyOut(from.partition.v, ref to.Partition);
     GroupDataQosPolicyMarshaler.CopyOut(from.groupData, ref to.GroupData);
     EntityFactoryQosPolicyMarshaler.CopyOut(from.entityFactory, ref to.EntityFactory);
     ShareQosPolicyMarshaler.CopyOut(from.share, ref to.Share);
 }
 internal override void CopyOut(v_participantQos from, ref DomainParticipantQos to)
 {
     UserDataQosPolicyMarshaler.CopyOut(from.userData, ref to.UserData);
     EntityFactoryQosPolicyMarshaler.CopyOut(from.entityFactory, ref to.EntityFactory);
     SchedulingQosPolicyMarshaler.CopyOut(from.watchdogScheduling, ref to.WatchdogScheduling);
 }
 internal override void CleanupIn(ref v_participantQos to)
 {
     UserDataQosPolicyMarshaler.CleanupIn(ref to.userData);
     EntityFactoryQosPolicyMarshaler.CleanupIn(ref to.entityFactory);
     SchedulingQosPolicyMarshaler.CleanupIn(ref to.watchdogScheduling);
 }