Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / cc / animation / animation_id_provider.cc
blob9c87d2049f4fe622264842eef9d95a781f92509d
1 // Copyright (c) 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.
5 #include "base/atomic_sequence_num.h"
6 #include "cc/animation/animation_id_provider.h"
8 namespace cc {
10 base::StaticAtomicSequenceNumber g_next_animation_id;
11 base::StaticAtomicSequenceNumber g_next_group_id;
12 base::StaticAtomicSequenceNumber g_next_timeline_id;
13 base::StaticAtomicSequenceNumber g_next_player_id;
15 int AnimationIdProvider::NextAnimationId() {
16 // Animation IDs start from 1.
17 return g_next_animation_id.GetNext() + 1;
20 int AnimationIdProvider::NextGroupId() {
21 // Animation group IDs start from 1.
22 return g_next_group_id.GetNext() + 1;
25 int AnimationIdProvider::NextTimelineId() {
26 return g_next_timeline_id.GetNext() + 1;
29 int AnimationIdProvider::NextPlayerId() {
30 return g_next_player_id.GetNext() + 1;
33 } // namespace cc