Beispiel #1
0
std::string CStereoscopicsManager::DetectStereoModeByString(const std::string &needle)
{
  std::string stereoMode;
  CStdString searchString(needle);
  CStdStringArray tags;
  StringUtils::ToUpper(searchString);

  CStdString tag( g_advancedSettings.m_stereoscopicflags_sbs );
  if (stereoMode.empty() && !tag.IsEmpty())
  {
    StringUtils::ToUpper(tag);
    StringUtils::SplitString(tag, "|", tags);
    if (StringUtils::ContainsKeyword(searchString, tags))
      stereoMode = "left_right";
  }

  tag = g_advancedSettings.m_stereoscopicflags_tab;
  if (stereoMode.empty() && !tag.IsEmpty())
  {
    StringUtils::ToUpper(tag);
    StringUtils::SplitString(tag, "|", tags);
    if (StringUtils::ContainsKeyword(searchString, tags))
      stereoMode = "top_bottom";
  }

  if (stereoMode.empty())
    stereoMode = "mono";

  CLog::Log(LOGDEBUG, "StereoscopicsManager: Detected stereo mode in string '%s' is '%s'", needle.c_str(), stereoMode.c_str());
  return stereoMode;
}
void CommunicationVoiceLibrary::ScanFolder(const char* folderName, bool recursing)
{
	string folder(PathUtil::MakeGamePath(string(folderName)));
	folder += "/";

	string searchString(folder + "*.xml");

	_finddata_t fd;
	intptr_t handle = 0;

	ICryPak *pPak = gEnv->pCryPak;
	handle = pPak->FindFirst(searchString.c_str(), &fd);

	if (handle > -1)
	{
		do
		{
			if (!strcmp(fd.name, ".") || !strcmp(fd.name, ".."))
				continue;

			if (fd.attrib & _A_SUBDIR)
				ScanFolder(folder + fd.name, true);
			else
				LoadFromFile(folder + fd.name);

		} while (pPak->FindNext(handle, &fd) >= 0);

		pPak->FindClose(handle);
	}

	if (!recursing)
		stl::push_back_unique(m_folderNames, folderName);
}
//-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~
std::string
DatabaseConnection::escapeString(const std::string& _string)
{
    std::string str(_string);

    // Escape the project name
    std::string searchString("\'"); 
    std::string replaceString("\'\'");

    std::string::size_type pos = 0;
    while ((pos = str.find(searchString, pos)) != std::string::npos) 
    {
        str.replace(pos, searchString.size(), replaceString);
        pos += replaceString.size();
    }

    searchString = "\"\"";
    pos = 0;

    while ((pos = str.find(searchString, pos)) != std::string::npos) 
    {
        str.replace(pos, searchString.size(), replaceString);
        pos += replaceString.size();
    }

    return str;
}
Beispiel #4
0
void FindBar::setVisible(bool visible)
{
    QWidget::setVisible(visible);

    if (!m_associatedWebView)
        return;

    if (visible) {
        const QString selectedText = m_associatedWebView->page()->selectedText();
        if (!hasFocus() && !selectedText.isEmpty()) {
            const QString previousText = m_lineEdit->text();
            m_lineEdit->setText(selectedText);

            if (m_lineEdit->text() != previousText) {
                findPrevious();
            } else {
                updateHighlight();
            }
        } else if (selectedText.isEmpty()) {
            emit searchString(m_lineEdit->text());
        }

        m_lineEdit->setFocus();
        m_lineEdit->selectAll();
    } else {
        updateHighlight();

        // Clear the selection
        m_associatedWebView->page()->findText(QString());
    }
}
Beispiel #5
0
	void FileUtils::ListDir(std::string& path, std::vector<std::string> &files)
	{
		if (!IsDirectory(path))
			return;

		files.clear();

		WIN32_FIND_DATA findFileData;
		ZeroMemory(&findFileData, sizeof(WIN32_FIND_DATA));

		std::wstring widePath = UTILS_NS::UTF8ToWide(path);
		std::wstring searchString(widePath + L"\\*");

		HANDLE hFind = FindFirstFile(searchString.c_str(), &findFileData);
		if (hFind != INVALID_HANDLE_VALUE)
		{
			do
			{
				std::wstring wideFilename(findFileData.cFileName);
				if (wideFilename != L"." && wideFilename != L"..")
				{
					std::string filename = UTILS_NS::WideToUTF8(wideFilename);
					files.push_back(filename);
				}

			} while (FindNextFile(hFind, &findFileData));
			FindClose(hFind);
		}
	}
