示例#1
0
void	initializeColor(__int64 owlModel)
{
	firstItemColor = 0;

	defaultItemColor = newItemColor();

	defaultItemColor->transparency = 1;

	defaultItemColor->surface.R = 0;
	defaultItemColor->surface.G = 1;
	defaultItemColor->surface.B = 0;
	defaultItemColor->surface.A = 0;
	defaultItemColor->diffuse.R = 0;
	defaultItemColor->diffuse.G = 0.8;
	defaultItemColor->diffuse.B = 0;
	defaultItemColor->diffuse.A = 0;
	defaultItemColor->specular.R = 0;
	defaultItemColor->specular.G = 0.8;
	defaultItemColor->specular.B = 0;
	defaultItemColor->specular.A = 0;

	defaultItemColor->active = true;

	rdfClassTransformation = GetClassByName(owlModel, "Transformation");
	rdfClassCollection = GetClassByName(owlModel, "Collection");

	owlDataTypePropertyExpressID = GetPropertyByName(owlModel, "expressID");

	owlObjectTypePropertyMatrix = GetPropertyByName(owlModel, "matrix");
	owlObjectTypePropertyObject = GetPropertyByName(owlModel, "object");
	owlObjectTypePropertyObjects = GetPropertyByName(owlModel, "objects");
}
示例#2
0
Bool LoadObject(int object_id,char *class_name)
{
   class_node *c;

   c = GetClassByName(class_name);
   if (c == NULL) 
   {
      eprintf("LoadObject can't find class name %s\n",class_name);
      return False;
   }

   if (AllocateObject(c->class_id) != object_id)
   {
      eprintf("LoadObject didn't make object id %i\n",object_id);
      return False;
   }

   /* set self = prop 0 */
   objects[object_id].p[0].id = 0;
   objects[object_id].p[0].val.v.tag = TAG_OBJECT; 
   objects[object_id].p[0].val.v.data = object_id;

   /* if no kod changed, then setting the properties shouldn't be
    * necessary.  however, who knows.
    */
   SetObjectProperties(object_id,c);

   return True;
}
示例#3
0
文件: filter.cpp 项目: 14923523/citra
bool Filter::ParseFilterRule(const std::string::const_iterator begin,
        const std::string::const_iterator end) {
    auto level_separator = std::find(begin, end, ':');
    if (level_separator == end) {
        LOG_ERROR(Log, "Invalid log filter. Must specify a log level after `:`: %s",
                std::string(begin, end).c_str());
        return false;
    }

    const Level level = GetLevelByName(level_separator + 1, end);
    if (level == Level::Count) {
        LOG_ERROR(Log, "Unknown log level in filter: %s", std::string(begin, end).c_str());
        return false;
    }

    if (Common::ComparePartialString(begin, level_separator, "*")) {
        ResetAll(level);
        return true;
    }

    const Class log_class = GetClassByName(begin, level_separator);
    if (log_class == Class::Count) {
        LOG_ERROR(Log, "Unknown log class in filter: %s", std::string(begin, end).c_str());
        return false;
    }

    SetClassLevel(log_class, level);
    return true;
}
示例#4
0
int GetDataNum(int tag_val,const char *data_str)
{
   resource_node *r;
   class_node *c;
   int retval;

   switch (tag_val)
   {
   case TAG_RESOURCE :
      r = GetResourceByName(data_str);
      if (r != NULL)
      {
         retval = r->resource_id;
         break;
      }

      if (sscanf(data_str,"%i",&retval) != 1)
         retval = INVALID_DATA;

      break;

   case TAG_CLASS :
      c = GetClassByName(data_str);
      if (c != NULL)
      {
         retval = c->class_id;
         break;
      }

      if (sscanf(data_str,"%i",&retval) != 1)
         retval = INVALID_DATA;

      break;

   case TAG_MESSAGE :
      retval = GetIDByName(data_str);
      if (retval == INVALID_ID)
         retval = INVALID_DATA;
      break;

   case TAG_TEMP_STRING :
      eprintf( "Recognized TAG_TEMP_STRING type, attempting to load..." );
      retval = INVALID_DATA;
      break;

   default :
      if (sscanf(data_str,"%i",&retval) != 1)
         retval = INVALID_DATA;
   }

   return retval;
}