Mercurial > audlegacy
view Plugins/Input/modplug/archive/arch_raw.cxx @ 1713:a4d7227231e3 trunk
[svn] More .cpp -> .cxx. Noticed by Chainsaw. Shame on me that I forgot some ;).
author | js |
---|---|
date | Sat, 16 Sep 2006 07:33:28 -0700 |
parents | Plugins/Input/modplug/archive/arch_raw.cpp@37316876ef6e |
children |
line wrap: on
line source
/* Modplug XMMS Plugin * Authors: Kenton Varda <temporal@gauge3d.org> * * This source code is public domain. */ //open() #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> //mmap() #include <unistd.h> #include <sys/mman.h> #include "arch_raw.h" arch_Raw::arch_Raw(const string& aFileName) { mFileDesc = open(aFileName.c_str(), O_RDONLY); struct stat lStat; //open and mmap the file if(mFileDesc == -1) { mSize = 0; return; } fstat(mFileDesc, &lStat); mSize = lStat.st_size; mMap = (uchar*)mmap(0, mSize, PROT_READ, MAP_PRIVATE, mFileDesc, 0); if(!mMap) { close(mFileDesc); mSize = 0; return; } } arch_Raw::~arch_Raw() { if(mSize != 0) { munmap(mMap, mSize); close(mFileDesc); } } bool arch_Raw::ContainsMod(const string& aFileName) { return IsOurFile(aFileName); }