public static bool ToMelodySpeakerDriveOneTimeSoundParameter(byte[] source, int volume, out DriveOneTimeSoundParameter parameter)
        {
            parameter = new DriveOneTimeSoundParameter(source);
            parameter.SetVolume(volume);

            return(true);
        }
Пример #2
0
        public async void ActionDriveOneTimeSound(string objectIdentifier, string source, int volume, IReactPromise <JSValue.Void> promise)
        {
            try
            {
                if (!GetObject(objectIdentifier, out MelodySpeakerBuilder nativeObject))
                {
                    promise.Reject(new ReactError());
                    return;
                }

                DriveOneTimeSoundParameter parameter = await StarIO10ValueConverter.ToMelodySpeakerDriveOneTimeSoundParameterAsync(source, volume);

                nativeObject.ActionDriveOneTimeSound(parameter);

                promise.Resolve();
            }
            catch (Exception)
            {
                StarIO10Exception exception = new StarIO10ArgumentException("Invalid source.");
                StarIO10ErrorWrapper.SetObject(exception, out string exceptionIdentifier);
                promise.Reject(new ReactError()
                {
                    Code = exceptionIdentifier, Exception = exception
                });
            }
        }
        public static async Task <DriveOneTimeSoundParameter> ToMelodySpeakerDriveOneTimeSoundParameterAsync(string source, int volume)
        {
            byte[] sourceBytes = await SourceToBytesAsync(source);

            DriveOneTimeSoundParameter parameter = new DriveOneTimeSoundParameter(sourceBytes);

            parameter.SetVolume(volume);

            return(parameter);
        }