コード例 #1
0
void MiscModule_Impl::playSysConfigSound()
{
	module::TTConfig* pTTConfig = module::getSysConfigModule()->getSystemConfig();
	if (!pTTConfig)
	{
		return;
	}
	if (pTTConfig->sysBaseFlag & module::BASE_FLAG_NOSOUNDWHENMSG)
	{
		if (pTTConfig->sysSoundTypeBaseFlag == module::MUSIC_SOUND_DINGDONG)
		{
			playSound(getDataDir() + _T("Sound\\duoduo_dingdong.wav"));
		}
		else if (pTTConfig->sysSoundTypeBaseFlag == module::MUSIC_SOUND_KEYBOARD)
		{
			playSound(getDataDir() + _T("Sound\\duoduo_keyboard.wav"));
		}
		else if (pTTConfig->sysSoundTypeBaseFlag == module::MUSIC_SOUND_DINGLIN)
		{
			playSound(getDataDir() + _T("Sound\\message.wav"));
		}
		else if (pTTConfig->sysSoundTypeBaseFlag == module::MUSIC_SOUND_CALLMSG)
		{
			playSound(getDataDir() + _T("Sound\\duoduo_callmsg.wav"));
		}
	}
}
コード例 #2
0
void Environment::initializeConfig() {
  try {
    config = new ConfigFileParser(
        Path::FromUnixPath(getDataDir() + "/private.cfg"));
  } catch (const std::invalid_argument& e) {
    config = new ConfigFileParser(
        Path::FromUnixPath(getDataDir() + "/main.cfg"));
  }
}
コード例 #3
0
FilePtr FileSystem::getFile (const std::string& filename) const
{
	if (!getAbsoluteWritePath().empty()) {
		const std::string path = getAbsoluteWritePath() + getDataDir() + filename;
		SDL_RWops *rwopsLocal = createRWops(path);
		if (rwopsLocal != nullptr) {
			FilePtr ptr(new File(rwopsLocal, path));
			return ptr;
		}
	}
	const std::string path = getDataDir() + filename;
	SDL_RWops *rwops = createRWops(path);
	FilePtr ptr(new File(rwops, path));
	return ptr;
}
コード例 #4
0
ファイル: Config.cpp プロジェクト: AlfiyaZi/flamerobin
wxString Config::getHomePath() const
{
    if (!homePathM.empty())
        return homePathM + wxFileName::GetPathSeparator();
    else
        return getDataDir() + wxFileName::GetPathSeparator();
}
コード例 #5
0
ファイル: npc_dengon.c プロジェクト: beijunyi/custom-sa
static void NPC_DengonWriteString( int meindex, int talker, int id, char *str )
{
    char filename[256];
    snprintf(filename, sizeof(filename), "%s/%s/%d_%d_%d", getDataDir(), DENGONFILEDIR, CHAR_getInt(meindex, CHAR_FLOOR), CHAR_getInt(meindex, CHAR_X), CHAR_getInt(meindex, CHAR_Y));

    FILE *f;
    int line;
	struct  tm tm1;

    
    f = fopen(filename, "r+");
    if( !f ) return;

    line = id%DENGONFILELINENUM;
    fseek( f, line*DENGONFILEENTRYSIZE, SEEK_SET );

    fprintf( f, "%010d:",id );
	memcpy( &tm1, localtime( (time_t *)&NowTime.tv_sec), sizeof( tm1));
    fprintf( f, "%s\n                             %2d/%02d %2d:%02d %s%c", 
    		str, 
    		tm1.tm_mon +1, tm1.tm_mday, tm1.tm_hour, tm1.tm_min,
    		CHAR_getChar( talker, CHAR_NAME),
    		'\0');
    fclose(f);
}
コード例 #6
0
void loadHistory(string subreddit, vector<HistoryItem>& history)
{
	string dataDir = getDataDir();
	string xmlFile = dataDir + DIR_SEP + subreddit;

	TiXmlDocument doc(xmlFile.c_str());
	if (doc.LoadFile())
	{
		TiXmlElement* root = doc.RootElement();
		if (root)
		{
			TiXmlElement* historyNode = root->FirstChildElement("history");
			while (historyNode)
			{
				HistoryItem itm;

				itm.id   = historyNode->Attribute("id");
				itm.date = atoi(historyNode->Attribute("date"));

				history.push_back(itm);
				
				historyNode = historyNode->NextSiblingElement("history");
			}
		}
	}
}
コード例 #7
0
ファイル: Dynmx.cpp プロジェクト: buhrmann/dynmx
//----------------------------------------------------------------------------------------------------------------------
std::string Globals::getDataDirName()
{
  std::string path = getDataDir();
  if (path[path.size()-1] == '/')
    path = path.substr(0, path.size()-1);
  return path.substr(path.rfind('/') + 1);
}
コード例 #8
0
void Settings::saveSettings() const {
  QFile cfgFile(getDataDir().absoluteFilePath(QCoreApplication::applicationName() + ".cfg"));
  if (cfgFile.open(QIODevice::WriteOnly | QIODevice::Truncate)) {
    QJsonDocument cfg_doc(m_settings);
    cfgFile.write(cfg_doc.toJson());
    cfgFile.close();
  }
}
コード例 #9
0
ファイル: brewtarget.cpp プロジェクト: b1v1r/brewtarget
bool Brewtarget::ensureDirectoriesExist()
{
   bool success;
   QDir dir;

   QString errTitle(QObject::tr("Directory Problem"));
   QString errText(QObject::tr("\"%1\" cannot be read."));

   // Check data dir
   dir.setPath(getDataDir());
   if( ! dir.exists() || ! dir.isReadable() )
   {
      QMessageBox::information(
         0,
         errTitle,
         errText.arg(dir.path())
      );
      return false;
   }

   // Check doc dir
   dir.setPath(getDocDir());
   if( ! dir.exists() || ! dir.isReadable() )
   {
      QMessageBox::information(
         0,
         errTitle,
         errText.arg(dir.path())
      );
      return false;
   }

   // Check config dir
   dir.setPath(getConfigDir(&success));
   if( !success || ! dir.exists() || ! dir.isReadable() )
   {
      QMessageBox::information(
         0,
         errTitle,
         errText.arg(dir.path())
      );
      return false;
   }

   // Check/create user data directory
   dir.setPath(getUserDataDir());
   if( !dir.exists() && !dir.mkpath(".") )
   {
      QMessageBox::information(
         0,
         errTitle,
         errText.arg(dir.path())
      );
      return false;
   }

   return true;
}
コード例 #10
0
ファイル: Helpers.cpp プロジェクト: TeemuAhola/sailelfcloud
void Helpers::initPython()
{
    const QString pythonEggCachePath = getDataDir() + "/python-eggs";
    qDebug() << "Setting egg cache to" << pythonEggCachePath;
    QDir dir;
    dir.mkpath(pythonEggCachePath);
    QFile::setPermissions(pythonEggCachePath, QFileDevice::ReadOwner | QFileDevice::WriteOwner | QFileDevice::ExeOwner);
    setenv("PYTHON_EGG_CACHE", pythonEggCachePath.toStdString().c_str(), 1); // need to use standard lib since QProcessEnvironment does not work
}
コード例 #11
0
ファイル: brewtarget.cpp プロジェクト: b1v1r/brewtarget
void Brewtarget::setLanguage(QString twoLetterLanguage)
{
   currentLanguage = twoLetterLanguage;
   qApp->removeTranslator(btTrans);

   QString filename = QString("bt_%1").arg(twoLetterLanguage);
   QString dir = QString("%1translations_qm/").arg(getDataDir());
   if( btTrans->load( filename, dir ) )
      qApp->installTranslator(btTrans);

}
コード例 #12
0
ファイル: npc_dengon.c プロジェクト: beijunyi/custom-sa
static int NPC_DengonReadString( int meindex, int id, char *str )
{
    char filename[256];
    snprintf(filename, sizeof(filename), "%s/%s/%d_%d_%d", getDataDir(), DENGONFILEDIR, CHAR_getInt(meindex, CHAR_FLOOR), CHAR_getInt(meindex, CHAR_X), CHAR_getInt(meindex, CHAR_Y));
    char readbuf[DENGONFILEENTRYSIZE*MESSAGEINONEWINDOW];

    FILE *f;
    int maxid, i, sendid, len;
    char *writeptr, *readptr;


    maxid = CHAR_getWorkInt( meindex, CHAR_WORKDENGONMAXID );
    if( id > maxid ) id = maxid;
    sendid = id - MESSAGEINONEWINDOW + 1;

    if( sendid < maxid - DENGONFILELINENUM + 1 ){
        sendid = maxid - DENGONFILELINENUM + 1;
    }

    if( sendid < 1 ) sendid = 1;

    writeptr = str;
	strcpy( writeptr, "                         传言板\n");
    len = strlen(writeptr);
    writeptr += len;

    f = fopen( filename, "r" );
    if( !f ) return FALSE;
{
	char	buf[DENGONFILEENTRYSIZE];
	int		wptr = 0;
	readbuf[0] = '\0';
	for( i = 0; i < MESSAGEINONEWINDOW; i ++ ) {
	    fseek( f, ((sendid+i)%DENGONFILELINENUM)*DENGONFILEENTRYSIZE, SEEK_SET );
	    fread( buf, sizeof(char),
	           DENGONFILEENTRYSIZE , f );
		memcpy( &readbuf[wptr], buf,sizeof( buf));
		wptr += DENGONFILEENTRYSIZE;
	}
}
    fclose(f);
    readptr = readbuf + DENGONFILECOUNTERSIZE;
    for( i=0;i<MESSAGEINONEWINDOW;i++ ){
        snprintf( writeptr, DENGONFILESTRINGSIZE, "%s\n", readptr );
        writeptr+= strlen(readptr)+1; 
        readptr+=DENGONFILEENTRYSIZE;
    }
    
    return TRUE;

}
コード例 #13
0
TEST(InterpolatorTest, ReferenceAccuracy)
{
    double MAX_DIF = 1.0;
    double MAX_MEAN_DIF = 1.0 / 256.0;
    string dir = getDataDir() + "cv/sparse_match_interpolator";

    Mat src = imread(getDataDir() + "cv/optflow/RubberWhale1.png",IMREAD_COLOR);
    ASSERT_FALSE(src.empty());

    Mat ref_flow = readOpticalFlow(dir + "/RubberWhale_reference_result.flo");
    ASSERT_FALSE(ref_flow.empty());

    ifstream file((dir + "/RubberWhale_sparse_matches.txt").c_str());
    float from_x,from_y,to_x,to_y;
    vector<Point2f> from_points;
    vector<Point2f> to_points;

    while(file >> from_x >> from_y >> to_x >> to_y)
    {
        from_points.push_back(Point2f(from_x,from_y));
        to_points.push_back(Point2f(to_x,to_y));
    }

    cv::setNumThreads(cv::getNumberOfCPUs());
    Mat res_flow;

    Ptr<EdgeAwareInterpolator> interpolator = createEdgeAwareInterpolator();
    interpolator->setK(128);
    interpolator->setSigma(0.05f);
    interpolator->setUsePostProcessing(true);
    interpolator->setFGSLambda(500.0f);
    interpolator->setFGSSigma(1.5f);
    interpolator->interpolate(src,from_points,Mat(),to_points,res_flow);

    EXPECT_LE(cv::norm(res_flow, ref_flow, NORM_INF), MAX_DIF);
    EXPECT_LE(cv::norm(res_flow, ref_flow, NORM_L1) , MAX_MEAN_DIF*res_flow.total());
}
コード例 #14
0
ファイル: npc_dengon.c プロジェクト: beijunyi/custom-sa
int NPC_DengonInit( int meindex )
{
    char filename[256];
    snprintf(filename, sizeof(filename), "%s/%s/%d_%d_%d", getDataDir(), DENGONFILEDIR, CHAR_getInt( meindex, CHAR_FLOOR ), CHAR_getInt( meindex, CHAR_X ), CHAR_getInt( meindex, CHAR_Y ));

    char tmp[256];
    FILE *f;
    int i,j;
    int id, maxid;

    CHAR_setInt( meindex, CHAR_WHICHTYPE, CHAR_TYPEDENGON );


    if( ! (f=fopen( filename, "r" )) ){
        f = fopen( filename, "w" );
        if( f ){
        }else{
            print( "ERROR:Can't create Dengonfile %s!\n",filename );
            return FALSE;
        }
        for( j = 0; j < DENGONFILELINENUM; j++ ){
            fwrite( "0000000000:", sizeof(char),
                    DENGONFILECOUNTERSIZE, f);
            for( i=0;i<DENGONFILESTRINGSIZE;i++ ){
                fwrite( "\0", sizeof(char),1, f );
            }
            fwrite( "\n", sizeof(char), 1, f);
        }
    }

    id =0;
    maxid = 0;
    
    for( i = 0; i < DENGONFILELINENUM; i++ ){
        fseek( f, i*DENGONFILEENTRYSIZE, SEEK_SET );
        fread( tmp, sizeof(char), DENGONFILECOUNTERSIZE, f );
        tmp[DENGONFILECOUNTERSIZE-1] = '\0';
        if( (id=atoi(tmp)) > maxid ) {
            maxid = id;
        }
    }

    CHAR_setWorkInt( meindex, CHAR_WORKDENGONMAXID, maxid );
    
    fclose(f);
    return TRUE;
}
コード例 #15
0
ファイル: FileSystem.cpp プロジェクト: LibreGames/caveexpress
DirectoryEntries FileSystem::listDirectory (const std::string& basedir, const std::string& subdir) const
{
#if DIRLIST_NOT_SUPPORTED
	return Singleton<GameRegistry>::getInstance().getGame()->listDirectory(basedir, subdir);
#else
	DirectoryEntries entriesAll;
	const std::string sysWritePath = getAbsoluteWritePath() + basedir;
	if (!sysWritePath.empty())
		entriesAll = System.listDirectory(sysWritePath, subdir);

	const std::string dataDir = getDataDir() + basedir;
	const DirectoryEntries entries = System.listDirectory(dataDir, subdir);
	for (const std::string& entry : entries) {
		entriesAll.push_back(entry);
	}
	std::sort(entriesAll.begin(), entriesAll.end());
	entriesAll.erase(std::unique(entriesAll.begin(), entriesAll.end()), entriesAll.end());
	return entriesAll;
#endif
}
コード例 #16
0
void saveHistory(string subreddit, vector<HistoryItem>& history)
{
	string dataDir = getDataDir();
	string xmlFile = dataDir + DIR_SEP + subreddit;

	TiXmlDocument doc(xmlFile.c_str());
	
	TiXmlElement root("histories");

	for (int i = 0; i < (int)history.size(); i++)
	{
		TiXmlElement historyNode("history");

		historyNode.SetAttribute("id", history[i].id.c_str());
		historyNode.SetAttribute("date", (int)history[i].date);

		root.InsertEndChild(historyNode);
	}
	doc.InsertEndChild(root);

	doc.SaveFile();
}
コード例 #17
0
DirectoryEntries FileSystem::listDirectory (const std::string& basedir, const std::string& subdir)
{
	DirectoryEntries entriesAll;

	// TODO: register this in the app
#if DIRLIST_NOT_SUPPORTED
#include "dir.h"
#endif

	const std::string sysWritePath = getAbsoluteWritePath() + basedir;
	if (!sysWritePath.empty())
		entriesAll = System.listDirectory(sysWritePath, subdir);

	const std::string dataDir = getDataDir() + basedir;
	const DirectoryEntries entries = System.listDirectory(dataDir, subdir);
	for (DirectoryEntriesIter i = entries.begin(); i != entries.end(); ++i) {
		entriesAll.push_back(*i);
	}
	std::sort(entriesAll.begin(), entriesAll.end());
	entriesAll.erase(std::unique(entriesAll.begin(), entriesAll.end()), entriesAll.end());
	return entriesAll;
}
コード例 #18
0
ファイル: mywebpage.cpp プロジェクト: keystore00/AskMona-qt
MyWebPage::MyWebPage(QObject *parent) :
  QWebPage(parent)
{
  auto pNAM = networkAccessManager();
  QNetworkDiskCache * pNDC = new QNetworkDiskCache(parent);
  pNDC->setCacheDirectory(getDataDir()+"/cache");

  qint64 size = pNDC->cacheSize();
  size = pNDC->maximumCacheSize();
  const qint64 desired = 1024*1024*1024;

  if (size < desired) {
    pNDC->setMaximumCacheSize(desired);
    size = pNDC->maximumCacheSize();
  }

  QString dir = pNDC->cacheDirectory();
  pNAM->setCache(pNDC);

  auto cj = new CookieJar(parent);
  pNAM->setCookieJar(cj);
}
コード例 #19
0
ファイル: MPublishEvent.cpp プロジェクト: Keedu/maratis
MPackage openProjectPackage(const char* projName)
{
	MEngine* engine = MEngine::getInstance();
	MSystemContext* system = engine->getSystemContext();

	char projFile[256];
	getLocalFilename(projFile, system->getWorkingDirectory(), projName);
	char* ext = strstr(projFile, ".mproj");
	if(ext == 0)
	{
		return 0;
	}

	sprintf(ext, ".npk");
	char packFile[256];

	getGlobalFilename(packFile, getDataDir(), projFile);

	MPackageManager* packageManager = engine->getPackageManager();
	MPackage package = packageManager->openPackage(packFile);

	return package;
}
コード例 #20
0
ファイル: MPublishEvent.cpp プロジェクト: Keedu/maratis
	void	execute(const char* projName)
	{
		MEngine* engine = MEngine::getInstance();
		MSystemContext* system = engine->getSystemContext();

		char filename[256];
		char destFilename[256];

#ifdef WIN32
		const char* pluginName = "Game.dll";
#elif __APPLE__
		const char* pluginName = "Game.dylib";
#elif linux
		const char* pluginName = "Game.so";
#endif

		getGlobalFilename(filename, system->getWorkingDirectory(), pluginName);
		getGlobalFilename(destFilename, getDataDir(), pluginName);

		if(isFileExist(filename))
		{
			copyFile(filename, destFilename);
		}
	}
