Home | History | Annotate | Download | only in braille_display_private
      1 // Copyright 2013 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 #include "chrome/browser/extensions/api/braille_display_private/braille_controller.h"
      6 
      7 #include "base/memory/scoped_ptr.h"
      8 #include "base/memory/singleton.h"
      9 #include "chrome/common/extensions/api/braille_display_private.h"
     10 
     11 namespace extensions {
     12 namespace api {
     13 namespace braille_display_private {
     14 
     15 // Stub implementation of BrailleController for use when brlapi is not
     16 // enabled.
     17 class BrailleControllerImpl : public BrailleController {
     18  public:
     19   static BrailleControllerImpl* GetInstance();
     20   virtual scoped_ptr<DisplayState> GetDisplayState() OVERRIDE;
     21   virtual void WriteDots(const std::string& cells) OVERRIDE;
     22   virtual void AddObserver(BrailleObserver* observer) OVERRIDE;
     23   virtual void RemoveObserver(BrailleObserver* observer) OVERRIDE;
     24 
     25  private:
     26   BrailleControllerImpl();
     27   virtual ~BrailleControllerImpl();
     28   friend struct DefaultSingletonTraits<BrailleControllerImpl>;
     29   DISALLOW_COPY_AND_ASSIGN(BrailleControllerImpl);
     30 };
     31 
     32 BrailleController::BrailleController() {
     33 }
     34 
     35 BrailleController::~BrailleController() {
     36 }
     37 
     38 // static
     39 BrailleController* BrailleController::GetInstance() {
     40   return BrailleControllerImpl::GetInstance();
     41 }
     42 
     43 BrailleControllerImpl::BrailleControllerImpl() {
     44 }
     45 
     46 BrailleControllerImpl::~BrailleControllerImpl() {
     47 }
     48 
     49 // static
     50 BrailleControllerImpl* BrailleControllerImpl::GetInstance() {
     51   return Singleton<BrailleControllerImpl,
     52                    LeakySingletonTraits<BrailleControllerImpl> >::get();
     53 }
     54 
     55 scoped_ptr<DisplayState> BrailleControllerImpl::GetDisplayState() {
     56   return scoped_ptr<DisplayState>(new DisplayState()).Pass();
     57 }
     58 
     59 void BrailleControllerImpl::WriteDots(const std::string& cells) {
     60 }
     61 
     62 void BrailleControllerImpl::AddObserver(BrailleObserver* observer) {
     63 }
     64 
     65 void BrailleControllerImpl::RemoveObserver(BrailleObserver* observer) {
     66 }
     67 
     68 }  // namespace braille_display_private
     69 }  // namespace api
     70 }  // namespace extensions
     71