Home | History | Annotate | Download | only in base
      1 // Copyright 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 // Definition of ProgressMarkerMap and various utility functions.
      6 
      7 #ifndef SYNC_INTERNAL_PUBLIC_API_BASE_PROGRESS_MARKER_MAP_H_
      8 #define SYNC_INTERNAL_PUBLIC_API_BASE_PROGRESS_MARKER_MAP_H_
      9 
     10 #include <map>
     11 #include <string>
     12 
     13 #include "base/memory/scoped_ptr.h"
     14 #include "sync/base/sync_export.h"
     15 #include "sync/internal_api/public/base/model_type.h"
     16 
     17 // TODO(akalin,mmontgomery): Move the non-exported functions in this file to a
     18 // private header.
     19 
     20 namespace base {
     21 class DictionaryValue;
     22 }
     23 
     24 namespace syncer {
     25 
     26 // A container that maps ModelType to serialized
     27 // DataTypeProgressMarkers.
     28 typedef std::map<ModelType, std::string> ProgressMarkerMap;
     29 
     30 SYNC_EXPORT_PRIVATE scoped_ptr<base::DictionaryValue> ProgressMarkerMapToValue(
     31     const ProgressMarkerMap& marker_map);
     32 
     33 }  // namespace syncer
     34 
     35 #endif  // SYNC_INTERNAL_PUBLIC_API_BASE_PROGRESS_MARKER_MAP_H_
     36