Beispiel #6
0
FindBar::FindBar(QWidget *parent)
    : QWidget(parent)
    , m_lineEdit(new KLineEdit(this))
    , m_matchCase(new QCheckBox(i18n("&Match case"), this))
    , m_highlightAll(new QCheckBox(i18n("&Highlight all"), this))
{
    QHBoxLayout *layout = new QHBoxLayout;

    // cosmetic
    layout->setContentsMargins(2, 0, 2, 0);

    // hide button
    QToolButton *hideButton = new QToolButton(this);
    hideButton->setAutoRaise(true);
    hideButton->setIcon(KIcon("dialog-close"));
    connect(hideButton, SIGNAL(clicked()), this, SLOT(hide()));
    layout->addWidget(hideButton);
    layout->setAlignment(hideButton, Qt::AlignLeft | Qt::AlignTop);

    // label
    QLabel *label = new QLabel(i18n("Find:"));
    layout->addWidget(label);

    // Find Bar signal
    connect(this, SIGNAL(searchString(QString)), this, SLOT(find(QString)));

    // lineEdit, focusProxy
    setFocusProxy(m_lineEdit);
    m_lineEdit->setMaximumWidth(250);
    connect(m_lineEdit, SIGNAL(textChanged(QString)), this, SLOT(find(QString)));
    layout->addWidget(m_lineEdit);

    // buttons
    KPushButton *findNext = new KPushButton(KIcon("go-down"), i18n("&Next"), this);
    KPushButton *findPrev = new KPushButton(KIcon("go-up"), i18n("&Previous"), this);
    connect(findNext, SIGNAL(clicked()), this, SLOT(findNext()));
    connect(findPrev, SIGNAL(clicked()), this, SLOT(findPrevious()));
    layout->addWidget(findNext);
    layout->addWidget(findPrev);

    // Case sensitivity. Deliberately set so this is off by default.
    m_matchCase->setCheckState(Qt::Unchecked);
    m_matchCase->setTristate(false);
    connect(m_matchCase, SIGNAL(toggled(bool)), this, SLOT(matchCaseUpdate()));
    layout->addWidget(m_matchCase);

    // Hightlight All. On by default
    m_highlightAll->setCheckState(Qt::Checked);
    m_highlightAll->setTristate(false);
    connect(m_highlightAll, SIGNAL(toggled(bool)), this, SLOT(updateHighlight()));
    layout->addWidget(m_highlightAll);

    // stretching widget on the left
    layout->addStretch();

    setLayout(layout);

    // we start off hidden
    hide();
}
Beispiel #7
0
		dtn::data::BundleID EMailImapService::extractBID(const std::string &message) {
			try {
				dtn::data::BundleID ret;

				ret.source = searchString("Bundle-Source: ", message);
				ret.timestamp = toInt(searchString("Bundle-Creation-Time: ", message));
				ret.sequencenumber = toInt(searchString("Bundle-Sequence-Number: ", message));
				try {
					ret.fragmentoffset = toInt(searchString("Bundle-Fragment-Offset: ", message));
					ret.setFragment(true);
				}catch(...){}

				return ret;
			}catch(...) {
				throw InvalidConversion("No bundle ID was found");
			}
		}
