// /** @file
// NULL instance of Timer Library as a template.
//
// A non-functional instance of the Timer Library that can be used as a template
// for the implementation of a functional timer library instance. This library instance can
// also be used to test build DXE, Runtime, DXE SAL, and DXE SMM modules that require timer
// services as well as EBC modules that require timer services.
//
// Copyright (c) 2007 - 2014, Intel Corporation. All rights reserved.<BR>
//
// SPDX-License-Identifier: BSD-2-Clause-Patent
//
// **/


#string STR_MODULE_ABSTRACT             #language en-US "NULL instance of Timer Library as a template"

#string STR_MODULE_DESCRIPTION          #language en-US "A non-functional instance of the Timer Library that can be used as a template for the implementation of a functional timer library instance. This library instance can also be used to test build DXE, Runtime, DXE SAL, and DXE SMM modules that require timer services, as well as EBC modules that require timer services."

