/*
* Copyright (c) 2016 Samsung Electronics Co., Ltd All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the License);
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an AS IS BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
using System;
using System.Diagnostics;
using Native = Interop.MediaControllerClient;
namespace Tizen.Multimedia.Remoting
{
///
/// Provides data for the event.
///
public class PlaybackStateUpdatedEventArgs : EventArgs
{
///
/// Initializes a new instance of the class.
///
/// The playback state.
/// The playback position in milliseconds.
/// is invalid.
/// is less than zero.
public PlaybackStateUpdatedEventArgs(MediaControlPlaybackState state, long position)
{
ValidationUtil.ValidateEnum(typeof(MediaControlPlaybackState), state, nameof(state));
if (position < 0)
{
throw new ArgumentOutOfRangeException(nameof(position), position, "position can't be less than zero.");
}
State = state;
Position = position;
}
///
/// Gets the playback state.
///
public MediaControlPlaybackState State { get; }
///
/// Gets the playback position in milliseconds.
///
public long Position { get; }
}
}