12 #ifndef NEWGRF_SPRITEGROUP_H 
   13 #define NEWGRF_SPRITEGROUP_H 
   37 enum SpriteGroupType {
 
   44   SGT_INDUSTRY_PRODUCTION,
 
   48 typedef uint32 SpriteGroupID;
 
   69   virtual SpriteID GetResult()
 const { 
return 0; }
 
   70   virtual byte GetNumResults()
 const { 
return 0; }
 
  111 enum DeterministicSpriteGroupSize {
 
  117 enum DeterministicSpriteGroupAdjustType {
 
  152   DeterministicSpriteGroupAdjustType type;
 
  175   DeterministicSpriteGroupSize size;
 
  188 enum RandomizedSpriteGroupCompareMode {
 
  227     if (!grf_version8 && (this->result >> 8) == 0xFF) {
 
  228       this->result &= ~0xFF00;
 
  230       this->result &= ~0x8000;
 
  235   uint16 GetCallbackResult()
 const { 
return this->result; }
 
  251     num_sprites(num_sprites)
 
  257   SpriteID GetResult()
 const { 
return this->sprite; }
 
  258   byte GetNumResults()
 const { 
return this->num_sprites; }
 
  277   int16 subtract_input[3];  
 
  278   uint16 add_output[2];     
 
  298   virtual uint32 
GetVariable(byte variable, uint32 parameter, 
bool *available) 
const;
 
  299   virtual void StorePSA(uint reg, int32 value);