// Copyright (c) 2012 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef GPU_COMMAND_BUFFER_COMMON_CONSTANTS_H_ #define GPU_COMMAND_BUFFER_COMMON_CONSTANTS_H_ #include "../common/types.h" namespace gpu { typedef int32 CommandBufferOffset; const CommandBufferOffset kInvalidCommandBufferOffset = -1; // This enum must stay in sync with NPDeviceContext3DError. namespace error { enum Error { kNoError, kInvalidSize, kOutOfBounds, kUnknownCommand, kInvalidArguments, kLostContext, kGenericError, kDeferCommandUntilLater }; // Return true if the given error code is an actual error. inline bool IsError(Error error) { return error != kNoError && error != kDeferCommandUntilLater; } // Provides finer grained information about why the context was lost. enum ContextLostReason { // This context definitely provoked the loss of context. kGuilty, // This context definitely did not provoke the loss of context. kInnocent, // It is unknown whether this context provoked the loss of context. kUnknown }; } // Invalid shared memory Id, returned by RegisterSharedMemory in case of // failure. const int32 kInvalidSharedMemoryId = -1; // Common Command Buffer shared memory transfer buffer ID. const int32 kCommandBufferSharedMemoryId = 4; } // namespace gpu #endif // GPU_COMMAND_BUFFER_COMMON_CONSTANTS_H_