Home | History | Annotate | Download | only in randomshaders

Lines Matching refs:Variable

23  * \brief Variable manager.
26 * Variable manager owns variable objects until they are either explictly
46 ValueEntry (const Variable* variable);
49 const Variable* getVariable (void) const { return m_variable; }
55 const Variable* m_variable;
59 // Variable scope manages variable allocation.
66 Variable* allocate (const VariableType& type, Variable::Storage storage, const char* name);
67 void declare (Variable* variable); //!< Move from live set to declared set
68 void removeLive (const Variable* variable); //!< Just remove from live set (when migrating to parent).
70 const std::vector<Variable*>& getDeclaredVariables (void) const { return m_declaredVariables; }
72 std::vector<Variable*>& getLiveVariables (void) { return m_liveVariables; }
73 const std::vector<Variable*>& getLiveVariables (void) const { return m_liveVariables; }
79 std::vector<Variable*> m_declaredVariables; //!< Variables declared in this scope. Not available for expressions.
80 std::vector<Variable*> m_liveVariables; //!< Live variables (available for expression) that can be declared in this scope.
89 ValueEntry* allocate (const Variable* variable);
90 ValueEntry* findEntry (const Variable* variable) const;
91 void setValue (const Variable* variable, ConstValueRangeAccess value);
92 void removeValue (const Variable* variable);
207 Variable* allocate (const VariableType& type);
208 Variable* allocate (const VariableType& type, Variable::Storage storage, const char* name);
210 void setStorage (Variable* variable, Variable::Storage storage);
212 void setValue (const Variable* variable, ConstValueRangeAccess value);
213 const ValueEntry* getValue (const Variable* variable) const;
214 const ValueEntry* getParentValue (const Variable* variable) const;
216 void removeValueFromCurrentScope (const Variable* variable);
218 void declareVariable (Variable* variable);
219 bool canDeclareInCurrentScope (const Variable* variable) const;
220 const std::vector<Variable*>& getLiveVariables (void) const;
306 case Variable::STORAGE_LOCAL:
307 case Variable::STORAGE_SHADER_OUT:
308 case Variable::STORAGE_PARAMETER_IN:
309 case Variable::STORAGE_PARAMETER_OUT:
310 case Variable::STORAGE_PARAMETER_INOUT:
319 template <Variable::Storage Storage>
331 typedef EntryStorageFilter<Variable::STORAGE_LOCAL> LocalEntryFilter;
332 typedef EntryStorageFilter<Variable::STORAGE_SHADER_IN> ShaderInEntryFilter;
333 typedef EntryStorageFilter<Variable::STORAGE_SHADER_OUT> ShaderOutEntryFilter;