1 /******************************************************************************
2 ** Filename: mfdefs.c
3 ** Purpose: Basic routines for manipulating micro-features
4 ** Author: Dan Johnson
5 ** History: Mon Jan 22 08:48:58 1990, DSJ, Created.
6 **
7 ** (c) Copyright Hewlett-Packard Company, 1988.
8 ** Licensed under the Apache License, Version 2.0 (the "License");
9 ** you may not use this file except in compliance with the License.
10 ** You may obtain a copy of the License at
11 ** http://www.apache.org/licenses/LICENSE-2.0
12 ** Unless required by applicable law or agreed to in writing, software
13 ** distributed under the License is distributed on an "AS IS" BASIS,
14 ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 ** See the License for the specific language governing permissions and
16 ** limitations under the License.
17 ******************************************************************************/
18 /**----------------------------------------------------------------------------
19 Include Files and Type Defines
20 ----------------------------------------------------------------------------**/
21 #include "mfdefs.h"
22 #include "emalloc.h"
23 #include <math.h>
24
25 /**----------------------------------------------------------------------------
26 Public Code
27 ----------------------------------------------------------------------------**/
28 /*---------------------------------------------------------------------------*/
NewMicroFeature()29 MICROFEATURE NewMicroFeature() {
30 /*
31 ** Parameters: none
32 ** Globals: none
33 ** Operation:
34 ** This routine allocates and returns a new micro-feature
35 ** data structure.
36 ** Return: New micro-feature.
37 ** Exceptions: none
38 ** History: 7/27/89, DSJ, Created.
39 */
40 return ((MICROFEATURE) Emalloc (sizeof (MFBLOCK)));
41 } /* NewMicroFeature */
42
43
44 /*---------------------------------------------------------------------------*/
FreeMicroFeatures(MICROFEATURES MicroFeatures)45 void FreeMicroFeatures(MICROFEATURES MicroFeatures) {
46 /*
47 ** Parameters:
48 ** MicroFeatures list of micro-features to be freed
49 ** Globals: none
50 ** Operation:
51 ** This routine deallocates all of the memory consumed by
52 ** a list of micro-features.
53 ** Return: none
54 ** Exceptions: none
55 ** History: 7/27/89, DSJ, Created.
56 */
57 destroy_nodes(MicroFeatures, Efree);
58 } /* FreeMicroFeatures */
59