这篇教程C++ FreeData函数代码示例写得很实用,希望能帮到您。
本文整理汇总了C++中FreeData函数的典型用法代码示例。如果您正苦于以下问题:C++ FreeData函数的具体用法?C++ FreeData怎么用?C++ FreeData使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。 在下文中一共展示了FreeData函数的27个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。 示例1: FreeData/*========================idSoundSample_XAudio2::MakeDefault========================*/void idSoundSample_XAudio2::MakeDefault(){ FreeData(); static const int DEFAULT_NUM_SAMPLES = 256; timestamp = FILE_NOT_FOUND_TIMESTAMP; loaded = true; memset( &format, 0, sizeof( format ) ); format.basic.formatTag = idWaveFile::FORMAT_PCM; format.basic.numChannels = 1; format.basic.bitsPerSample = 16; format.basic.samplesPerSec = XAUDIO2_MIN_SAMPLE_RATE; format.basic.blockSize = format.basic.numChannels * format.basic.bitsPerSample / 8; format.basic.avgBytesPerSec = format.basic.samplesPerSec * format.basic.blockSize; assert( format.basic.blockSize == 2 ); totalBufferSize = DEFAULT_NUM_SAMPLES * 2; short* defaultBuffer = ( short* )AllocBuffer( totalBufferSize, GetName() ); for( int i = 0; i < DEFAULT_NUM_SAMPLES; i += 2 ) { defaultBuffer[i + 0] = SHRT_MIN; defaultBuffer[i + 1] = SHRT_MAX; } buffers.SetNum( 1 ); buffers[0].buffer = defaultBuffer; buffers[0].bufferSize = totalBufferSize; buffers[0].numSamples = DEFAULT_NUM_SAMPLES; buffers[0].buffer = GPU_CONVERT_CPU_TO_CPU_CACHED_READONLY_ADDRESS( buffers[0].buffer ); playBegin = 0; playLength = DEFAULT_NUM_SAMPLES;}
开发者ID:Yetta1,项目名称:OpenTechBFG,代码行数:42,
示例2: Clearvoid emDirEntry::Clear(){ if (!--Data->RefCount) FreeData(); Data=&EmptyData;}
开发者ID:ackalker,项目名称:eaglemode,代码行数:5,
示例3: FreeDataSplineData::~SplineData(){ FreeData();}
开发者ID:innovatelogic,项目名称:ilogic-vm,代码行数:4,
示例4: StopCapture ~MMDeviceAudioSource() { StopCapture(); FreeData(); SafeRelease(mmEnumerator); }
开发者ID:Marcleiton,项目名称:OBS,代码行数:6,
示例5: FreeDataPlayer::~Player(){ FreeData();}
开发者ID:tweimer,项目名称:miranda-ng,代码行数:4,
示例6: FreeData/*================idProgram::~idProgram================*/idProgram::~idProgram(){ FreeData();}
开发者ID:revelator,项目名称:MHDoom,代码行数:9,
示例7: AllocData void AllocData() { FreeData(); m_pKVData = new KeyValues( "gamestats" ); }
开发者ID:AluminumKen,项目名称:hl2sb-src,代码行数:5,
示例8: FreeDataProgram::~Program(){ FreeData();}
开发者ID:UberGames,项目名称:EF2GameSource,代码行数:4,
示例9: FreeDataDataNode::~DataNode(){ FreeData();}
开发者ID:151706061,项目名称:ParaView,代码行数:4,
示例10: InitEnsvoid InitEns (enkf_struct ens){ int ne; pihm_struct pihm; N_Vector CV_Y; /* State Variables Vector */ int nsv; int i, j; char outputdir[MAXSTRING]; outputdir[0] = '/0'; pihm = (pihm_struct)malloc (sizeof *pihm); ReadAlloc (project, pihm); /* problem size */ nsv = 3 * pihm->numele + 2 * pihm->numriv; CV_Y = N_VNew_Serial (nsv); Initialize (pihm, CV_Y); MapOutput (project, pihm, outputdir); ens->numele = pihm->numele; ens->numriv = pihm->numriv; ens->ascii = pihm->ctrl.ascii; /* Initialize ensemble members */ ne = ens->ne; ens->member = (ensmbr_struct *) malloc (ne * sizeof (ensmbr_struct)); /* * Define variable controls: vairable names, variable dimension, etc. */ MapVar (ens->var, ens->numele, ens->numriv); InitOper (pihm, ens); printf("Ensemble members: %d/n", ne); printf("Default observation cycle: %-d hour(s)/n", ens->interval / 3600); printf("Observations:"); if (ens->nobs == 0) { printf(" none"); } else { for (i = 0; i < ens->nobs - 1; i++) { printf(" %s,", ens->obs[i].name); } printf(" %s/n", ens->obs[ens->nobs - 1].name); } for (i = 0; i < ne; i++) { for (j = 0; j < MAXVAR; j++) { if (ens->var[j].dim > 0) { ens->member[i].var[j] = (double *) malloc (ens->var[j].dim * sizeof(double)); } } } N_VDestroy_Serial (CV_Y); FreeData (pihm); free (pihm);}
开发者ID:DachengXiao,项目名称:MM-PIHM-EnKF,代码行数:74,
示例11: FreeData// Like ReloadStrings, but clears all the strings before reloadingvoid FStringTable::ResetStrings (){ FreeData (); LoadStrings (LumpNum, -1, false);}
开发者ID:JohnnyonFlame,项目名称:odamex,代码行数:6,
示例12: FreeDataotG711Encoder::~otG711Encoder(){ FreeData();}
开发者ID:simisu,项目名称:oneteam,代码行数:4,
示例13: progress_callback/** * Loads elevation from a USGS DEM file. * * Some non-standard variations of the DEM format are supported. * * You should call SetupLocalCS() after loading if you will be doing * heightfield operations on this grid. * * /returns /c true if the file was successfully opened and read. */bool vtElevationGrid::LoadFromDEM(const char *szFileName, bool progress_callback(int), vtElevError *err){ // Free buffers to prepare to receive new data FreeData(); if (progress_callback != NULL) progress_callback(0); FILE *fp = vtFileOpen(szFileName,"rb"); if (!fp) // Cannot Open File { SetError(err, vtElevError::FILE_OPEN, "Couldn't open file '%s'", szFileName); return false; } // check for version of DEM format int iRow, iColumn; char buffer[158]; fseek(fp, 864, 0); if (fread(buffer, 144, 1, fp) != 1) { SetError(err, vtElevError::READ_DATA, "Couldn't read DEM data from '%s'", szFileName); return false; } bool bOldFormat = (strncmp(buffer, " 1 1", 12) == 0); bool bNewFormat = false; bool bFixedLength = true; int iDataStartOffset = 1024; // set here to avoid compiler warning int i, j; if (bOldFormat) iDataStartOffset = 1024; // 1024 is record length else { fseek(fp, 1024, 0); // Check for New Format IConvert(fp, 6, iRow); IConvert(fp, 6, iColumn); if (iRow==1 && iColumn==1) // File OK? { bNewFormat = true; iDataStartOffset = 1024; } else { // might be the Non-fixed-length record format // Record B can start anywhere from 865 to 1023 // Record B is identified by starting with the row/column // of its first profile, " 1 1" fseek(fp, 865, 0); if (fread(buffer, 158, 1, fp) != 1) { SetError(err, vtElevError::READ_DATA, "Couldn't read DEM data from '%s'", szFileName); fclose(fp); return false; } for (i = 0; i < 158-12; i++) { if (!strncmp(buffer+i, " 1 1", 12)) { // Found it bFixedLength = false; iDataStartOffset = 865+i; break; } } if (i == 158-12) { // Not a DEM file SetError(err, vtElevError::READ_DATA, "Couldn't read DEM data from '%s'", szFileName); fclose(fp); return false; } } } // Read the embedded DEM name char szName[41]; fseek(fp, 0, 0); if (fgets(szName, 41, fp) == NULL) return false; int len = strlen(szName); // trim trailing whitespace while (len > 0 && szName[len-1] == ' ') { szName[len-1] = 0; len--; } m_strOriginalDEMName = szName; fseek(fp, 156, 0);//.........这里部分代码省略.........
开发者ID:kamalsirsa,项目名称:vtp,代码行数:101,
示例14: emDirEntry::~emDirEntry(){ if (!--Data->RefCount) FreeData();}
开发者ID:ackalker,项目名称:eaglemode,代码行数:4,
示例15: definedvoid emDirEntry::PrivLoad(const emString & path, const emString & name){#if defined(_WIN32) WIN32_FILE_ATTRIBUTE_DATA fad; BOOL b; if (!--Data->RefCount) FreeData(); Data=new SharedData; Data->Path=path; Data->Name=name; Data->TargetPath=Data->Path; if (em_stat(Data->Path,&Data->Stat)) { Data->LStatErrNo=errno; Data->StatErrNo=errno; memset(&Data->Stat,0,sizeof(struct em_stat)); } Data->Owner=emString::Format("%u",Data->Stat.st_uid); Data->Group=emString::Format("%u",Data->Stat.st_gid); b=GetFileAttributesEx(Data->Path.Get(),GetFileExInfoStandard,&fad); Data->WndsFileAttributes = b ? fad.dwFileAttributes : 0; Data->Hidden=(Data->WndsFileAttributes&FILE_ATTRIBUTE_HIDDEN)!=0;#else char tmp[1024];#if !defined(ANDROID) struct passwd pwbuf; struct group grbuf;#endif struct passwd * pw; struct group * gr; int i; if (!--Data->RefCount) FreeData(); Data=new SharedData; Data->Path=path; Data->Name=name; Data->TargetPath=Data->Path; if (em_lstat(Data->Path,&Data->Stat)) { Data->LStatErrNo=errno; if (em_stat(Data->Path,&Data->Stat)) { Data->StatErrNo=errno; memset(&Data->Stat,0,sizeof(struct em_stat)); } else { Data->LStat=(struct em_stat*)malloc(sizeof(struct em_stat)); memset(Data->LStat,0,sizeof(struct em_stat)); } } else if (S_ISLNK(Data->Stat.st_mode)) { Data->LStat=(struct em_stat*)malloc(sizeof(struct em_stat)); memcpy(Data->LStat,&Data->Stat,sizeof(struct em_stat)); if (em_stat(Data->Path,&Data->Stat)) { Data->StatErrNo=errno; memset(&Data->Stat,0,sizeof(struct em_stat)); } i=readlink(Data->Path,tmp,sizeof(tmp)-1); if (i<0) { Data->TargetPathErrNo=errno; tmp[0]=0; } else { tmp[i]=0; } Data->TargetPath=tmp; }#if defined(ANDROID) pw=getpwuid(Data->Stat.st_uid); i=0;#else i=getpwuid_r(Data->Stat.st_uid,&pwbuf,tmp,sizeof(tmp),&pw);#endif if (i==0 && pw && pw->pw_name) Data->Owner=pw->pw_name; else Data->Owner=emString::Format("%lu",(unsigned long)Data->Stat.st_uid);#if defined(ANDROID) gr=getgrgid(Data->Stat.st_gid); i=0;#else i=getgrgid_r(Data->Stat.st_gid,&grbuf,tmp,sizeof(tmp),&gr);#endif if (i==0 && gr && gr->gr_name) Data->Group=gr->gr_name; else Data->Group=emString::Format("%lu",(unsigned long)Data->Stat.st_gid); Data->Hidden=(Data->Name[0]=='.');#endif}
开发者ID:ackalker,项目名称:eaglemode,代码行数:86,
示例16: FreeData/*========================idSoundSample_XAudio2::Load========================*/void idSoundSample_XAudio2::LoadResource() { FreeData(); if ( idStr::Icmpn( GetName(), "_default", 8 ) == 0 ) { MakeDefault(); return; } if ( s_noSound.GetBool() ) { MakeDefault(); return; } loaded = false; for ( int i = 0; i < 2; i++ ) { idStrStatic< MAX_OSPATH > sampleName = GetName(); if ( ( i == 0 ) && !sampleName.Replace( "/vo/", va( "/vo/%s/", sys_lang.GetString() ) ) ) { i++; } idStrStatic< MAX_OSPATH > generatedName = "generated/"; generatedName.Append( sampleName ); { if ( s_useCompression.GetBool() ) { sampleName.Append( ".msadpcm" ); } else { sampleName.Append( ".wav" ); } generatedName.Append( ".idwav" ); } loaded = LoadGeneratedSample( generatedName ) || LoadWav( sampleName ); if ( !loaded && s_useCompression.GetBool() ) { sampleName.SetFileExtension( "wav" ); loaded = LoadWav( sampleName ); } if ( loaded ) { if ( cvarSystem->GetCVarBool( "fs_buildresources" ) ) { fileSystem->AddSamplePreload( GetName() ); WriteAllSamples( GetName() ); if ( sampleName.Find( "/vo/" ) >= 0 ) { for ( int i = 0; i < Sys_NumLangs(); i++ ) { const char * lang = Sys_Lang( i ); if ( idStr::Icmp( lang, ID_LANG_ENGLISH ) == 0 ) { continue; } idStrStatic< MAX_OSPATH > locName = GetName(); locName.Replace( "/vo/", va( "/vo/%s/", Sys_Lang( i ) ) ); WriteAllSamples( locName ); } } } return; } } if ( !loaded ) { // make it default if everything else fails MakeDefault(); } return;}
开发者ID:Deepfreeze32,项目名称:taken,代码行数:70,
示例17: FreeDataCTextureString::~CTextureString(){ FreeData();}
开发者ID:Joincheng,项目名称:lithtech,代码行数:4,
示例18: FreeData ~CGamestatsData() { FreeData(); }
开发者ID:AluminumKen,项目名称:hl2sb-src,代码行数:4,
示例19: FreeData// Discards temporary data.void Perspective::ReleaseIntermediate(){ FreeData();}
开发者ID:gamedevtech,项目名称:breeze-2,代码行数:5,
示例20: FreeDataCTextureStringImage::~CTextureStringImage(){ FreeData();}
开发者ID:Joincheng,项目名称:lithtech,代码行数:4,
示例21: FreeDataPokerData::~PokerData(){ FreeData(true); // Free data close database. }
开发者ID:zqrtalent,项目名称:MercuryUI,代码行数:3,
示例22: FreeData/*================idDeclAF::idDeclAF================*/idDeclAF::idDeclAF( void ) { FreeData();}
开发者ID:anonreclaimer,项目名称:morpheus,代码行数:8,
示例23: FreeDataCIrssMessage::~CIrssMessage(){ FreeData();}
开发者ID:Hooksdena36,项目名称:xbmc,代码行数:4,
示例24: FreeDataMJsonValue::~MJsonValue(){ FreeData();}
开发者ID:Maximus5,项目名称:ConEmu,代码行数:4,
示例25: FreeDataFStringTable::~FStringTable (){ FreeData ();}
开发者ID:Xeomuz,项目名称:Doom-Port-Source-Code,代码行数:4,
示例26: FreeData ~ProfileNodeInfo() { FreeData(); }
开发者ID:373137461,项目名称:rtmp_streamer_for_windows,代码行数:4,
示例27: FreeDataotSpeexDecoder::~otSpeexDecoder(){ FreeData();}
开发者ID:GYGit,项目名称:oneteam,代码行数:4,
注:本文中的FreeData函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 C++ FreeDir函数代码示例 C++ FreeContextBuffer函数代码示例 |