예제 #1
0
        internal DomainParticipantFactoryQosWrapper ToNative()
        {
            var data = new DomainParticipantFactoryQosWrapper
            {
                EntityFactory = EntityFactory,
            };

            return(data);
        }
예제 #2
0
        /// <summary>
        /// Gets the <see cref="DomainParticipantFactory" /> QoS policies.
        /// </summary>
        /// <param name="qos">The <see cref="DomainParticipantFactoryQos" /> to be filled up.</param>
        /// <returns>The <see cref="ReturnCode" /> that indicates the operation result.</returns>
        public ReturnCode GetQos(DomainParticipantFactoryQos qos)
        {
            if (qos == null)
            {
                return(ReturnCode.BadParameter);
            }

            DomainParticipantFactoryQosWrapper qosWrapper = default;
            var ret = UnsafeNativeMethods.GetQos(_native, ref qosWrapper);

            if (ret == ReturnCode.Ok)
            {
                qos.FromNative(qosWrapper);
            }

            return(ret);
        }
예제 #3
0
 internal void FromNative(DomainParticipantFactoryQosWrapper wrapper)
 {
     EntityFactory = wrapper.EntityFactory;
 }
예제 #4
0
 public static extern ReturnCode SetQos(IntPtr dpf, [MarshalAs(UnmanagedType.Struct), In] DomainParticipantFactoryQosWrapper qos);