1862f3ba997e14b61dce9d341a75688951e67fd1bZonr Chang/* 2862f3ba997e14b61dce9d341a75688951e67fd1bZonr Chang * Copyright 2012, The Android Open Source Project 3862f3ba997e14b61dce9d341a75688951e67fd1bZonr Chang * 4862f3ba997e14b61dce9d341a75688951e67fd1bZonr Chang * Licensed under the Apache License, Version 2.0 (the "License"); 5862f3ba997e14b61dce9d341a75688951e67fd1bZonr Chang * you may not use this file except in compliance with the License. 6862f3ba997e14b61dce9d341a75688951e67fd1bZonr Chang * You may obtain a copy of the License at 7862f3ba997e14b61dce9d341a75688951e67fd1bZonr Chang * 8862f3ba997e14b61dce9d341a75688951e67fd1bZonr Chang * http://www.apache.org/licenses/LICENSE-2.0 9862f3ba997e14b61dce9d341a75688951e67fd1bZonr Chang * 10862f3ba997e14b61dce9d341a75688951e67fd1bZonr Chang * Unless required by applicable law or agreed to in writing, software 11862f3ba997e14b61dce9d341a75688951e67fd1bZonr Chang * distributed under the License is distributed on an "AS IS" BASIS, 12862f3ba997e14b61dce9d341a75688951e67fd1bZonr Chang * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13862f3ba997e14b61dce9d341a75688951e67fd1bZonr Chang * See the License for the specific language governing permissions and 14862f3ba997e14b61dce9d341a75688951e67fd1bZonr Chang * limitations under the License. 15862f3ba997e14b61dce9d341a75688951e67fd1bZonr Chang */ 16862f3ba997e14b61dce9d341a75688951e67fd1bZonr Chang 17862f3ba997e14b61dce9d341a75688951e67fd1bZonr Chang#ifndef BCC_EXECUTION_ENGINE_BCC_RUNTIME_SYMBOL_RESOLVERS_H 18862f3ba997e14b61dce9d341a75688951e67fd1bZonr Chang#define BCC_EXECUTION_ENGINE_BCC_RUNTIME_SYMBOL_RESOLVERS_H 19862f3ba997e14b61dce9d341a75688951e67fd1bZonr Chang 20c72c4ddfcd79c74f70713da91a69569451b5c19eZonr Chang#include "bcc/ExecutionEngine/SymbolResolvers.h" 21862f3ba997e14b61dce9d341a75688951e67fd1bZonr Chang 22862f3ba997e14b61dce9d341a75688951e67fd1bZonr Changnamespace bcc { 23862f3ba997e14b61dce9d341a75688951e67fd1bZonr Chang 24862f3ba997e14b61dce9d341a75688951e67fd1bZonr Changclass BCCRuntimeSymbolResolver : 25862f3ba997e14b61dce9d341a75688951e67fd1bZonr Chang public ArraySymbolResolver<BCCRuntimeSymbolResolver> { 26862f3ba997e14b61dce9d341a75688951e67fd1bZonr Chang typedef ArraySymbolResolver<BCCRuntimeSymbolResolver> super; 27862f3ba997e14b61dce9d341a75688951e67fd1bZonr Changpublic: 28862f3ba997e14b61dce9d341a75688951e67fd1bZonr Chang // SymbolArray and NumSymbols are required to be define in the 29862f3ba997e14b61dce9d341a75688951e67fd1bZonr Chang // subclass of ArraySymbolResolver. 30862f3ba997e14b61dce9d341a75688951e67fd1bZonr Chang static const SymbolMap SymbolArray[]; 31862f3ba997e14b61dce9d341a75688951e67fd1bZonr Chang static const size_t NumSymbols; 32862f3ba997e14b61dce9d341a75688951e67fd1bZonr Chang 33862f3ba997e14b61dce9d341a75688951e67fd1bZonr Chang BCCRuntimeSymbolResolver() : super(/* pSorted */true) { } 34862f3ba997e14b61dce9d341a75688951e67fd1bZonr Chang}; 35862f3ba997e14b61dce9d341a75688951e67fd1bZonr Chang 36862f3ba997e14b61dce9d341a75688951e67fd1bZonr Chang} // end namespace bcc 37862f3ba997e14b61dce9d341a75688951e67fd1bZonr Chang 38862f3ba997e14b61dce9d341a75688951e67fd1bZonr Chang#endif // BCC_EXECUTION_ENGINE_BCC_RUNTIME_SYMBOL_RESOLVERS_H 39