librnr  1.14.5
RoadNarrows Robotics Common Library 1
example_dlist.h File Reference

Example of a "derived" DListVoid doubly-linked lists. More...

#include <stdio.h>
#include "rnr/rnrconfig.h"
#include "rnr/new.h"
#include "rnr/dlistvoid.h"

Go to the source code of this file.

Classes

struct  Zoo_T
 Zoo Type. More...
 

Macros

#define DLIST_DNAME   Zoo
 derived dlist name space (i.e. DListZoo<x>)
 
#define DLIST_DTYPE   Zoo_T
 derived dlist user data type
 

Functions

static int DListZooDataCmp (const Zoo_T *pData1, const Zoo_T *pData2)
 Node zoo data comparator callback. More...
 
static void DListZooDataDelete (Zoo_T *pData)
 Node zoo data delete callback. More...
 
static void DListZooDataPrint (FILE *fp, Zoo_T *pData)
 Node zoo data print callback. More...
 

Detailed Description

Example of a "derived" DListVoid doubly-linked lists.

LastChangedDate
2010-03-24 10:19:36 -0600 (Wed, 24 Mar 2010)
Rev
307
Author
Robin Knight (robin.nosp@m..kni.nosp@m.ght@r.nosp@m.oadn.nosp@m.arrow.nosp@m.s.co.nosp@m.m)

Definition in file example_dlist.h.

Function Documentation

static int DListZooDataCmp ( const Zoo_T pData1,
const Zoo_T pData2 
)
inlinestatic

Node zoo data comparator callback.

Parameters
pData1Zoo node data 1.
pData2Zoo node data 2.
Returns
< 0, 0, or > 0 if pData1 is less than, equal to, or greater than pData2, respectively.

Definition at line 74 of file example_dlist.h.

References Zoo_T::m_sPetName.

Referenced by main().

75 {
76  return strcmp(pData1->m_sPetName, pData2->m_sPetName);
77 }
char * m_sPetName
zoo animal pet (pr) name
Definition: example_dlist.h:60
static void DListZooDataDelete ( Zoo_T pData)
inlinestatic

Node zoo data delete callback.

Parameters
pDataZoo node data.

Definition at line 84 of file example_dlist.h.

References Zoo_T::m_sPetName.

Referenced by main().

85 {
86  delete(pData->m_sPetName);
87  delete(pData);
88 }
char * m_sPetName
zoo animal pet (pr) name
Definition: example_dlist.h:60
static void DListZooDataPrint ( FILE *  fp,
Zoo_T pData 
)
inlinestatic

Node zoo data print callback.

Parameters
fpFile pointer.
pDataZoo node data.

Definition at line 96 of file example_dlist.h.

References Zoo_T::m_nZid, Zoo_T::m_sComName, Zoo_T::m_sPetName, Zoo_T::m_sSciName, and NULL.

Referenced by main().

97 {
98  if( pData != NULL )
99  {
100  fprintf(fp, "%03d \"%s\": %s (%s)",
101  pData->m_nZid, pData->m_sPetName, pData->m_sSciName, pData->m_sComName);
102  }
103 }
const char * m_sComName
zoo animal common name
Definition: example_dlist.h:59
#define NULL
null pointer
Definition: rnrconfig.h:199
char * m_sPetName
zoo animal pet (pr) name
Definition: example_dlist.h:60
const char * m_sSciName
zoo animal scientific name
Definition: example_dlist.h:58
int m_nZid
zoo animal unique id
Definition: example_dlist.h:57