/******************************************************************/ /* This file is part of the homework assignments for CSCI-427/527 */ /* at The College of William & Mary and authored by Pieter Peers. */ /* No part of this file, whether altered or in original form, can */ /* be distributed or used outside the context of CSCI-427/527 */ /* without consent of either the College of William & Mary or */ /* Pieter Peers. */ /******************************************************************/ #ifndef _SHADERPROPERTIES_H_ #define _SHADERPROPERTIES_H_ class shaderProperties { public: ///////////////// // Constructor // ///////////////// shaderProperties(bool diff=true, bool spec=true) : diffuse(diff), specular(spec) {} ////////////// // Operator // ////////////// bool operator==(const shaderProperties& sp) const; bool operator!=(const shaderProperties& sp) const; shaderProperties& operator&=(const shaderProperties& sp); shaderProperties& operator|=(const shaderProperties& sp); shaderProperties& operator~(void); shaderProperties operator&(const shaderProperties& sp) const; shaderProperties operator|(const shaderProperties& sp) const; ///////////////////////// // Public data members // ///////////////////////// bool diffuse, specular; }; #endif /* _SHADERPROPERTIES_H_ */