CPI_PlaylistItem_Internal.h
上传用户:tuheem
上传日期:2007-05-01
资源大小:21889k
文件大小:2k
源码类别:

多媒体编程

开发平台:

Visual C++

  1. /*
  2.  * CoolPlayer - Blazing fast audio player.
  3.  * Copyright (C) 2000-2001 Niek Albers
  4.  *
  5.  * This program is free software; you can redistribute it and/or modify
  6.  * it under the terms of the GNU General Public License as published by
  7.  * the Free Software Foundation; either version 2 of the License, or
  8.  * (at your option) any later version.
  9.  *
  10.  * This program is distributed in the hope that it will be useful,
  11.  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  12.  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  13.  * GNU General Public License for more details.
  14.  *
  15.  * You should have received a copy of the GNU General Public License
  16.  * along with this program; if not, write to the Free Software
  17.  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  18.  */
  19. ////////////////////////////////////////////////////////////////////////////////
  20. ////////////////////////////////////////////////////////////////////////////////
  21. //
  22. // Cooler PlaylistItem Internal
  23. //
  24. ////////////////////////////////////////////////////////////////////////////////
  25. ////////////////////////////////////////////////////////////////////////////////
  26. //
  27. typedef enum _CPe_TagType
  28. {
  29.     ttUnread,
  30.     ttNone,
  31.     ttID3v1,
  32.     ttID3v2
  33. } CPe_TagType;
  34. //
  35. ////////////////////////////////////////////////////////////////////////////////
  36. #define CPC_TRACKNUMASTEXTBUFFERSIZE 16
  37. ////////////////////////////////////////////////////////////////////////////////
  38. //
  39. typedef struct _CPs_PlaylistItem
  40. {
  41.     char* m_pcPath;
  42.     char* m_pcFilename;
  43.     BOOL m_bID3Tag_SaveRequired;
  44.     CPe_TagType m_enTagType;
  45.     BOOL m_bDestroyOnDeactivate;
  46.     char m_cTrackStackPos_AsText[16];
  47.     int m_iTrackStackPos;
  48.     char* m_pcArtist;
  49.     char* m_pcAlbum;
  50.     char* m_pcTrackName;
  51.     char* m_pcYear;
  52.     char* m_pcComment;
  53.     unsigned char m_cTrackNum;
  54.     char* m_pcTrackNum_AsText;
  55.     unsigned char m_cGenre;
  56.     char* m_pcTrackLength_AsText;
  57.     unsigned int m_iTrackLength;
  58.     int m_iCookie;
  59.     CP_HPLAYLISTITEM m_hNext;
  60.     CP_HPLAYLISTITEM m_hPrev;
  61. } CPs_PlaylistItem;
  62. //
  63. #define CPLII_DECODEHANDLE(hitem) ((CPs_PlaylistItem*)(hitem))
  64. ////////////////////////////////////////////////////////////////////////////////
  65. ////////////////////////////////////////////////////////////////////////////////
  66. //
  67. CP_HPLAYLISTITEM CPLII_CreateItem(const char* pcPath);
  68. void CPLII_DestroyItem(CP_HPLAYLISTITEM hItem);