Ejemplo n.º 1
0
void TestLayer2::restartCallback(Ref* sender)
{
    auto s = new TransitionsTestScene();

    auto layer = new TestLayer1();
    s->addChild(layer);

    auto scene = createTransition(s_nSceneIdx, TRANSITION_DURATION, s);
    s->release();
    layer->release();
    if (scene)
    {
        Director::getInstance()->replaceScene(scene);
    }
}
Ejemplo n.º 2
0
void TestLayer2::restartCallback(CCObject* pSender)
{
    CCScene* s = new TransitionsTestScene();

    CCLayer* pLayer = new TestLayer1();
    s->addChild(pLayer);

    CCScene* pScene = createTransition(s_nSceneIdx, TRANSITION_DURATION, s);
    s->release();
    pLayer->release();
    if (pScene)
    {
        CCDirector::sharedDirector()->replaceScene(pScene);
    }
}
Ejemplo n.º 3
0
void SceneManager::go(Layer* layer)
{
    Director *director = Director::getInstance();
    Scene *newScene = SceneManager::wrap(layer);
    if ( director->getRunningScene() )
    {
        s_nSceneIdx++;
        s_nSceneIdx = s_nSceneIdx % MAX_LAYER;
        Director::getInstance()->replaceScene(createTransition(s_nSceneIdx, TRANSITION_DURATION, newScene));
    }
    else
    {
        director->runWithScene(newScene);
    }
}
Ejemplo n.º 4
0
void TestLayer1::nextCallback(NSObject* pSender)
{
    s_nSceneIdx++;
    s_nSceneIdx = s_nSceneIdx % MAX_LAYER;

    CCScene* s = new TransitionsTestScene();

    CCLayer* pLayer = new TestLayer2();
    s->addChild(pLayer);

    CCScene* pScene = createTransition(s_nSceneIdx, TRANSITION_DURATION, s);
    s->release();
    pLayer->release();
    if (pScene)
    {
        CCDirector::sharedDirector()->replaceScene(pScene);
    }
}
Ejemplo n.º 5
0
void TestLayer2::backCallback(CCObject* pSender)
{
    s_nSceneIdx--;
    int total = MAX_LAYER;
    if( s_nSceneIdx < 0 )
        s_nSceneIdx += total;    

    CCScene* s = new TransitionsTestScene();

    CCLayer* pLayer = new TestLayer1();
    s->addChild(pLayer);

    CCScene* pScene = createTransition(s_nSceneIdx, TRANSITION_DURATION, s);
    s->release();
    pLayer->release();
    if (pScene)
    {
        CCDirector::sharedDirector()->replaceScene(pScene);
    }
}
Ejemplo n.º 6
0
void TestLayer2::backCallback(Ref* sender)
{
    s_nSceneIdx--;
    int total = MAX_LAYER;
    if( s_nSceneIdx < 0 )
        s_nSceneIdx += total;    

    auto s = new TransitionsTestScene();

    auto layer = new TestLayer1();
    s->addChild(layer);

    auto scene = createTransition(s_nSceneIdx, TRANSITION_DURATION, s);
    s->release();
    layer->release();
    if (scene)
    {
        Director::getInstance()->replaceScene(scene);
    }
}
Ejemplo n.º 7
0
LimaString initRule(Rule& r,
                     const LimaString& str, 
                     MediaId language,
                     const std::vector<Gazeteer>& gazeteers,
                     const std::vector<SubAutomaton>& subAutomatons,
                     const std::vector<LimaString>& activeEntityGroups,
                     const std::string& filename,
                     uint64_t lineNumber) {

  AUCLOGINIT;
  LDEBUG << "RuleCompiler:initializing rule " << str;

  //LimaString ruleString;
  RuleString s(str,language,gazeteers,subAutomatons);

  try {
    // copy constraint informations to the rule
    // set the number of constraints
    r.setNumberOfConstraints(s.getNbConstraints());
    r.setHasLeftRightConstraint(s.hasLeftRightConstraint());
    
    // add the actions to the rule
    for (std::vector<Constraint>::const_iterator a=s.getActions().begin(); 
         a!=s.getActions().end(); a++) {
      r.addAction(*a);
    }
    
    //ruleString=s.getString();
  }
  catch (AutomatonCompilerException& exception) {
  LERROR << "Error on rule: " << str << LENDL;
    throw;
  }
  
  //LDEBUG << "RuleCompiler:string=" << ruleString << LENDL;
  

  r.setTrigger(createTransition(s.getTrigger(),language,activeEntityGroups));

  try {
    r.setLeftAutomaton(AutomatonCompiler::buildAutomaton(s.getLeft(), 
                                                         language,
                                                         BACKWARDSEARCH,
                                                         activeEntityGroups));
  }
  catch (AutomatonCompilerException& e) {
    LERROR << "Error: "<< e.what() << LENDL
      << " on left part of rule: " << str << LENDL;
    throw;
  }

  try {
    r.setRightAutomaton(AutomatonCompiler::buildAutomaton(s.getRight(),
                                                          language,
                                                          FORWARDSEARCH,
                                                          activeEntityGroups));
  }
  catch (AutomatonCompilerException& e) {
    LERROR << "Error: "<< e.what() << LENDL
      << " on left part of rule: " << str << LENDL;
    throw;
  }
  
  LimaString& stringType=s.getType();
  try {
    if (stringType.indexOf(STRING_NEGATIVE_TYPE_RULE)==0) {
      setType(r,
              stringType.mid(
                          LENGTH_NEGATIVE_TYPE_RULE),
              activeEntityGroups);
      r.setNegative(true);
    }
    else if (stringType.indexOf(STRING_ABSOLUTE_TYPE_RULE)==0) {
      setType(r,
              stringType.mid(
                          LENGTH_ABSOLUTE_TYPE_RULE),
              activeEntityGroups);
      r.setContextual(false);
    }
    else {
      setType(r,stringType,activeEntityGroups);
    }
  }
  catch (UnknownTypeException) {
    LERROR << "Error on rule [" << str << "]" << LENDL;
    throw;
  }

  r.setNormalizedForm(s.getNorm());
  ostringstream oss;
  oss << filename << ":" << lineNumber;
  LDEBUG << "rule id is '" << oss.str() << "' / filename="<< filename << ",lineNumber=" << lineNumber << LENDL;
  r.setRuleId(oss.str());

  return str;
}
Ejemplo n.º 8
0
	void *NclTransitionParser::parseTransition(
		    DOMElement *parentElement, void *objGrandParent) {

		return createTransition(parentElement, objGrandParent);
	}
