home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Misc / DC-POS24.LZX / pOS / IncPOS.lzx / proto / pList.h < prev    next >
Encoding:
C/C++ Source or Header  |  1997-03-18  |  4.7 KB  |  86 lines

  1. #ifndef __INC_POS_PROTO_PLIST_H
  2. #define __INC_POS_PROTO_PLIST_H
  3. /*******************************************************************
  4.  Includes Release 24
  5.  (C) Copyright 1995-1997 proDAD
  6.      All Rights Reserved
  7.  
  8.  $AUT Holger Burkarth
  9.  $DAT >>pList.h<<   04 Feb 1997    19:42:12 - (C) ProDAD
  10. *******************************************************************/
  11. #ifndef __INC_POS_PEXEC_LIST_H
  12. #include <pExec/List.h>
  13. #endif
  14.  
  15. /*------ lists --------------------------------------------------------*/
  16. VOID  pOS_ListInit(_R_A0 struct pOS_List*);
  17. VOID  pOS_ListInsert(_R_A0 struct pOS_List*,_R_A1 struct pOS_Node*,_R_A2 const struct pOS_Node *pred);
  18. VOID  pOS_ListAddHead(_R_A0 struct pOS_List*,_R_A1 struct pOS_Node*);
  19. VOID  pOS_ListAddTail(_R_A0 struct pOS_List*,_R_A1 struct pOS_Node*);
  20. VOID  pOS_ListRemove(_R_A0 struct pOS_Node*);
  21. struct pOS_Node *pOS_ListRemHead(_R_A0 struct pOS_List*);
  22. struct pOS_Node *pOS_ListRemTail(_R_A0 struct pOS_List*);
  23. VOID  pOS_ListMoveListTail(_R_A0 struct pOS_List* listSource,_R_A1 struct pOS_List* listDest);
  24. VOID  pOS_ListMoveListHead(_R_A0 struct pOS_List* listSource,_R_A1 struct pOS_List* listDest);
  25. VOID  pOS_ListMoveListInsert(_R_A0 struct pOS_List* listSource,_R_A1 struct pOS_List* listDest,_R_A2 struct pOS_Node*);
  26. struct pOS_Node* pOS_ListCntSucc(_R_A0 const struct pOS_List*,_R_A1 const struct pOS_Node*,_R_D0 ULONG cnt);
  27. ULONG pOS_ListGetSuccNodeCnt(_R_A0 const struct pOS_Node*);
  28.  
  29. struct pOS_Node *pOS_ListSucc(_R_A0 const struct pOS_List*,_R_A1 const struct pOS_Node*);
  30. struct pOS_Node *pOS_ListPred(_R_A0 const struct pOS_List*,_R_A1 const struct pOS_Node*);
  31. BOOL  pOS_ListIsEmpty(_R_A0 const struct pOS_List*);
  32.  
  33. VOID pOS_ListEnqueue(_R_A0 struct pOS_ExList*,_R_A1 struct pOS_ExNode*);
  34. VOID pOS_ListEnqueueName(_R_A0 struct pOS_ExList*,_R_A1 struct pOS_ExNode*,_R_D0 SLONG mode);
  35. VOID pOS_ListEnqueueIName(_R_A0 struct pOS_ExList*,_R_A1 struct pOS_ExNode*,_R_D0 SLONG mode);
  36. struct pOS_ExNode *pOS_ListFindName(_R_A0 const struct pOS_ExList*,_R_A1 const CHAR *name);
  37. struct pOS_ExNode *pOS_ListFindIName(_R_A0 const struct pOS_ExList*,_R_A1 const CHAR *name);
  38. struct pOS_ExNode *pOS_ListFindINameV(_R_A0 const struct pOS_ExList*,_R_A1 const CHAR*,_R_A2 struct pOS_ExNode*);
  39.  
  40. VOID pOS_ListSwapNode(_R_A0 const struct pOS_List*,_R_A1 struct pOS_Node*,_R_A2 struct pOS_Node*);
  41. BOOL pOS_ListCheckMember(_R_A0 const struct pOS_List*,_R_A1 const struct pOS_Node*);
  42.  
  43. #ifdef pOS_CPP
  44. inline VOID pOS_ListInit(pOS_ExList* list)
  45.         {pOS_ListInit((pOS_List*)list);}
  46. inline VOID pOS_ListInsert(pOS_ExList* list,pOS_ExNode* node,const pOS_ExNode *pred)
  47.         {pOS_ListInsert((pOS_List*)list,(pOS_Node*)node,(pOS_Node*)pred);}
  48. inline VOID pOS_ListAddHead(pOS_ExList* list,pOS_ExNode* node)
  49.         {pOS_ListAddHead((pOS_List*)list,(pOS_Node*)node);}
  50. inline VOID pOS_ListAddTail(pOS_ExList* list,pOS_ExNode* node)
  51.         {pOS_ListAddTail((pOS_List*)list,(pOS_Node*)node);}
  52. inline VOID pOS_ListRemove(pOS_ExNode* node)
  53.         {pOS_ListRemove((pOS_Node*)node);}
  54. inline pOS_ExNode *pOS_ListRemHead(pOS_ExList* list)
  55.         {return((pOS_ExNode*)pOS_ListRemHead((pOS_List*)list));}
  56. inline pOS_ExNode *pOS_ListRemTail(pOS_ExList* list)
  57.         {return((pOS_ExNode*)pOS_ListRemTail((pOS_List*)list));}
  58. inline VOID pOS_ListMoveListTail(pOS_ExList* listSource,pOS_ExList* listDest)
  59.         {pOS_ListMoveListTail((pOS_List*)listSource,(pOS_List*)listDest);}
  60. inline VOID pOS_ListMoveListHead(pOS_ExList* listSource,pOS_ExList* listDest)
  61.         {pOS_ListMoveListHead((pOS_List*)listSource,(pOS_List*)listDest);}
  62. inline VOID pOS_ListMoveListInsert(pOS_ExList* listSource,pOS_ExList* listDest,pOS_ExNode* pred)
  63.         {pOS_ListMoveListInsert((pOS_List*)listSource,(pOS_List*)listDest,(pOS_Node*)pred);}
  64. inline pOS_ExNode* pOS_ListCntSucc(pOS_ExList* list,const pOS_ExNode* node,ULONG cnt)
  65.         {return((pOS_ExNode*)pOS_ListCntSucc((pOS_List*)list,(pOS_Node*)node,cnt));}
  66. inline ULONG pOS_ListGetSuccNodeCnt(const pOS_ExNode* node)
  67.         {return(pOS_ListGetSuccNodeCnt((pOS_Node*)node));}
  68. inline VOID pOS_ListSwapNode(const pOS_ExList* list,pOS_ExNode* node1,pOS_ExNode* node2)
  69.        {pOS_ListSwapNode((pOS_List*)list,(pOS_Node*)node1,(pOS_Node*)node2);}
  70.  
  71.  
  72. inline pOS_ExNode *pOS_ListSucc(const pOS_ExList* list,const pOS_ExNode* node)
  73.         {return((pOS_ExNode*)pOS_ListSucc((pOS_List*)list,(pOS_Node*)node));}
  74. inline pOS_ExNode *pOS_ListPred(const pOS_ExList* list,const pOS_ExNode* node)
  75.         {return((pOS_ExNode*)pOS_ListPred((pOS_List*)list,(pOS_Node*)node));}
  76. inline BOOL pOS_ListIsEmpty(const pOS_ExList* list)
  77.         {return(pOS_ListIsEmpty((pOS_List*)list));}
  78. inline BOOL pOS_ListCheckMember(const pOS_ExList* list,const struct pOS_ExNode* node)
  79.         {return(pOS_ListCheckMember((pOS_List*)list,(pOS_Node*)node));}
  80.  
  81.  
  82. #endif /* pOS_CPP */
  83.  
  84.  
  85. #endif
  86.