// Copyright © 2006-2010 Travis Robinson. All rights reserved.
//
// website: http://sourceforge.net/projects/libusbdotnet
// e-mail: libusbdotnet@gmail.com
//
// This program is free software; you can redistribute it and/or modify it
// under the terms of the GNU General Public License as published by the
// Free Software Foundation; either version 2 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 General Public License
// for more details.
//
// You should have received a copy of the GNU General Public License along
// with this program; if not, write to the Free Software Foundation, Inc.,
// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. or
// visit www.gnu.org.
//
//
using MonoLibUsb;
namespace LibUsbDotNet.Main
{
///
/// General area in which the failure occurred. See the class.
///
public enum ErrorCode
{
///
/// No error. (None, Success, and Ok)
///
None = 0,
///
/// No error.
///
Success = 0,
///
/// No error.
///
Ok = 0,
///
/// The USB device has errors in its Configuration descriptor.
///
InvalidConfig = -16384,
///
/// A synchronous device IO operation failed.
///
IoSyncFailed,
///
/// A request for a string failed.
///
GetString,
///
/// A specified endpoint is invalid for the operation.
///
InvalidEndpoint,
///
/// A request to cancel IO operation failed.
///
AbortEndpoint,
///
/// A call to the core Win32 API DeviceIOControl failed.
///
DeviceIoControl,
///
/// A call to the core Win32 API GetOverlappedResult failed.
///
GetOverlappedResult,
///
/// An Endpoints receive thread was dangerously terminated.
///
ReceiveThreadTerminated,
///
/// A write operation failed.
///
WriteFailed,
///
/// A read operation failed.
///
ReadFailed,
///
/// An endpoint 0 IO control message failed.
///
IoControlMessage,
///
/// The action of cancelling the IO operation failed.
///
CancelIoFailed,
///
/// An IO operation was cancelled by the user before it completed.
///
///
/// IoCancelled errors may occur as normal operation; for this reason they are not logged as a .
///
IoCancelled,
///
/// An IO operation timed out before it completed.
///
///
/// IoTimedOut errors may occur as normal operation; for this reason they are not logged as a .
///
IoTimedOut,
///
/// An IO operation was cancelled and will be re-submiited when ready.
///
///
/// IoEndpointGlobalCancelRedo errors may occur as normal operation; for this reason they are not logged as a .
///
IoEndpointGlobalCancelRedo,
///
/// Failed retrieving a custom USB device key value.
///
GetDeviceKeyValueFailed,
///
/// Failed setting a custom USB device key value.
///
SetDeviceKeyValueFailed,
///
/// The error is a standard windows error.
///
Win32Error,
///
/// An attempt was made to lock a device that is already locked.
///
DeviceAllreadyLocked,
///
/// An attempt was made to lock an endpoint that is already locked.
///
EndpointAllreadyLocked,
///
/// The USB device request failed because the USB device was not found.
///
DeviceNotFound,
///
/// Operation was intentionally cancelled by the user or application.
///
UserAborted,
///
/// Invalid parameter.
///
InvalidParam,
///
/// Access denied (insufficient permissions).
///
AccessDenied,
///
/// Resource Busy.
///
ResourceBusy,
///
/// Overflow.
///
Overflow,
///
/// Pipe error or endpoint halted.
///
PipeError,
///
/// System call interrupted (perhaps due to signal).
///
Interrupted,
///
/// Insufficient memory.
///
InsufficientMemory,
///
/// Operation not supported or unimplemented on this platform.
///
NotSupported,
///
/// Unknown or other error.
///
UnknownError,
///
/// The error is one of the
///
MonoApiError
}
}