/* * Copyright 2001-2008 Texas Instruments - http://www.ti.com/ * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ /* * ======== dbc.h ======== * DSP-BIOS Bridge driver support functions for TI OMAP processors. * Purpose: * "Design by Contract" programming macros. * * Public Functions: * DBC_Assert * DBC_Require * DBC_Ensure * * Notes: * Requires that the GT->ERROR function has been defaulted to a valid * error handler for the given execution environment. * * Does not require that GT_init() be called. * *! Revision History: *! ================ *! 11-Aug-2000 ag: Removed include <std.h> *! 22-Apr-1996 gp: Created. */ #ifndef DBC_ #define DBC_ #ifdef __cplusplus extern "C" { #endif /* Assertion Macros: */ #if GT_TRACE #include <gt.h> #define DBC_Assert( exp ) \ if (!(exp)) \ (*GT->ERRORFXN)("%s, line %d: Assertion (" #exp ") failed.\n", \ __FILE__, __LINE__) #define DBC_Require DBC_Assert /* Function Precondition. */ #define DBC_Ensure DBC_Assert /* Function Postcondition. */ #else #define DBC_Assert(exp) #define DBC_Require(exp) #define DBC_Ensure(exp) #endif /* DEBUG */ #ifdef __cplusplus } #endif #endif /* DBC_ */