#ifndef _TCROWDMEMBER_H_
#define _TCROWDMEMBER_H_

#include "common.h"
#include "TUV.h"
#include "CGfxCrowd.h"
#include "SAT.h"
class CFTTModel;
class TAABB;

class TCrowdMember {
public:
  TCrowdMember();                                             // 001A40C8
  ~TCrowdMember();                                            // 001A46C8
  static void swap(TCrowdMember&, TCrowdMember&);             // 001A4704
  void Setup(ECrowdMemberType, uchar);                        // 0019EB18
  void Render(CFTTMatrix32*);                                 // 0019F240
  TAABB Animate(TSATAnim_TSX*, TSATAnim_TSX*, unsigned int);  // 0019EE90
public:
  ECrowdMemberType m_eCrowdMemberType_0;
  uchar m_uc_4;
  CFTTModel* m_cTTModel_8;
  CFTTModel* m_cTTModel_C;
  TUV* m_tTUV_10;
  TUV* m_tTUV_14;
  CFTTMatrix32 m_cMatrix32_18[0x2A];  // size = A80
  // int             m_field_A90;
  // int             m_field_A94;
  int m_field_A98[8];  // A98 0
                       // A9C  1
                       // AA0  2
                       // AA4  3
                       // AA8  4
                       // AAC  5
                       // AB0  6
                       // AB4  7
  int m_iField_AB8;
  int m_iField_ABC;
  int m_iField_AC0;
  int m_iField_AC4;
  int m_iField_AC8;
  int m_iField_ACC;
  CFTTVector32 m_cVec32_AD0;
  CFTTVector32 m_cVec32_ADC;
  CFTTModel* m_cTTModel_AE8;
  int m_iField_AEC;
};

#endif  // _TCROWDMEMBER_H_