Home | History | Annotate | Download | only in shared_impl
      1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 #ifndef PPAPI_SHARED_IMPL_API_ID_H_
      6 #define PPAPI_SHARED_IMPL_API_ID_H_
      7 
      8 namespace ppapi {
      9 
     10 // These numbers must be all small integers. They are used in a lookup table
     11 // to route messages to the appropriate message handler.
     12 enum ApiID {
     13   // Zero is reserved for control messages.
     14   API_ID_NONE = 0,
     15   API_ID_PPB_AUDIO = 1,
     16   API_ID_PPB_AUDIO_CONFIG,
     17   API_ID_PPB_AUDIO_INPUT_DEV,
     18   API_ID_PPB_BROKER,
     19   API_ID_PPB_BUFFER,
     20   API_ID_PPB_CONTEXT_3D,
     21   API_ID_PPB_CORE,
     22   API_ID_PPB_CURSORCONTROL,
     23   API_ID_PPB_FILE_CHOOSER,
     24   API_ID_PPB_FILE_IO,
     25   API_ID_PPB_FILE_REF,
     26   API_ID_PPB_FILE_SYSTEM,
     27   API_ID_PPB_FLASH_DEVICE_ID,
     28   API_ID_PPB_FLASH_FONTFILE,
     29   API_ID_PPB_FLASH_MENU,
     30   API_ID_PPB_FLASH_MESSAGELOOP,
     31   API_ID_PPB_FONT,
     32   API_ID_PPB_GRAPHICS_2D,
     33   API_ID_PPB_GRAPHICS_3D,
     34   API_ID_PPB_HOSTRESOLVER_PRIVATE,
     35   API_ID_PPB_IMAGE_DATA,
     36   API_ID_PPB_INSTANCE,
     37   API_ID_PPB_INSTANCE_PRIVATE,
     38   API_ID_PPB_NETWORKMANAGER_PRIVATE,
     39   API_ID_PPB_OPENGLES2,
     40   API_ID_PPB_PDF,
     41   API_ID_PPB_SURFACE_3D,
     42   API_ID_PPB_TCPSOCKET,
     43   API_ID_PPB_TCPSOCKET_PRIVATE,
     44   API_ID_PPB_TALK,
     45   API_ID_PPB_TESTING,
     46   API_ID_PPB_TEXT_INPUT,
     47   API_ID_PPB_URL_RESPONSE_INFO,
     48   API_ID_PPB_VAR_ARRAY_BUFFER,
     49   API_ID_PPB_VAR_DEPRECATED,
     50   API_ID_PPB_VIDEO_CAPTURE_DEV,
     51   API_ID_PPB_VIDEO_DECODER_DEV,
     52   API_ID_PPB_X509_CERTIFICATE_PRIVATE,
     53 
     54   API_ID_PPP_CLASS,
     55   // TODO(tomfinegan): Remove this after we refactor things to load the PPP
     56   // interface struct from the PPB interface.
     57   API_ID_PPP_CONTENT_DECRYPTOR_PRIVATE,
     58   API_ID_PPP_GRAPHICS_3D,
     59   API_ID_PPP_INPUT_EVENT,
     60   API_ID_PPP_INSTANCE,
     61   API_ID_PPP_INSTANCE_PRIVATE,
     62   API_ID_PPP_MESSAGING,
     63   API_ID_PPP_MOUSE_LOCK,
     64   API_ID_PPP_PRINTING,
     65   API_ID_PPP_TEXT_INPUT,
     66   API_ID_PPP_VIDEO_CAPTURE_DEV,
     67   API_ID_PPP_VIDEO_DECODER_DEV,
     68 
     69   API_ID_RESOURCE_CREATION,
     70 
     71   // Must be last to indicate the number of interface IDs.
     72   API_ID_COUNT
     73 };
     74 
     75 }  // namespace ppapi
     76 
     77 #endif  // PPAPI_SHARED_IMPL_API_ID_H_
     78