Ejemplo n.º 9
0
void CPlayerList::start()
{

  QSettings settings(QCoreApplication::applicationDirPath () + "/config.ini",
                    QSettings::IniFormat);

  scene = new QGraphicsScene(desk.screenGeometry(), this);
  scene->setBackgroundBrush(Qt::black);


  if( settings.value("displayDefaultImage",true).toBool() )
  {
    CImage *image = new CImage(QPixmap(":/images/horux.png"));
    image->setDuration(5000);
    mediaList << image;

    connect(image, SIGNAL(finished()), this, SLOT(playNext()));
  }

  splash = new SplashItem();
  splash->setZValue(5);
  splash->setPos(100, scene->sceneRect().top());
  scene->addItem(splash);

  myview = new QGraphicsView(scene);
  myview->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
  myview->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
  myview->setRenderHints(QPainter::Antialiasing | QPainter::SmoothPixmapTransform);
  myview->setFrameShadow(QFrame::Plain);
  myview->setFrameShape(QFrame::NoFrame);
  myview->showFullScreen();
  myview->setCursor( QCursor( Qt::BlankCursor ) );



  QString mediaPath = settings.value("media_path","").toString();

  QSqlQuery query("SELECT * FROM hr_horux_media_media WHERE published=1 AND id_device=" + deviceId + " ORDER by `order`");
  while(query.next())
  {
    QString type = query.value(2).toString();
    QString path = mediaPath + query.value(3).toString();

    int time = query.value(4).toInt();
    QFile file(path);
    if(file.exists())
    {
      if(type == "IMAGE")
      {
        CImage *image = new CImage(QPixmap(path));
        image->setDuration(time * 1000);
        mediaList << image;
      
        connect(image, SIGNAL(finished()), this, SLOT(playNext()));
      }
      
      if(type == "MOVIE")
      {
        VideoWidget *video = new VideoWidget();
      
        video->setDuration(time * 1000);
        video->setMedia(path);

        mediaList << video;
  
        connect(video, SIGNAL(finished()), this, SLOT(playNext()));
      }
    }
  }


  if(mediaList.count() == 0)
  {
    CImage *image = new CImage(QPixmap(":/images/horux.png"));
    image->setDuration(5000);
    mediaList << image;

    connect(image, SIGNAL(finished()), this, SLOT(playNext()));
  }

  group = new QtStateGroup(scene);

  createTransition();

  stateList.at(0)->activate();

  isStart = true;

  if(mediaList.size() > 0)
  {
    index = 0;
    playNext();
  }
}
Ejemplo n.º 10
0
Archivo: parser.c Proyecto: sa-spag/acc
/* Creer un automate a partir d'un fichier texte
 * Valeur de retour : Automate cree
 */
