// Copyright (C) Stichting Deltares and State of the Netherlands 2026. All rights reserved.
//
// This file is part of Riskeer.
//
// Riskeer is free software: you can redistribute it and/or modify
// it under the terms of the GNU Lesser General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Lesser General Public License for more details.
//
// You should have received a copy of the GNU Lesser General Public License
// along with this program. If not, see .
//
// All names, logos, and references to "Deltares" are registered trademarks of
// Stichting Deltares and remain full property of Stichting Deltares at all times.
// All rights reserved.
using System;
using System.Collections.Generic;
using BruTile;
namespace Core.Components.BruTile.IO
{
///
/// Event arguments for denoting the event that a new tile has been received.
///
///
/// Original source: https://github.com/FObermaier/DotSpatial.Plugins/blob/master/DotSpatial.Plugins.BruTileLayer/TileReceivedEventArgs.cs
/// Original license: http://www.apache.org/licenses/LICENSE-2.0.html
///
public class TileReceivedEventArgs : EventArgs
{
///
/// Creates an instance of .
///
/// The received tile info object.
/// The tile data.
/// Thrown when any input argument is null.
public TileReceivedEventArgs(TileInfo tileInfo, byte[] tile)
{
if (tileInfo == null)
{
throw new ArgumentNullException(nameof(tileInfo));
}
if (tile == null)
{
throw new ArgumentNullException(nameof(tile));
}
TileInfo = tileInfo;
Tile = tile;
}
///
/// Gets the tile information of the received tile.
///
public TileInfo TileInfo { get; }
///
/// Gets the actual tile data.
///
public IEnumerable Tile { get; }
}
}