// Copyright 2013 The Flutter Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#pragma once

#include <unordered_map>

#include "flutter/fml/macros.h"
#include "impeller/core/sampler_descriptor.h"

namespace impeller {

class SamplerLibrary {
 public:
  virtual ~SamplerLibrary();

  virtual std::shared_ptr<const Sampler> GetSampler(
      SamplerDescriptor descriptor) = 0;

 protected:
  SamplerLibrary();

 private:
  FML_DISALLOW_COPY_AND_ASSIGN(SamplerLibrary);
};

}  // namespace impeller
