Code Search for Developers
 
 
  

vpts_q.c from The Open2x Project at Krugle


Show vpts_q.c syntax highlighted




#include "mmsp2_if.h"



#ifdef GDEBUG
extern FILE           *dbg;
	#define gprintf(x...) fprintf(dbg, x)
#else
	#define gprintf(x...)
#endif


#define QUEUE_SIZE  64 

static float    vpts_readq[QUEUE_SIZE];
int             vpts_readq_front = 0;
int             vpts_readq_rear = 0;

#define P_RQ_MSG() do {	\
	printf("%s vpts_readq_front(%d), vpts_readq_rear(%d)\n", __FUNCTION__, vpts_readq_front, vpts_readq_rear); \
}while(0)

inline int put_vpts_readq(float pts)
{
    if (((vpts_readq_rear + 1) % QUEUE_SIZE) == vpts_readq_front)
    {
        printf("vpts ring q overflow\n");
        
        return -1;
    }
#if 0
	#if defined(DEBUG_QUEUE)
   	P_RQ_MSG();
	#endif
#endif
    vpts_readq[vpts_readq_rear] = pts;
    vpts_readq_rear = (vpts_readq_rear + 1) % QUEUE_SIZE;
#if defined(DEBUG_QUEUE)
    P_RQ_MSG();
#endif
    return 1;
}

inline float get_vpts_readq(void)
{
    float ret;

    if(vpts_readq_front == vpts_readq_rear)
    {
        
        return -0.0;
    }

#if defined(DEBUG_QUEUE)
    P_RQ_MSG();
#endif
    ret = vpts_readq[vpts_readq_front];
    vpts_readq_front = (vpts_readq_front + 1) % QUEUE_SIZE;
    return ret;
}

void init_vpts_readq(void)
{
    vpts_readq_front 	= 0;
    vpts_readq_rear 	= 0;

    printf("VPTS ring Q initialize\n");
}


static float    nft_readq[QUEUE_SIZE];
int             nft_readq_front = 0;
int             nft_readq_rear = 0;

inline int put_nft_readq(float pts)
{
    if(((nft_readq_rear + 1) % QUEUE_SIZE) == nft_readq_front)
    {
        printf("nft ring q overflow\n");
        return -1;
    }
#if 0
	#if defined(DEBUG_QUEUE)
    P_RQ_MSG();
	#endif
#endif
    nft_readq[nft_readq_rear] = pts;
    nft_readq_rear = (nft_readq_rear + 1) % QUEUE_SIZE;
#if defined(DEBUG_QUEUE)
    P_RQ_MSG();
#endif
    return 1;
}

inline float get_nft_readq(void)
{
    float ret;

    if(nft_readq_front == nft_readq_rear)
    {
        
        return -0.0;
        
    }

#if defined(DEBUG_QUEUE)
    P_RQ_MSG();
#endif

    ret = nft_readq[nft_readq_front];
    nft_readq_front = (nft_readq_front + 1) % QUEUE_SIZE;

    return ret;
}

void init_nft_readq(void)
{
    nft_readq_front = 0;
    nft_readq_rear = 0;

    printf("NFT ring Q initialize\n");
}





See more files for this project here

The Open2x Project

The Open2x project exists to provide an open source resource for the GP2X handheld console based on the MagicEyes MMSP2 processing platform and MP2520F SoC. The project hosts Linux kernel source for the GP2X, boot loader (U-Boot) source and more.

Project homepage: http://www.distant-earth.com/open2x
Programming language(s): Assembly,C,C++
License: other

  default_skin/
    asf.png
    avi.png
    body.png
    dat.png
    downarrow.png
    error.png
    ext.png
    ext_on.png
    folder.png
    full.png
    loading.png
    mpg.png
    nand.png
    nand_on.png
    normal.png
    resume.png
    save.png
    sd.png
    sd_on.png
    selectbar.png
    uparrow.png
    wmv.png
  etc/
    codecs.conf
    dvb-menu.conf
    example.conf
    input.conf
    inttypes.h
    menu.conf
    mplayer.desktop
    mplayer.ico
  fbdisp/
    Makefile
    fblin16.c
    fblin24.c
    fblin32.c
    fbs.h
    fontdisp.h
    fontout.c
    gfxdev.h
    gfxfontext.c
    gfxfontload.c
    gfxfontout.c
    gfxtype.h
    gulim_96_10_eng.c
    gulim_96_10_han.c
    main.c
    scr_fb.c
  help/
    help_diff.sh
    help_mp-bg.h
    help_mp-cs.h
    help_mp-de.h
    help_mp-dk.h
    help_mp-el.h
    help_mp-en.h
    help_mp-es.h
    help_mp-fr.h
    help_mp-hu.h
    help_mp-it.h
    help_mp-ja.h
    help_mp-ko.h
    help_mp-mk.h
    help_mp-nl.h
    help_mp-no.h
    help_mp-pl.h
    help_mp-pt_BR.h
    help_mp-ro.h
    help_mp-ru.h
  libaf/
  libao2/
  libmpcodecs/
  libmpdemux/
  loader/
  osdep/
  AUTHORS
  DirDisplay.c
  DirDisplay.h
  DirList.c
  DirList.h
  FontDisplay.c
  FontDisplay.h
  LICENSE
  Makefile
  bswap.h
  codec-cfg.c
  codec-cfg.h
  config.h
  config.mak
  csource.lst
  cx25874.h
  drawcontrol.c
  drawcontrol.h
  dualcpu.h
  filelistview.c
  filelistview.h
  find_sub.c
  g2player.h
  get_path.c
  glock.c
  glock.h
  guictrl.c
  guictrl.h
  gv.c
  gvlib_export.h
  help_mp.h
  i2c.h
  imgNumber.h
  imgbinary.h
  m_config.c
  m_config.h
  m_option.c
  m_option.h
  m_struct.c
  m_struct.h
  mangle.h
  mixer.c
  mixer.h
  mmsp2_940_if.c
  mmsp2_if.h
  mp_msg.c
  mp_msg.h
  mplayer.c
  mplayer.h
  open2x-mplayer.sh
  rtc_1024_table.h
  subdisp.c
  subdisp.h
  subreader.c
  subreader.h
  typed.h
  version.h
  vpp.h
  vpts_q.c
  wincetype.h