Esempio n. 1
0
int plugin_settings_load(const string fname)
{
	t_sys_file_handle      fhandle;

	if(plugin_settings_init)return 1; /* warning: already initialized */

	fhandle = sys_file_openshare(fname, v_sys_file_forread);

	if(fhandle == v_error_sys_file_open)
	{
point_load_anyway:

		plugin_settings_mem = (char*) sys_mem_alloc(256);
		
		strcpy(plugin_settings_mem, "fennec player 1.0 (fennec 7.1) plug-in settings file\r\n");
		plugin_settings_size = (unsigned int)strlen(plugin_settings_mem);

		plugin_settings_save(fname);

		plugin_settings_init = 1;
		return 1;
	}

	plugin_settings_size = sys_file_getsize(fhandle);

	if(!plugin_settings_size)
	{
		sys_file_close(fhandle);
		goto point_load_anyway;
	}

	plugin_settings_mem = (char*) sys_mem_alloc(plugin_settings_size + 1);
	

	sys_file_read(fhandle, plugin_settings_mem, plugin_settings_size);
	
	plugin_settings_mem[plugin_settings_size] = 0;

	sys_file_close(fhandle);

	plugin_settings_init = 1;
	return 0;
}
Esempio n. 2
0
int encoder_uninitialize(unsigned long id)
{
	if(!pestreams[id].firstwrite)
	{
		sys_file_close(pestreams[id].fhandle);
		Encoder_Interface_exit(pestreams[id].enstate);
		pestreams[id].firstwrite = 1;
	}
	return 1;
}
Esempio n. 3
0
int plugin_settings_save(const string fname)
{
	t_sys_file_handle     fhandle;

	if(!plugin_settings_mem)return -1;

	fhandle = sys_file_createforceshare(fname, v_sys_file_forwrite);
	if(fhandle == v_error_sys_file_create)return -1;

	sys_file_write(fhandle, plugin_settings_mem, plugin_settings_size);

	sys_file_close(fhandle);
	return 0;
}
Esempio n. 4
0
void GamePackFile::closeAllPackFile(){
    for (long i=0;i<(long)m_fileHandleList.size();++i){
        sys_file_close(m_fileHandleList[i]);
        delete m_fileLockList[i];
    }
    m_fileHandleList.clear();
    m_fileLockList.clear();
    m_fileNameList.clear();
    
    for (TFileMap::iterator it=m_dirSet.begin();it!=m_dirSet.end();++it)
        delete it->second;
    m_dirSet.clear();
    for (TFileMap::iterator it=m_fileMap.begin();it!=m_fileMap.end();++it)
        delete it->second;
    m_fileMap.clear();
}
Esempio n. 5
0
bool GamePackFile::loadPackFile(const char* packFileName,const char* prefix){
    //closePackFile();
    void* packFileHandle=sys_file_open_read(packFileName,0);
    if (packFileHandle==csNullFileHandle) return false;
    
    VLock* lock=new VLock();
    if (!loadPackData(packFileHandle,lock,prefix)){
        sys_file_close(packFileHandle);
        delete lock;
        return false;
    }else{
        m_fileHandleList.push_back(packFileHandle);
        m_fileLockList.push_back(lock);
        m_fileNameList.push_back(packFileName);
        return true;
    }
}
Esempio n. 6
0
void GamePackFile::closePackFile(const char* packFileName){
    long del_i=-1;
    for (long i=0;i<(long)m_fileNameList.size();++i){
        if (m_fileNameList[i]==packFileName){
            del_i=i;
            break;
        }
    }
    if (del_i<0) return;
    
    void* packFileHandle=m_fileHandleList[del_i];
    sys_file_close(packFileHandle);
    delete m_fileLockList[del_i];
    m_fileNameList.erase(m_fileNameList.begin()+del_i);
    m_fileHandleList.erase(m_fileHandleList.begin()+del_i);
    m_fileLockList.erase(m_fileLockList.begin()+del_i);
    
    delFileByHandle(m_fileMap,packFileHandle);
    delFileByHandle(m_dirSet,packFileHandle);
}
Esempio n. 7
0
int encoder_uninitialize(unsigned long id)
{
	if(!pestreams[id].firstwrite)
	{
		faacEncClose(pestreams[id].enchandle);

		sys_mem_free(pestreams[id].floatbuffer);
		sys_mem_free(pestreams[id].obuffer);
		sys_mem_free(pestreams[id].cachebuffer);


		if(!pestreams[id].ismp4)
		{
			sys_file_close(pestreams[id].fhandle);
		}else{
			MP4Close(pestreams[id].mp4file);
		}

		pestreams[id].firstwrite = 1;
	}
	return 1;
}