1*993b0882SAndroid Build Coastguard Worker /* 2*993b0882SAndroid Build Coastguard Worker * Copyright (C) 2018 The Android Open Source Project 3*993b0882SAndroid Build Coastguard Worker * 4*993b0882SAndroid Build Coastguard Worker * Licensed under the Apache License, Version 2.0 (the "License"); 5*993b0882SAndroid Build Coastguard Worker * you may not use this file except in compliance with the License. 6*993b0882SAndroid Build Coastguard Worker * You may obtain a copy of the License at 7*993b0882SAndroid Build Coastguard Worker * 8*993b0882SAndroid Build Coastguard Worker * http://www.apache.org/licenses/LICENSE-2.0 9*993b0882SAndroid Build Coastguard Worker * 10*993b0882SAndroid Build Coastguard Worker * Unless required by applicable law or agreed to in writing, software 11*993b0882SAndroid Build Coastguard Worker * distributed under the License is distributed on an "AS IS" BASIS, 12*993b0882SAndroid Build Coastguard Worker * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13*993b0882SAndroid Build Coastguard Worker * See the License for the specific language governing permissions and 14*993b0882SAndroid Build Coastguard Worker * limitations under the License. 15*993b0882SAndroid Build Coastguard Worker */ 16*993b0882SAndroid Build Coastguard Worker 17*993b0882SAndroid Build Coastguard Worker #ifndef LIBTEXTCLASSIFIER_ANNOTATOR_KNOWLEDGE_KNOWLEDGE_ENGINE_DUMMY_H_ 18*993b0882SAndroid Build Coastguard Worker #define LIBTEXTCLASSIFIER_ANNOTATOR_KNOWLEDGE_KNOWLEDGE_ENGINE_DUMMY_H_ 19*993b0882SAndroid Build Coastguard Worker 20*993b0882SAndroid Build Coastguard Worker #include <string> 21*993b0882SAndroid Build Coastguard Worker 22*993b0882SAndroid Build Coastguard Worker #include "annotator/knowledge/knowledge-engine-types.h" 23*993b0882SAndroid Build Coastguard Worker #include "annotator/model_generated.h" 24*993b0882SAndroid Build Coastguard Worker #include "annotator/types.h" 25*993b0882SAndroid Build Coastguard Worker #include "utils/base/status.h" 26*993b0882SAndroid Build Coastguard Worker #include "utils/optional.h" 27*993b0882SAndroid Build Coastguard Worker #include "utils/utf8/unilib.h" 28*993b0882SAndroid Build Coastguard Worker 29*993b0882SAndroid Build Coastguard Worker namespace libtextclassifier3 { 30*993b0882SAndroid Build Coastguard Worker 31*993b0882SAndroid Build Coastguard Worker // A dummy implementation of the knowledge engine. 32*993b0882SAndroid Build Coastguard Worker class KnowledgeEngine { 33*993b0882SAndroid Build Coastguard Worker public: Initialize(const std::string & serialized_config,const UniLib * unilib)34*993b0882SAndroid Build Coastguard Worker bool Initialize(const std::string& serialized_config, const UniLib* unilib) { 35*993b0882SAndroid Build Coastguard Worker return true; 36*993b0882SAndroid Build Coastguard Worker } 37*993b0882SAndroid Build Coastguard Worker SetPriorityScore(float priority_score)38*993b0882SAndroid Build Coastguard Worker void SetPriorityScore(float priority_score) {} 39*993b0882SAndroid Build Coastguard Worker SetEnabledModes(ModeFlag enabled_modes)40*993b0882SAndroid Build Coastguard Worker void SetEnabledModes(ModeFlag enabled_modes) {} 41*993b0882SAndroid Build Coastguard Worker ClassifyText(const std::string & text,CodepointSpan selection_indices,AnnotationUsecase annotation_usecase,const Optional<LocationContext> & location_context,const Permissions & permissions,ClassificationResult * classification_result)42*993b0882SAndroid Build Coastguard Worker Status ClassifyText(const std::string& text, CodepointSpan selection_indices, 43*993b0882SAndroid Build Coastguard Worker AnnotationUsecase annotation_usecase, 44*993b0882SAndroid Build Coastguard Worker const Optional<LocationContext>& location_context, 45*993b0882SAndroid Build Coastguard Worker const Permissions& permissions, 46*993b0882SAndroid Build Coastguard Worker ClassificationResult* classification_result) const { 47*993b0882SAndroid Build Coastguard Worker return Status(StatusCode::UNIMPLEMENTED, "Not implemented."); 48*993b0882SAndroid Build Coastguard Worker } 49*993b0882SAndroid Build Coastguard Worker Chunk(const std::string & text,AnnotationUsecase annotation_usecase,const Optional<LocationContext> & location_context,const Permissions & permissions,const AnnotateMode annotate_mode,ModeFlag mode,Annotations * result)50*993b0882SAndroid Build Coastguard Worker Status Chunk(const std::string& text, AnnotationUsecase annotation_usecase, 51*993b0882SAndroid Build Coastguard Worker const Optional<LocationContext>& location_context, 52*993b0882SAndroid Build Coastguard Worker const Permissions& permissions, const AnnotateMode annotate_mode, 53*993b0882SAndroid Build Coastguard Worker ModeFlag mode, Annotations* result) const { 54*993b0882SAndroid Build Coastguard Worker return Status::OK; 55*993b0882SAndroid Build Coastguard Worker } 56*993b0882SAndroid Build Coastguard Worker ChunkMultipleSpans(const std::vector<std::string> & text_fragments,const std::vector<FragmentMetadata> & fragment_metadata,AnnotationUsecase annotation_usecase,const Optional<LocationContext> & location_context,const Permissions & permissions,const AnnotateMode annotate_mode,ModeFlag mode,Annotations * results)57*993b0882SAndroid Build Coastguard Worker Status ChunkMultipleSpans( 58*993b0882SAndroid Build Coastguard Worker const std::vector<std::string>& text_fragments, 59*993b0882SAndroid Build Coastguard Worker const std::vector<FragmentMetadata>& fragment_metadata, 60*993b0882SAndroid Build Coastguard Worker AnnotationUsecase annotation_usecase, 61*993b0882SAndroid Build Coastguard Worker const Optional<LocationContext>& location_context, 62*993b0882SAndroid Build Coastguard Worker const Permissions& permissions, const AnnotateMode annotate_mode, 63*993b0882SAndroid Build Coastguard Worker ModeFlag mode, Annotations* results) const { 64*993b0882SAndroid Build Coastguard Worker return Status::OK; 65*993b0882SAndroid Build Coastguard Worker } 66*993b0882SAndroid Build Coastguard Worker LookUpEntity(const std::string & id)67*993b0882SAndroid Build Coastguard Worker StatusOr<std::string> LookUpEntity(const std::string& id) const { 68*993b0882SAndroid Build Coastguard Worker return Status(StatusCode::UNIMPLEMENTED, "Not implemented."); 69*993b0882SAndroid Build Coastguard Worker } 70*993b0882SAndroid Build Coastguard Worker LookUpEntityProperty(const std::string & mid_str,const std::string & property)71*993b0882SAndroid Build Coastguard Worker StatusOr<std::string> LookUpEntityProperty( 72*993b0882SAndroid Build Coastguard Worker const std::string& mid_str, const std::string& property) const { 73*993b0882SAndroid Build Coastguard Worker return Status(StatusCode::UNIMPLEMENTED, "Not implemented"); 74*993b0882SAndroid Build Coastguard Worker } 75*993b0882SAndroid Build Coastguard Worker }; 76*993b0882SAndroid Build Coastguard Worker 77*993b0882SAndroid Build Coastguard Worker } // namespace libtextclassifier3 78*993b0882SAndroid Build Coastguard Worker 79*993b0882SAndroid Build Coastguard Worker #endif // LIBTEXTCLASSIFIER_ANNOTATOR_KNOWLEDGE_KNOWLEDGE_ENGINE_DUMMY_H_ 80