summaryrefslogtreecommitdiff
path: root/libdtv/liblx/xListFuncs.c
diff options
context:
space:
mode:
Diffstat (limited to 'libdtv/liblx/xListFuncs.c')
-rw-r--r--libdtv/liblx/xListFuncs.c189
1 files changed, 0 insertions, 189 deletions
diff --git a/libdtv/liblx/xListFuncs.c b/libdtv/liblx/xListFuncs.c
deleted file mode 100644
index 88a908b..0000000
--- a/libdtv/liblx/xListFuncs.c
+++ /dev/null
@@ -1,189 +0,0 @@
-/*
- *
- * xListFuncs.c: list handling functions of liblx
- *
- *
- * $Revision: 1.1 $
- * $Date: 2001/06/25 12:29:47 $
- * $Author: hakenes $
- *
- * (C) 1992-2001 Rolf Hakenes <hakenes@hippomi.de>, under the GNU GPL.
- *
- * liblx is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2, or (at your option)
- * any later version.
- *
- * liblx is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You may have received a copy of the GNU General Public License
- * along with liblx; see the file COPYING. If not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- *
- */
-
-#include <string.h>
-#include "liblx.h"
-
-
-/*************************************************************************
- * *
- * function : xHashKey *
- * *
- * arguments : Name - character pointer *
- * *
- * return : 16 Bit CRC checksum as hashkey *
- * *
- *************************************************************************/
-unsigned short xHashKey (Name)
-
-char *Name;
-{
- unsigned short Key = 0;
- unsigned long Value;
- char *Ptr;
-
- if (!Name) return (0);
-
- for (Ptr = Name; *Ptr; Ptr++) {
- Value = ((Key >> 8) ^ (*Ptr)) & 0xFF;
- Value = Value ^ (Value >> 4);
- Key = 0xFFFF & ((Key << 8) ^ Value ^ (Value << 5) ^ (Value << 12));
- }
- return (Key);
-}
-
-
-/*************************************************************************
- * *
- * function : xNewNode *
- * *
- * arguments : Name - character pointer to the node's name *
- * *
- * Size - size of the surrounding structure in bytes *
- * *
- * return : pointer to a correct initialized NODE structure *
- * *
- *-----------------------------------------------------------------------*
- * *
- * xNewNode() allocates memory for a NODE structure and initializes *
- * it properly. If argument Name points to a string, it copies that *
- * into a new allocated memory area and assigns Node->Name to it. *
- * Because NODE's are often part of bigger structures, the size of *
- * the surrounding structure could be specified to allocate it. *
- * *
- *************************************************************************/
-
-struct NODE *xNewNode (Name, Size)
-
-char *Name;
-unsigned long Size;
-{
- struct NODE *Node;
-
- if (Size < sizeof(struct NODE)) Size = sizeof(struct NODE);
-
- xMemAlloc (Size, &Node);
-
- Node->Succ = NULL;
- Node->Pred = NULL;
-
- if (Name == NULL)
- {
- Node->Name = NULL;
- Node->HashKey = 0;
- }
- else
- {
- xMemAlloc (strlen (Name) + 1, &(Node->Name));
- strcpy (Node->Name, Name);
- Node->HashKey = xHashKey (Name);
- }
-
- return (Node);
-}
-
-
-/*************************************************************************
- * *
- * function : xNewList *
- * *
- * arguments : Name - character pointer to the list's name *
- * *
- * return : pointer to a correct initialized LIST structure *
- * *
- *-----------------------------------------------------------------------*
- * *
- * xNewList() allocates memory for a LIST structure and initializes *
- * it properly. If argument Name points to a string, it copies that *
- * into a new allocated memory area and assigns List->Name to it. *
- * *
- *************************************************************************/
-
-struct LIST *xNewList (Name)
-
-char *Name;
-{
- struct LIST *List;
-
- xMemAlloc (sizeof(struct LIST), &List);
-
- List->Head = NULL;
- List->Tail = NULL;
- List->Size = 0;
-
- if (Name == NULL)
- {
- List->Name = NULL;
- }
- else
- {
- xMemAlloc (strlen (Name) + 1, &(List->Name));
- strcpy (List->Name, Name);
- }
-
- return (List);
-}
-
-
-
-/*************************************************************************
- * *
- * function : xFindName *
- * *
- * arguments : List - pointer to a LIST structure *
- * *
- * Name - pointer to a name string *
- * *
- * return : pointer to a NODE structure *
- * *
- *-----------------------------------------------------------------------*
- * *
- * xFindName() looks for element with name 'Name' in list 'List' and *
- * returns its NODE structure. *
- * *
- *************************************************************************/
-
-struct NODE *xFindName (List, Name)
-
-struct LIST *List;
-char *Name;
-{
- struct NODE *Node;
- unsigned short HashKey;
-
- if (!Name || !List) return (NULL);
-
- HashKey = xHashKey (Name);
-
- for (Node = List->Head; Node; Node = Node->Succ)
- if (HashKey == Node->HashKey)
- if (Node->Name)
- if (strcmp (Node->Name, Name) == 0) return (Node);
-
- return (NULL);
-}