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

#ifndef CC_TEST_TEST_TILE_PRIORITIES_H_
#define CC_TEST_TEST_TILE_PRIORITIES_H_

#include "cc/resources/tile_priority.h"

namespace cc {

class TilePriorityForSoonBin : public TilePriority {
 public:
  TilePriorityForSoonBin();
};

class TilePriorityForEventualBin : public TilePriority {
 public:
  TilePriorityForEventualBin();
};

class TilePriorityForNowBin : public TilePriority {
 public:
  TilePriorityForNowBin();
};

class TilePriorityRequiredForActivation : public TilePriority {
 public:
  TilePriorityRequiredForActivation();
};

class TilePriorityLowRes : public TilePriority {
 public:
  TilePriorityLowRes();
};

}  // namespace cc

#endif  // CC_TEST_TEST_TILE_PRIORITIES_H_