int main()
{
	int searchString(char str[] , char c);
	char name[] = "Jacob-burning";
	int result = searchString(name,'H');
        printf("Result is : %d\n",result);
	return 0;
}
Beispiel #9
0
//being parse function
string gspOut::parseEndl(stringstream &source) {
	string searchString("\n"); //find string
	string replaceString("\r\n"); //replace srting
	string temp = source.str(); //create temp string from stringstream

    string::size_type pos = 0; //set init position
	//begin string parsing loop to replace \n with \r\n
    while ((pos = temp.find(searchString, pos)) != string::npos ) {
        temp.replace( pos, searchString.size(), replaceString);
        pos += replaceString.size();
    }
    return temp; //return string type
}
Beispiel #10
0
// Formats a string for keyword searching.  We are assuming that the stream operator can split at word boundaries appropriately (\n, space)
// Returns the string, in lowercase, with no punctuation.
string strip(string input)
{
    transform(input.begin(), input.end(), input.begin(), ToLower());

    //TODO: This doesn't properly remove punctuation from the last character of a string.

    string searchString( "abcdefghijklmnopqrstuvwxyz1234567890" );

    string::size_type pos = 0;
    while ( (pos = input.find_first_not_of(searchString, pos)) != string::npos )
    {
        input.replace( pos, 1, "" );
        pos++;
    }

    return input;
}
//-----------------------------------------------------------------------------
nsresult
CPlaylistCommandsManager::FindOrCreateRootCommand(commandobjmap_t *map,
                                                  const nsAString &aSearchString,
                                                  sbIPlaylistCommandsBuilder **_retval)
{
  NS_ENSURE_ARG_POINTER(map);
  NS_ENSURE_ARG_POINTER(_retval);

  nsresult rv;
  nsString searchString(aSearchString);
  nsCOMPtr<sbIPlaylistCommandsBuilder> rootCommand;
  commandobjmap_t::iterator iter = map->find(searchString);
  if (iter != map->end()) {
    // if we find a root playlistCommands object, return it
    rootCommand = iter->second;
  }
  else {
    // if we can't find a root playlistCommands object, make one
    rootCommand = do_CreateInstance
                  ("@songbirdnest.com/Songbird/PlaylistCommandsBuilder;1", &rv);
    NS_ENSURE_SUCCESS(rv, rv);

    // initialize the new playlistcommand with an id of the search param
    rv = rootCommand->Init(searchString);
    NS_ENSURE_SUCCESS(rv, rv);
    (*map)[searchString] = rootCommand;

    // Check if there are listeners waiting for this root command to be created.
    // If there are, add the listeners to the newly created command.
    listenermap_t::iterator it;
    it = m_ListenerMap.find(searchString);
    if (it != m_ListenerMap.end())
    {
      nsCOMArray<sbIPlaylistCommandsListener> listeners = it->second;
      PRUint32 length = listeners.Count();
      for (PRUint32 i=0; i < length; i++)
      {
        rv = rootCommand->AddListener(listeners[i]);
        NS_ENSURE_SUCCESS(rv, rv);
      }
    }
  }
  NS_ADDREF(*_retval = rootCommand);
  return NS_OK;
}
STDMETHODIMP HostDnsService::COMGETTER(SearchStrings)(ComSafeArrayOut(BSTR, aSearchStrings))
{
    RTCritSectEnter(&m_hCritSect);

    com::SafeArray<BSTR> searchString(m_llSearchStrings.size());

    Utf8StrListIterator it;
    int i = 0;
    for (it = m_llSearchStrings.begin(); it != m_llSearchStrings.end(); ++it, ++i)
        (*it).cloneTo(&searchString[i]);


    searchString.detachTo(ComSafeArrayOutArg(aSearchStrings));

    RTCritSectLeave(&m_hCritSect);

    return S_OK;
}
Beispiel #13
0
void FindBar::setVisible(bool visible)
{
    // parent webwindow
    WebWindow *w = qobject_cast<WebWindow *>(parent());

    if (visible
            && w->page()->isOnRekonqPage()
            && w->tabView()->part() != 0)
    {
        // findNext is the slot containing part integration code
        findNext();
        return;
    }

    QWidget::setVisible(visible);

    if (visible)
    {
        const QString selectedText = w->page()->selectedText();
        if (!hasFocus() && !selectedText.isEmpty())
        {
            const QString previousText = m_lineEdit->text();
            m_lineEdit->setText(selectedText);

            if (m_lineEdit->text() != previousText)
                findPrevious();
            else
                updateHighlight();
        }
        else if (selectedText.isEmpty())
        {
            emit searchString(m_lineEdit->text());
        }

        m_lineEdit->setFocus();
        m_lineEdit->selectAll();
    }
    else
    {
        updateHighlight();
    }
}
Beispiel #14
0
    void StringChanged(IControlString *pWin)
    {
        int g,f;
        if(!strcmp(pWin->GetID(), "REMSTR"))
        {
		  LPCSTR cstr = pWin->GetString();
          if(g_displaySlectedFirst >=0)
          {
            if(g_pDisplays[g_displaySlectedFirst]->getSelected(&g,&f))
            {
                g_pDisplays[g_displaySlectedFirst]->setCommentForMeasure(g,f, cstr, NULL);
            }
            g_pDisplays[g_displaySlectedFirst]->addAnnotationsFromSelection(cstr, NULL);
            g_pDisplays[g_displaySlectedFirst]->update(g_hwnd);
          }
        }
        else if(!strcmp(pWin->GetID(), "SEARCH"))
        {
            searchString(pWin->GetString(), g_bRegExp, g_bTagSearch, g_bClearTagSearch);
        }
    }
