class CShatterGlassShard
{
    void* __vftable;
public:
    uint32 m_hShardHandle;
    // MNotSaved = !!UNKNOWN!!
    CUtlVector<Vector2D> m_vecPanelVertices;
    // MNotSaved = !!UNKNOWN!!
    Vector2D m_vLocalPanelSpaceOrigin;
    // MNotSaved = !!UNKNOWN!!
    CStrongHandle<InfoForResourceTypeCModel> m_hModel;
    CHandle<CShatterGlassShardPhysics> m_hPhysicsEntity;
    CHandle<CFuncShatterglass> m_hParentPanel;
    uint32 m_hParentShard;
    ShatterGlassStressType m_ShatterStressType;
    Vector m_vecStressVelocity;
    // MNotSaved = !!UNKNOWN!!
    bool m_bCreatedModel;
    // MNotSaved = !!UNKNOWN!!
    float32 m_flLongestEdge;
    // MNotSaved = !!UNKNOWN!!
    float32 m_flShortestEdge;
    // MNotSaved = !!UNKNOWN!!
    float32 m_flLongestAcross;
    // MNotSaved = !!UNKNOWN!!
    float32 m_flShortestAcross;
    // MNotSaved = !!UNKNOWN!!
    float32 m_flSumOfAllEdges;
    // MNotSaved = !!UNKNOWN!!
    float32 m_flArea;
    OnFrame m_nOnFrameEdge;
    int32 m_nSubShardGeneration;
    // MNotSaved = !!UNKNOWN!!
    Vector2D m_vecAverageVertPosition;
    // MNotSaved = !!UNKNOWN!!
    bool m_bAverageVertPositionIsValid;
    Vector2D m_vecPanelSpaceStressPositionA;
    Vector2D m_vecPanelSpaceStressPositionB;
    bool m_bStressPositionAIsValid;
    bool m_bStressPositionBIsValid;
    bool m_bFlaggedForRemoval;
    GameTime_t m_flPhysicsEntitySpawnedAtTime;
    CHandle<CBaseEntity> m_hEntityHittingMe;
    CUtlVector<uint32> m_vecNeighbors;
};