コード例 #21
0
ファイル: cookiejar.cpp プロジェクト: keystore00/AskMona-qt
CookieJar::~CookieJar()
{
  saveCookies(getDataDir()+fname);
}
コード例 #22
0
ファイル: UGUITest.cpp プロジェクト: m-angelov/ugene
namespace U2 {

QString getTestDir(){
    bool ok;
    int i = qgetenv("UGENE_GUI_TEST_SUITE_NUMBER").toInt(&ok);
#ifdef Q_OS_MAC
    if ( ok && i>1){
        return QString("../../../../../../test%1/").arg(i-1);
    }else{
        return QString("../../../../../../test/");
    }
#else
    if ( ok && i>1){
        return QString("../../test%1/").arg(i-1);
    }else{
        return QString("../../test/");
    }
#endif
}

QString getDataDir(){
    bool ok;
    int i = qgetenv("UGENE_GUI_TEST_SUITE_NUMBER").toInt(&ok);
#ifdef Q_OS_MAC
    if ( ok && i>1 ){
        return QString("data%1/").arg(i-1);
    }else{
        return QString("data/");
    }
#else
    if ( ok && i>1){
        return QString("../../data%1/").arg(i-1);
    }else{
        return QString("../../data/");
    }
#endif
}

QString getScreenshotDir(){
    QString result;
#ifdef Q_OS_MAC
    result = "../../../../../../screenshotFol/";
#else
    QString guiTestOutputDirectory = qgetenv("GUI_TESTING_OUTPUT");
    if(guiTestOutputDirectory.isEmpty()){
        result = QDir::homePath() + "/gui_testing_output/" +
                QDate::currentDate().toString("dd.MM.yyyy") + "/screenshots/";
    }else{
        result = guiTestOutputDirectory + "/gui_testing_output/" +
                QDate::currentDate().toString("dd.MM.yyyy") + "/screenshots/";
    }
#endif
    return result;
}

const QString UGUITest::testDir = getTestDir();
const QString UGUITest::dataDir = getDataDir();
const QString UGUITest::sandBoxDir = testDir + "_common_data/scenarios/sandbox/";
const QString UGUITest::screenshotDir = getScreenshotDir();

} // namespace
コード例 #23
0
void Settings::load() {
  QFile cfgFile(getDataDir().absoluteFilePath(QCoreApplication::applicationName() + ".cfg"));
  if (cfgFile.open(QIODevice::ReadOnly)) {
    m_settings = QJsonDocument::fromJson(cfgFile.readAll()).object();
    cfgFile.close();
    if (!m_settings.contains("walletFile")) {
      m_addressBookFile = getDataDir().absoluteFilePath(QCoreApplication::applicationName() + ".addressbook");
    } else {
      m_addressBookFile = m_settings.value("walletFile").toString();
      m_addressBookFile.replace(m_addressBookFile.lastIndexOf(".wallet"), 7, ".addressbook");
    }

    if (!m_settings.contains(OPTION_LANGUAGE)) {
         m_currentLang = "uk";
    }

    if (!m_settings.contains(OPTION_CONNECTION)) {
         m_connectionMode = "auto";
    }

    if (!m_settings.contains(OPTION_DAEMON_PORT)) {
         m_daemonPort = CryptoNote::RPC_DEFAULT_PORT;
    }

  } else {
    m_addressBookFile = getDataDir().absoluteFilePath(QCoreApplication::applicationName() + ".addressbook");
  }

  if (m_settings.contains(OPTION_LANGUAGE)) {
        m_currentLang = m_settings.value(OPTION_LANGUAGE).toString();
  }

  if (m_settings.contains(OPTION_CONNECTION)) {
        m_connectionMode = m_settings.value(OPTION_CONNECTION).toString();
  }

  if (!m_settings.contains(OPTION_DAEMON_PORT)) {
        m_settings.insert(OPTION_DAEMON_PORT, CryptoNote::RPC_DEFAULT_PORT); // default daemon port
  }

  if (!m_settings.contains("tracking")) {
       m_settings.insert("tracking", false);
  }

  QStringList defaultPoolList;
  defaultPoolList << "pool.brazukcoin.com:3333" << "pool2.democats.org:45570" << "bzk.sberex.com:3333" << "mine.bzk.mypool.online:32350" << "bzk-eu1.miningpool.org.ua:3333";
  if (!m_settings.contains(OPTION_MINING_POOLS)) {
    setMiningPoolList(QStringList() << defaultPoolList);
  } else {
    QStringList poolList = getMiningPoolList();
    Q_FOREACH (const QString& pool, defaultPoolList) {
      if (!poolList.contains(pool)) {
        poolList << pool;
      }
    }
    setMiningPoolList(poolList);
  }

  QStringList defaultNodesList;
  defaultNodesList << "node.brazukcoin.com:32348" << "node.bzk.mypool.online:32348"; // "pool2.democats.org:7671"
  if (!m_settings.contains(OPTION_RPCNODES)) {
    setRpcNodesList(QStringList() << defaultNodesList);
  } else {
    QStringList nodesList = getRpcNodesList();
    Q_FOREACH (const QString& node, defaultNodesList) {
      if (!nodesList.contains(node)) {
        nodesList << node;
      }
    }
    setRpcNodesList(nodesList);
  }

  if (!m_settings.contains("recentWallets")) {
     QStringList recentWallets;
     if (m_settings.contains("walletFile")) {
        recentWallets.prepend(m_settings.value("walletFile").toString());
     } else {
        recentWallets.prepend(getDataDir().absoluteFilePath(QCoreApplication::applicationName() + ".wallet"));
     }
     m_settings.insert("recentWallets", QJsonArray::fromStringList(recentWallets));
  }
}
コード例 #24
0
QString Settings::getWalletFile() const {
  return m_settings.contains("walletFile") ? m_settings.value("walletFile").toString() :
    getDataDir().absoluteFilePath(QCoreApplication::applicationName() + ".wallet");
}
コード例 #25
0
ファイル: paths.cpp プロジェクト: stenyak/motorsport
std::string Paths::vehicle(const std::string & vehicle)
{
    return getDataDir("vehicles/" + vehicle + "/");
}
コード例 #26
0
ファイル: paths.cpp プロジェクト: stenyak/motorsport
std::string Paths::part(const std::string & part)
{
    return getDataDir("parts/" + part + "/");
}
コード例 #27
0
ファイル: paths.cpp プロジェクト: stenyak/motorsport
std::string Paths::world(const std::string & world)
{
    return getDataDir("worlds/");
}
コード例 #28
0
ファイル: paths.cpp プロジェクト: stenyak/motorsport
std::string Paths::area(const std::string & area)
{
    return getDataDir("areas/" + area + "/");
}
コード例 #29
0
CString MiscModule_Impl::getEmotionFilesDir()
{
	return getDataDir() + _T("Emotion\\Face\\");
}
コード例 #30
0
ファイル: cookiejar.cpp プロジェクト: keystore00/AskMona-qt
CookieJar::CookieJar(QObject *parent) :
  QNetworkCookieJar(parent)
{
  loadCookies(getDataDir()+fname);
}