Beispiel #15
0
void FindBar::setVisible(bool visible)
{
    if (visible && m_mainWindow->currentTab()->page()->isOnRekonqPage() && m_mainWindow->currentTab()->part() != 0)
    {
        // findNext is the slot containing part integration code
        m_mainWindow->findNext();
        return;
    }
    
    QWidget::setVisible(visible);

    if (visible)
    {
        const QString selectedText = m_mainWindow->selectedText();
        if (!hasFocus() && !selectedText.isEmpty())
        {
            const QString previousText = m_lineEdit->text();
             m_lineEdit->setText(selectedText);

             if (m_lineEdit->text() != previousText)
                 m_mainWindow->findPrevious();
             else
                 m_mainWindow->updateHighlight();;
        }
        else if (selectedText.isEmpty())
        {
            emit searchString(m_lineEdit->text());
        }

        m_hideTimer->start(60000);

        m_lineEdit->setFocus();
        m_lineEdit->selectAll();
    }
    else
    {
        m_mainWindow->updateHighlight();;
        m_hideTimer->stop();
    }
}
std::string CStereoscopicsManager::DetectStereoModeByString(const std::string &needle)
{
  std::string stereoMode = "mono";
  std::string searchString(needle);
  CRegExp re(true);

  if (!re.RegComp(g_advancedSettings.m_stereoscopicregex_3d.c_str()))
  {
    CLog::Log(LOGERROR, "%s: Invalid RegExp for matching 3d content:'%s'", __FUNCTION__, g_advancedSettings.m_stereoscopicregex_3d.c_str());
    return stereoMode;
  }

  if (re.RegFind(searchString) == -1)
    return stereoMode;    // no match found for 3d content, assume mono mode

  if (!re.RegComp(g_advancedSettings.m_stereoscopicregex_sbs.c_str()))
  {
    CLog::Log(LOGERROR, "%s: Invalid RegExp for matching 3d SBS content:'%s'", __FUNCTION__, g_advancedSettings.m_stereoscopicregex_sbs.c_str());
    return stereoMode;
  }

  if (re.RegFind(searchString) > -1)
  {
    stereoMode = "left_right";
    return stereoMode;
  }

  if (!re.RegComp(g_advancedSettings.m_stereoscopicregex_tab.c_str()))
  {
    CLog::Log(LOGERROR, "%s: Invalid RegExp for matching 3d TAB content:'%s'", __FUNCTION__, g_advancedSettings.m_stereoscopicregex_tab.c_str());
    return stereoMode;
  }

  if (re.RegFind(searchString) > -1)
    stereoMode = "top_bottom";

  return stereoMode;
}
Beispiel #17
0
void* recieve(void* arg){
    ///Intialize local variables
    char buf[512];
    thread_data_t *data = (thread_data_t *)arg;
    struct sockaddr_in from;// = data->addr;
    unsigned int addr_len;
    addr_len = sizeof(from);
    //printf("from: %d\naddr: %d", from.sin_family, data->addr.sin_family); //sin_family 0 by default, will be != 0 if initialized
    ///Create recieve multicasts
    while(1){
        //printf("Waiting to recieve message in thread %d..\n", data->tid);
        if( recvfrom(data->sockfd, &buf, sizeof(buf), 0, (sockaddr *) &(from), &addr_len) < 0){
            fprintf(stderr, "Server Error: Recieving ack");
            pthread_exit(NULL);
        }else{
            printf("%s\n", buf);
            std::string buffer(buf), searchString("ANNOUNCE ");
            std::size_t pos = buffer.find(searchString);
            if(pos!=std::string::npos){
                std::cout << "Adding " << buffer.substr(pos+searchString.size()) << " to map" << std::endl;
                pthread_mutex_lock(&lock);
                userTable[buffer.substr(pos+searchString.size())] = from;
                pthread_mutex_unlock(&lock);
            }
            /*char * token;
            char *buffer;
            const char * tmp = (char *) buf;
            strcpy(buffer,tmp);
            token = strtok(buffer, ' ');
            printf("%s", token);/**/
            memset(&buf[0], 0, sizeof(buf));
        }
    }
    //free(arg);
    pthread_exit(NULL);
}
void CAPresentationHandler::findNoMatchFound()
{
    d->matchFound = false;
    kDebug() << "Match for " << searchString() << " not found";
}
int main(int argc, char **argv) {

  /* Init the variables */
  //const char *indexPath = "/home/itamar/.www.kiwix.org/kiwix/43k0i1j4.default/6d2e587b-d586-dc6a-dc6a-e4ef035a1495d15c.index";
  //const char *indexPath = "/home/itamar/testindex";
  const char *indexPath = NULL;
  const char *search = NULL;
  bool verboseFlag = false;
  int option_index = 0;
  int c = 0;
  supportedBackend backend = XAPIAN;

  kiwix::Searcher *searcher = NULL;

  /* Argument parsing */
  while (42) {

    static struct option long_options[] = {
      {"verbose", no_argument, 0, 'v'},
      {"backend", required_argument, 0, 'b'},
      {0, 0, 0, 0}
    };
    
    if (c != -1) {
      c = getopt_long(argc, argv, "vb:", long_options, &option_index);

      switch (c) {
	case 'v':
	  verboseFlag = true;
	  break;
	case 'b':
	  if (!strcmp(optarg, "clucene")) {
	    backend = CLUCENE;
	  } else if (!strcmp(optarg, "xapian")) {
	    backend = XAPIAN;
	  } else {
	    usage();
	  }
	  break;
      }
    } else {
      if (optind < argc) {
	if (indexPath == NULL) {
	  indexPath = argv[optind++];
	} else if (search == NULL) {
	  search = argv[optind++];
	} else {
	  cout << indexPath << endl;
	  usage();
	}
      } else {
	break;
      }
    }
  }

  /* Check if we have enough arguments */
  if (indexPath == NULL || search == NULL) {
    usage();
  }

  /* Try to prepare the indexing */
  try {
    if (backend == CLUCENE) {
      searcher = new kiwix::CluceneSearcher(indexPath);
    } else {
      searcher = new kiwix::XapianSearcher(indexPath);
    }
  } catch (...) {
    cerr << "Unable to search through index '" << indexPath << "'." << endl;
    exit(1);
  }

  /* Start the indexing */
  if (searcher != NULL) {
    string searchString(search);
    searcher->search(searchString, 0, 10);
    string url;
    string title;
    unsigned int score;
    while (searcher->getNextResult(url, title, score)) {
      cout << title << endl;
    }

    delete searcher;

    if (backend == CLUCENE) {
      kiwix::CluceneSearcher::terminate();
    } else {
      //      kiwix::XapianSearcher::terminate();
    }
  } else {
    cerr << "Unable instanciate the Kiwix searcher." << endl;
    exit(1);
  }

  exit(0);
}
Beispiel #20
0
void CASpreadsheetHandler::findNoMatchFound()
{
    d->matchFound = false;
    kDebug() << "Match for " << searchString() << " not found";
}
Beispiel #21
0
void fillHisto(TString cut_mc, TString cut_data,  bool drawHistograms,  
  	     int nBins, float xLow, float xMax, TString var, bool writeoutput, TString fileName,TString title, TString Luminosity,Double_t extrascalefactor,Double_t wnorm,TString tag) {
	CMSStyle();
	//  TCanvas c1("c1", "First canvas", 400, 300); // problems here
	//	c1->Divide(1,2);

	TCanvas *c1 = new TCanvas("c1","Example 2 pads (20,80)",800,800);
	TPad *pad1 = new TPad("pad1", "The pad 80% of the height",0.0,0.3,1.0,1.0,0);
	TPad *pad2 = new TPad("pad2", "The pad 20% of the height",0.0,0.0,1.0,0.3,0);
	pad1->Draw();
	pad2->Draw();
	pad1->cd();
	pad1->SetLogy();

	gStyle->SetOptLogy();
  TH1F* h_zjets = new TH1F("h_zjets","",nBins,xLow,xMax);
  TH1F* h_wjets = new TH1F("h_wjets","",nBins,xLow,xMax);
  TH1F* h_vvjets = new TH1F("h_vvjets","",nBins,xLow,xMax);
  TH1F* h_singtop = new TH1F("h_singtop","",nBins,xLow,xMax);
  TH1F* h_ttbar = new TH1F("h_ttbar","",nBins,xLow,xMax);
  TH1F* h_data = new TH1F("h_data","",nBins,xLow,xMax);
  TH1F* h_lq = new TH1F("h_lq","",nBins,xLow,xMax);


  zjets->Draw(var+">>h_zjets",cut_mc); 
  wjets->Draw(var+">>h_wjets",cut_mc);  
  ttbar->Draw(var+">>h_ttbar",cut_mc);  
  vvjets->Draw(var+">>h_vvjets",cut_mc);  
  singtop->Draw(var+">>h_singtop",cut_mc);  
  lq->Draw(var+">>h_lq",cut_mc);  

  data->Draw(+var+">>h_data",cut_data);

  TH1F* H_data  = new TH1F("H_data","",nBins,xLow,xMax);
  TH1F* H_zjets = new TH1F("H_zjets","",nBins,xLow,xMax);
  TH1F* H_wjets = new TH1F("H_wjets","",nBins,xLow,xMax);
  TH1F* H_singtop = new TH1F("H_singtop","",nBins,xLow,xMax);
  TH1F* H_ttbar = new TH1F("H_ttbar","",nBins,xLow,xMax);
  TH1F* H_vvjets = new TH1F("H_vvjets","",nBins,xLow,xMax);
  TH1F* H_bkg   = new TH1F("H_bkg","",nBins,xLow,xMax);
  TH1F* H_lq   = new TH1F("H_lq","",nBins,xLow,xMax);


  THStack* H_stack = new THStack("H_stack","");

	h_wjets->Scale(wnorm);
		Double_t Nd = h_data->Integral();
		Double_t Nmc = h_zjets->Integral()+h_ttbar->Integral()+h_vvjets->Integral()+h_wjets->Integral()+h_singtop->Integral();
		Double_t Nw = h_wjets->Integral();
		Double_t Nt = h_ttbar->Integral();
		Double_t Nz = h_zjets->Integral();
				Double_t Nlq = h_lq->Integral();

		std::cout<<"Data   : "<<Nd<<std::endl;
		std::cout<<"All MC : "<<Nmc<<std::endl;
    std::cout<<"tt   : "<<h_ttbar->Integral()<<"  +- "<<h_ttbar->Integral()*pow(1.0*(h_ttbar->GetEntries()),-0.5)<<std::endl;
    std::cout<<"w    : "<<h_wjets->Integral()<<"  +- "<<h_wjets->Integral()*pow(1.0*(h_wjets->GetEntries()),-0.5)<<std::endl;
    std::cout<<"LQ    : "<<h_lq->Integral()<<"  +- "<<h_lq->Integral()*pow(1.0*(h_lq->GetEntries()),-0.5)<<std::endl;

//		std::cout<<"Ratio  :"<<1.0*(Nd /Nmc)<<"  +-  "<<sqrt(Nd)/Nmc<<std::endl;

float fac =1.0*( ( Nd - (Nmc - Nw) )/Nw );
//float fac =1.0*( Nd/Nmc);
//fac = 1.0;
std::cout<<"MC Scale Factor:  "<<fac<<std::endl;
//	h_wjets->Scale(fac);
//	h_zjets->Scale(fac);
//	h_vvjets->Scale(fac);
//	h_ttbar->Scale(fac);

  H_bkg->Add(h_vvjets);

	H_data->Add(h_data);
	H_lq->Add(h_lq);
	H_wjets->Add(h_wjets);
	H_zjets->Add(h_zjets);
	H_ttbar->Add(h_ttbar);
	H_singtop->Add(h_singtop);

  H_zjets->SetFillStyle(3004);
  H_ttbar->SetFillStyle(3005);
  H_bkg->SetFillStyle(3008);
  H_wjets->SetFillStyle(3007);
  H_singtop->SetFillStyle(3006 );
  H_lq->SetFillStyle(0);

  H_zjets->SetFillColor(2);
  H_ttbar->SetFillColor(4);
	H_wjets->SetFillColor(6);
	H_singtop->SetFillColor(3);
  H_bkg->SetFillColor(9);
  
  H_zjets->SetLineColor(2);
  H_ttbar->SetLineColor(4);
  H_wjets->SetLineColor(6);
  H_singtop->SetLineColor(3);
  H_bkg->SetLineColor(9);

  H_lq->SetMarkerColor(0);    
  H_zjets->SetMarkerColor(2);
  H_wjets->SetMarkerColor(6);
  H_singtop->SetMarkerColor(3);
  H_ttbar->SetMarkerColor(4);
  H_bkg->SetMarkerColor(9);

	H_lq->SetMarkerSize(1);
	H_zjets->SetMarkerSize(.00000001);
	H_wjets->SetMarkerSize(.00000001);
	H_singtop->SetMarkerSize(.00000001);
	H_ttbar->SetMarkerSize(.00000001);
	H_bkg->SetMarkerSize(.00000001);

  H_lq->SetLineWidth(2);
  H_zjets->SetLineWidth(2);
  H_wjets->SetLineWidth(2);
  H_singtop->SetLineWidth(2);
  H_ttbar->SetLineWidth(2);
  H_bkg->SetLineWidth(2);
  H_data->SetLineWidth(2);

  H_stack->Add(H_bkg);
  H_stack->Add(H_zjets);
  H_stack->Add(H_singtop);
  H_stack->Add(H_ttbar);
  H_stack->Add(H_wjets);
//    H_stack->Add(H_lq);

  H_zjets->GetXaxis()->SetTitle(title);
  H_wjets->GetXaxis()->SetTitle(title);
  H_singtop->GetXaxis()->SetTitle(title);
  H_ttbar->GetXaxis()->SetTitle(title);
  H_data->GetXaxis()->SetTitle(title);
  H_data->GetYaxis()->SetTitle("Number of Events");
  H_data->GetXaxis()->SetTitleFont(132);
  H_data->GetYaxis()->SetTitleFont(132);


  gStyle->SetOptStat(0);
  H_data->Draw("E");

  H_stack->Draw("SAME");
    H_lq->Draw("SAME");
  H_data->Draw("SAMEE");
  TLegend* leg = new TLegend(0.6,0.63,0.91,0.91,"","brNDC");
  leg->SetTextFont(132);
  leg->SetFillColor(0);
  leg->SetBorderSize(0);
    leg->AddEntry(H_data,"Data 2011, "+Luminosity+" pb^{-1}");
  leg->AddEntry(H_zjets,"Z/#gamma* + jets");
  leg->AddEntry(H_wjets,"W + jets");
  leg->AddEntry(H_ttbar,"t#bar{t}");
  leg->AddEntry(H_singtop,"Single Top");
  leg->AddEntry(H_bkg,"Other backgrounds");
    leg->AddEntry(H_lq,"LQ M = 300");
  leg->Draw("SAME");
  c1->SetLogy();

	H_data->SetMinimum(.1);
	H_data->SetMaximum(1.2*extrascalefactor*(H_data->GetMaximum()));

  TLatex* txt =new TLatex((xMax-xLow)*.02+xLow,.3*H_data->GetMaximum(), "CMS 2011 Preliminary");  
  txt->SetTextFont(132); 
  txt->SetTextSize(0.06); 
  txt->Draw();
//  c1->RedrawAxis();

    string str = Luminosity;
    string searchString( "." ); 
    string replaceString( "_" );

    assert( searchString != replaceString );

    string::size_type pos = 0;
    while ( (pos = str.find(searchString, pos)) != string::npos ) {
        str.replace( pos, searchString.size(), replaceString );
        pos++;
    }

	TString varname = var;
	varname +="_";
	varname += str;
	std::cout<<varname<<std::endl;
//  c1->Print("GoodImages/"+varname+"March18_2011_"+tag+".pdf");

	pad2->cd();

	TH1F* h_comp = new TH1F("h_comp","",nBins,xLow,xMax);
	TH1F* h_zero = new TH1F("h_zero","",nBins,xLow,xMax);
	TH1F* h_2p = new TH1F("h_2p","",nBins,xLow,xMax);
	TH1F* h_2m = new TH1F("h_2m","",nBins,xLow,xMax);

if (true){

  TH1F* h_bg = new TH1F("h_bg","",nBins,xLow,xMax);
  h_bg->Add(h_zjets);
  h_bg->Add(h_wjets);
  h_bg->Add(h_vvjets);
  h_bg->Add(h_ttbar);
  h_bg->Add(h_singtop);

  int nbinsx = h_bg->GetXaxis()->GetNbins(); 

  int ibin = 0;

  float chi2 = 0.0;
 
  float ndat = 0.0;
  float nbg = 0.0;

  float datmean = 0.0;
	float mcmean = 0.0;

		float xminl = 0;
		float xmaxl = 0;
		
 for (ibin=0;ibin<nbinsx;ibin++){

  ndat = 1.0*(h_data->GetBinContent(ibin));
  nbg = 1.0*(h_bg->GetBinContent(ibin));

  datmean += 1.0*(h_data->GetBinContent(ibin))*h_data->GetBinCenter(ibin);
  mcmean += 1.0*(h_bg->GetBinContent(ibin))*h_bg->GetBinCenter(ibin);

  if (ndat!=0)   chi2 += pow((ndat -nbg),2.0)/pow(ndat,0.5);

//   std::cout<<ndat<<"  "<<nbg<<"  "<<chi2<<std::endl;
    if (nbg>.0010) std::cout<<h_data->GetBinCenter(ibin)<<"   "<<nbg<<"  "<<"   "<<ndat/nbg<<"   "<<(ndat-nbg)/sqrt(ndat)<<std::endl;
			if (ndat!=0) h_comp ->SetBinContent(ibin, (ndat - nbg)/sqrt(ndat) );
}
	datmean = datmean/h_data->Integral();
	mcmean = mcmean/h_bg->Integral();
	std::cout<<datmean<<std::endl;
	std::cout<<mcmean<<std::endl;

  std::cout<<"Chi^2 for this distribution is:  "<< chi2<<std::endl;
  }
	h_comp->GetYaxis()->SetTitle("Poisson N(#sigma) Diff");

	xminl = h_bg->GetBinCenter(0) + .5*h_bg->GetBinWidth(0);
	xmaxl = h_bg->GetBinCenter(nbinsx) + .5*h_bg->GetBinWidth(nbinsx-1);
	TLine *line0 = new TLine(xminl,0,xmaxl,0);
	TLine *line2u = new TLine(xminl,2,xmaxl,2);
	TLine *line2d = new TLine(xminl,-2,xmaxl,-2);

	h_comp->SetMinimum(-8);
	h_comp->SetMaximum(8);
	h_comp->Draw("p");
	// h_zero->Draw("HISTSAME");
	line0->Draw("SAME");
	line2u->Draw("SAME");
	line2d->Draw("SAME");

  c1->Print("PlotsMuNuSub/"+varname+"_"+tag+".png");

}
Beispiel #22
0
/**
* PreTranslateMessage
*
*/
BOOL CHeaderDockPane::PreTranslateMessage(MSG* pMsg)
{
	//CDockablePane::PreTranslateMessage(pMsg);

	//
	// Enter new URL and hit Enter Key
	//
    if (pMsg->message == WM_KEYDOWN &&
        pMsg->wParam == VK_RETURN &&
		url.HasFocus()  )
    {
        // handle return pressed in edit control
		CString windowText(_T(""));
		url.GetWindowTextW(windowText);		// Get window text
		if(url.m_selectedText.GetLength() != 0)
		{
			int i = 0;
			//windowText = url.m_selectedText;
		}
		int idx = url.GetCurSel();			// Get selection text
		if( idx > -1 ) 
		{
		//	url.GetLBText( idx, windowText );
		}
		TRACE1(" windowText %s \n ", windowText);

		CString * urlStr = new CString(windowText);
		AfxGetMainWnd()->PostMessage(ID_LOAD_URL, /*Callback SetUrl*/1, (LPARAM)urlStr);
		
		// If the ID_LOAD_URL is successfull, SetUrl(url) will be called to add this item to the history.

		
		/*
		std::vector<CString> urlHistory; 
		//TRACE0(" \n\n");
		CString str, str2;
		int n;
		int count = url.GetCount();
		for (int i=0;i < count; i++) 
		{
			n = url.GetLBTextLen( i );
			url.GetLBText( i, str.GetBuffer(n) );
			str.ReleaseBuffer();
			urlHistory.push_back(str);
			//url.DeleteString(i);
			//TRACE1(" read: %s \n", str);
		}
		for (int i= count - 1;i >= 0 ; i--) 
		{
			url.DeleteString(i);
		}
		
		// Add url to history. 
		urlHistory.insert(urlHistory.begin(), windowText.AllocSysString());
		for (int i=0; i < urlHistory.size(); i++)
		{
			CString entry(urlHistory[i]);
			//TRACE1(" url entry: %s \n", entry);
			int pos = url.AddString(entry.AllocSysString());
			url.SetItemData(pos, i);
		}
		*/

		//int pos = url.AddString(CString(_T("me")).AllocSysString());
		//url.SetItemData(pos, 0);

		// Load view
		// PostMessage( .... );

        return TRUE; // this doesn't need processing anymore
    }

	if (//pMsg->message == CBN_SELCHANGE &&
        //pMsg->wParam == VK_RETURN &&
		url.HasFocus()  )
    {
		//TRACE1("m %d    %d  \n" , pMsg->message, CBN_SELCHANGE);
	}


	
	//TRACE2(" message: %d   %d \n", pMsg->message, CBN_SELCHANGE);

	

	/*
	if (pMsg->message == WM_KEYDOWN &&
        pMsg->wParam == VK_RETURN &&
		GetFocus() == &search  )
    {
		search.SetWindowText(CString(_T("searching...")));
		
        // handle return pressed in edit control
        return TRUE; // this doesn't need processing anymore
    }
	*/

	//
	// Click on a url history drop down item.
	// url is a CComboBox 
	//
	if(url.HasFocus() && pMsg->message == CBN_SELENDOK && pMsg->message == CBN_SELCHANGE) 
	{
		TRACE0(" url history select  \n");
		int index = url.GetCurSel();
		int size = url.GetCount();
		if(index > -1 && index < size)
		{
			CString str, str2;
			int n;
			n = url.GetLBTextLen( index );
			url.GetLBText( index, str.GetBuffer(n) );
			str.ReleaseBuffer();
			str2.Format(_T("  %s\r\n"), index, str.GetBuffer(0));
			//TRACE1("item: %s \n", str2);
			CString * urlStr = new CString(str);
			//AfxGetMainWnd()->PostMessage(ID_LOAD_URL, 0, (LPARAM)urlStr);
		}
	}
	

	//
	// Search for input string Enter key
	//
	if(pMsg->wParam == VK_RETURN && search.HasFocus()){
		CString str, str2;
		
		m_searchResults.empty(); // remove old results.

		
		int n;
		for (int i = 0; i < search.GetCount(); i++)
		{
			int c = search.GetCount();

			//n = search.GetLBTextLen( i );
			//search.GetLBText( i, str.GetBuffer(n) );
			//str.ReleaseBuffer();
			//str2.Format(_T("item %d: %s\r\n"), i, str.GetBuffer(0));
			//afxDump << str2;
			search.DeleteString(i);
			//search.DeleteItem(
		}
		
		CString searchString(_T(""));
		search.GetWindowTextW(searchString);

		// Start search thread.....
		SEARCH_THREADPARAM * _param = new SEARCH_THREADPARAM;
		_param->_this = this;
		_param->con = m_connection;
		_param->search = searchString;
		_param->path = m_path; 
		m_pSearchThread = AfxBeginThread(CHeaderDockPane::SearchWorker, _param); 
		if (m_pSearchThread != NULL)
		{
			TRACE(_T("AfxBeginThread: 0x%08lX\n"), m_pSearchThread->m_nThreadID);
		}

		//int count = search.GetCount();
		//for (int i=0; i < count; i++) 
		//{
		//	search.DeleteString(i);
		//}

		search.AddString(CString(_T("searching...")));
		search.ShowDropDown(true);

		//return FALSE;
	}


	//
	// Select Search result to view
	//
	if(search.HasFocus() && pMsg->message == 15) // CBN_SELCHANGE=1  
	{
		TRACE0(" CBN_SELCHANGE  \n");
		int index = search.GetCurSel();
		int size = search.GetCount();
		int rsize = m_searchResults.size();
		if(index > -1 && index < size && index < rsize)
		{
			CString str, str2;
			int n;
			n = search.GetLBTextLen( index );
			search.GetLBText( index, str.GetBuffer(n) );
			str.ReleaseBuffer();
			str2.Format(_T("item %d: %s\r\n"), index, str.GetBuffer(0));
			//TRACE1("item: %s \n", str2);

			CFileContainer f;
			f = (CFileContainer)m_searchResults.at(index);
			TRACE1(" Load search result -> file %s \n", f.name);

			CString * dirStr = new CString(f.path);
			//AfxGetMainWnd()->PostMessage(ID_LOAD_DIR, /*Callback SetUrl*/0, (LPARAM)dirStr);

			CFileContainer * argFile = new CFileContainer(f);
			AfxGetMainWnd()->PostMessage(ID_SELECT_FILE, /* */0, (LPARAM)argFile);
		
			//search.SetWindowTextW(_T(""));
			search.SetCurSel(-1); // Deselect item
		}
		//search.Get
	}


	if(pMsg->message == WM_LBUTTONUP){
		//TRACE0(" lbutton ");
	}

	//TRACE1(" m: %d \n", pMsg->message);

    return FALSE; // all other cases still need default processing
}