code: private void doJazziness(View item, int position, int scrollDirection) {
          if (mIsScrolling) {
              if (mOnlyAnimateNewItems && mAlreadyAnimatedItems.contains(position))
                  return;
  
              if (mOnlyAnimateOnFling && !mIsFlingEvent)
                  return;
  
              if (mMaxVelocity > MAX_VELOCITY_OFF && mMaxVelocity < mSpeed)
                  return;
  
              if (mSimulateGridWithList) {
                  ViewGroup itemRow = (ViewGroup) item;
                  for (int i = 0; i < itemRow.getChildCount(); i++)
                      doJazzinessImpl(itemRow.getChildAt(i), position, scrollDirection);
              } else {
                  doJazzinessImpl(item, position, scrollDirection);
              }
  
              mAlreadyAnimatedItems.add(position);
          }
      }
docs: Initializes the item view and triggers the animation.
  
  @param item The view to be animated.
  @param position The index of the view in the list.
  @param scrollDirection Positive number indicating scrolling down, or negative number indicating scrolling up.