bool parse(FILE *data, struct fsm *fsm) {
    char *param, *tmp;
    char type[TYPE_SIZE], s[LINE_SIZE];
    bool alphabet = false;
    struct state *st, *st2;
    struct transition *tr;
    int i = 0, j;
    char **trans = NULL;

    fsm->alphabet = NULL;
    fsm->initials = NULL;
    fsm->states = NULL;
    fsm->ilen = fsm->alen = fsm->slen = 0;

    while(EOF != fscanf(data, "%18s%255[^\n]", type, s)) { /* TYPE_SIZE et LINE_SIZE */
        param = s;
        while((*param == ' ' || *param == '\t') && *param != '\0') {
            param++;
        }
        if(!(*param)) {
        	fprintf(stderr, "parse: `%s %s': Invalid format.\n", type, s);
            return false;
        }

        if(!strcmp(type, "alphabet_terminal")) {
            alphabet = true;
            tmp = strtok(param, " ");
            while(tmp != NULL) {
                if(!addAlphabet(fsm, tmp))
                    return false;

                tmp = strtok(NULL, " ");
            }
        }

        else if(!strcmp(type, "initial")) {
            tmp = strtok(param, " ");
            while(tmp != NULL) {
                if(!addInitial(fsm, tmp))
                    return false;

                tmp = strtok(NULL, " ");
            }
        }

        else if(!strcmp(type, "terminal")) {
            tmp = strtok(param, " ");

            while(tmp != NULL) {
                if(!addState(fsm, tmp, true))
                    return false;

                tmp = strtok(NULL, " ");
            }
        }

        else {
            i = 0;
            trans = NULL;

            tmp = strtok(param, " ");
            if(((trans = realloc(trans, (i+1)*sizeof(char *))) == NULL) ||
                ((trans[i] = malloc((strlen(tmp)+1)*sizeof(char))) == NULL)) {
					fprintf(stderr, "parse: Memory allocation failed.\n");
					return false;
			}
            strcpy(trans[i++], tmp);

            if((tmp = strtok(NULL, " ")) == NULL) {
            	fprintf(stderr, "parse: `%s %s': Invalid format; destination stateis not specified.\n", type, s);
                return false;
            }

            do {
                if(((trans = realloc(trans, (i+1)*sizeof(char *))) == NULL) ||
                    ((trans[i] = malloc((strlen(tmp)+1)*sizeof(char))) == NULL)) {
						fprintf(stderr, "parse: Memory allocation failed.\n");
						return false;
				}
                strcpy(trans[i++], tmp);
            } while((tmp = strtok(NULL, " ")) != NULL);

            if(((st = addState(fsm, type, false)) == NULL) ||
                ((st2 = addState(fsm, trans[i-1], false)) == NULL)) {
                    return false;
            }

            for(j = 0; j < i-1; j++) {
                if(alphabet && (!containsLetter(fsm, trans[j])) && strcmp(trans[j], EPSILON)) {
                    fprintf(stderr, "parse: `%s' does not belong to the alphabet.\n", trans[j]);
                    for(j = 0; j < i; j++)
                        free(trans[j]);
                    free(trans);
                    return false;
                }
                else if(!alphabet && strcmp(trans[j], EPSILON)) {
                    if(!addAlphabet(fsm, trans[j]))
                        return false;
                }
                if(((tr = createTransition(trans[j], st2)) == NULL) ||
                    (!addTransition(st, tr)))
                        return false;
            }

            for(j = 0; j < i; j++)
                free(trans[j]);
            free(trans);
        }
    }

    return true;
}