Add glsl_type::is_numeric and glsl_type::is_boolean queries
authorIan Romanick <ian.d.romanick@intel.com>
Wed, 24 Mar 2010 00:31:03 +0000 (17:31 -0700)
committerIan Romanick <ian.d.romanick@intel.com>
Wed, 24 Mar 2010 00:31:03 +0000 (17:31 -0700)
glsl_types.h

index b1cd9a9d637117b391ea816dc1c874046bb35812..7c48e792eb5a53587a4de589205891c7026ffffb 100644 (file)
@@ -167,6 +167,22 @@ struct glsl_type {
       return (matrix_rows > 0) && (base_type == GLSL_TYPE_FLOAT);
    }
 
+   /**
+    * Query whether or not a type is a non-array numeric type
+    */
+   bool is_numeric() const
+   {
+      return (base_type >= GLSL_TYPE_UINT) && (base_type <= GLSL_TYPE_FLOAT);
+   }
+
+   /**
+    * Query whether or not a type is a non-array boolean type
+    */
+   bool is_boolean() const
+   {
+      return base_type == GLSL_TYPE_BOOL;
+   }
+
    /**
     * Query whether or not a type is a sampler
     */