本文整理汇总了C++中FileManager::getCurrentNumberChunk方法的典型用法代码示例。如果您正苦于以下问题:C++ FileManager::getCurrentNumberChunk方法的具体用法?C++ FileManager::getCurrentNumberChunk怎么用?C++ FileManager::getCurrentNumberChunk使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类FileManager
的用法示例。
在下文中一共展示了FileManager::getCurrentNumberChunk方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: callbackNewFile
int callbackNewFile(Packet& p)
{
PacketNewFile pp (p);
//cout << "callbackNewFile" ;
Packet pReturn;
// récupérer singleton serveur
ClientData* cd = PolypeerClient::getInstance()->getClientData();
// -> un filemanager existe deja pour le fichier ? info ifFile et fileName
FileManager* fm = cd->getFileManager(pp.getIdFile());
if (fm == NULL)
{
// création du fileManager
try
{
fm = new FileManager(pp.getFileName().c_str(), pp.getFileSize(), pp.getChunkSize(), pp.getIdFile());
cd->addFileManager(fm);
//cout << "ajout du fichier dans la structure de donnée"<<endl;
} catch (DiskFullException e)
{
// Création du paquet d'erreur
//cout << "full"<<endl;
pReturn = PacketDiskFull (pp.getIdFile());
cd->getConnectionManager()->sendTo(cd->getAddressServ(), pReturn);
return 0;
}
}
// -> récuppérer le chunk courant
pReturn = PacketReady (pp.getIdFile(), fm->getCurrentNumberChunk());
//cout << "chunk désiré n° " << fm->getCurrentNumberChunk() << endl;
// -> créer le nouveau paquet PacketReady
cd->getConnectionManager()->sendTo(cd->getAddressServ(), pReturn);
//cout << "réponse au sendChunk envoyé"<<endl;
return 1;
}
示例2: callbackSendChunk
int callbackSendChunk(Packet& p)
{
PacketSendChunk pp (p);
//cout << "callbackSendChunk";
// récupérer singleton serveur
ClientData* cd = PolypeerClient::getInstance()->getClientData();
Chunk* tmp = pp.getChunk();
if(tmp->isIntegrate())
{
FileManager* fm = cd->getFileManager(tmp->getIdFile());
fm->saveChunk(*tmp);
cd->getConnectionManager()->sendTo(cd->getAddressServ(), PacketChunkReceived(tmp->getIdFile(), fm->getCurrentNumberChunk()));
}
else
{
//cout << "erreur du Chunk reçu :";
//cout << tmp->getNumber()<<endl;
cd->getConnectionManager()->sendTo(cd->getAddressServ(), PacketMd5Error(tmp->getIdFile(), tmp->getNumber()));
}
delete tmp;
return 1;
}