Mobil_surveillance_system 1
Data Structures | Defines | Typedefs | Functions
Dinamic_Array.h File Reference

Dinamic array header file. More...

#include <stdlib.h>
#include <string.h>

Go to the source code of this file.

Data Structures

struct  tDinamicArray
 Type of dinamic arrays. More...

Defines

#define DEFINE_TBOOLEAN
#define STEPNUMBER   10

Typedefs

typedef unsigned char tBoolean

Functions

void Dinamic_Array_Init (tDinamicArray *pDinamicArray)
void Dinamic_Array_Add (tDinamicArray *pDinamicArray, const void *pItem)
void Dinamic_Array_Delete (tDinamicArray *pDinamicArray, unsigned int uiIndex)
void Dinamic_Array_Clear (tDinamicArray *pDinamicArray)

Detailed Description

Dinamic array header file.

This is the header file of the Dinamic_Array source file.

Definition in file Dinamic_Array.h.


Typedef Documentation

typedef unsigned char tBoolean

bool type defination

Definition at line 25 of file Dinamic_Array.h.


Function Documentation

void Dinamic_Array_Add ( tDinamicArray pDinamicArray,
const void *  pItem 
)
Parameters:
pDinamicArray
pItem

Definition at line 21 of file Dinamic_Array.c.

{
        
    if(pDinamicArray->uiSize == pDinamicArray->uiLimit){
        
        void** pvTempArray = pDinamicArray->pArray;     
        pDinamicArray->pArray = (void**) malloc(sizeof(void*)*pDinamicArray->uiStep);
        if(pvTempArray){
            
            memcpy(pDinamicArray->pArray, pvTempArray, sizeof(void*)*pDinamicArray->uiSize);
        }
        
        free(pvTempArray);
    }
    
    pDinamicArray->pArray[pDinamicArray->uiSize] = (void*)pItem;
    pDinamicArray->uiSize++;
}
void Dinamic_Array_Clear ( tDinamicArray pDinamicArray)
Parameters:
pDinamicArray

Definition at line 59 of file Dinamic_Array.c.

{
    free(pDinamicArray);
    Dinamic_Array_Init(pDinamicArray);
}
void Dinamic_Array_Delete ( tDinamicArray pDinamicArray,
unsigned int  uiIndex 
)
Parameters:
pDinamicArray
uiIndex

Definition at line 43 of file Dinamic_Array.c.

{
    if(uiIndex >= pDinamicArray->uiSize){
        return; 
    }
    
    unsigned int i;
    for(i = uiIndex; i < pDinamicArray->uiSize-1; i++){
        pDinamicArray->pArray[ i ] = pDinamicArray->pArray [ i+1 ];
    }
    pDinamicArray->uiSize--;
}
void Dinamic_Array_Init ( tDinamicArray pDinamicArray)
Parameters:
pDinamicArray

Definition at line 10 of file Dinamic_Array.c.

{
    pDinamicArray->pArray = 0;
    pDinamicArray->uiSize = 0;
    pDinamicArray->uiLimit = 0;
    pDinamicArray->uiStep = STEPNUMBER;
}
 All Data Structures Files Functions Variables Typedefs Enumerations Defines