namespace ChadSoft.Utils.Pingy { public delegate void PingerCallback(IPinger pinger, PingResponse response); /// /// Represents an object/location that can be pinged. /// public interface IPinger { /// /// Gets the path to be pung. /// /// The path to be pung. string Path { get; } /// /// Pings the specified . /// /// /// This is a synchronous ping. To call a ping asynchronously, use the /// Ping(PingerCallback callback) overload. /// /// The of the ping request. PingResponse Ping(); /// /// Starts an asynchronous ping of the specified . /// /// /// The callback function to be called when the ping has completed. /// void Ping(PingerCallback callback); } }