public void Set(SessionModificationSetHostAddressOptions other)
 {
     if (other != null)
     {
         m_ApiVersion = SessionModification.SessionmodificationSethostaddressApiLatest;
         HostAddress  = other.HostAddress;
     }
 }
        /// <summary>
        /// Set the host address associated with this session
        /// Setting this is optional, if the value is not set the SDK will fill the value in from the service.
        /// It is useful to set if other addressing mechanisms are desired or if LAN addresses are preferred during development
        ///
        /// @note No validation of this value occurs to allow for flexibility in addressing methods
        /// </summary>
        /// <param name="options">Options associated with the host address of the session</param>
        /// <returns>
        /// <see cref="Result.Success" /> if setting this parameter was successful
        /// <see cref="Result.InvalidParameters" /> if the host ID is an empty string
        /// <see cref="Result.IncompatibleVersion" /> if the API version passed in is incorrect
        /// </returns>
        public Result SetHostAddress(SessionModificationSetHostAddressOptions options)
        {
            System.IntPtr optionsAddress = new System.IntPtr();
            Helper.TryMarshalSet <SessionModificationSetHostAddressOptionsInternal, SessionModificationSetHostAddressOptions>(ref optionsAddress, options);

            var funcResult = EOS_SessionModification_SetHostAddress(InnerHandle, optionsAddress);

            Helper.TryMarshalDispose(ref optionsAddress);

            return(funcResult);
        }