mirror of
https://github.com/celisej567/source-engine.git
synced 2026-01-05 22:09:59 +03:00
1
This commit is contained in:
72
public/tools/bonelist.cpp
Normal file
72
public/tools/bonelist.cpp
Normal file
@@ -0,0 +1,72 @@
|
||||
//========= Copyright Valve Corporation, All rights reserved. ============//
|
||||
//
|
||||
// Purpose:
|
||||
//
|
||||
//=============================================================================
|
||||
|
||||
#include "cbase.h"
|
||||
#include "bonelist.h"
|
||||
|
||||
// memdbgon must be the last include file in a .cpp file!!!
|
||||
#include "tier0/memdbgon.h"
|
||||
|
||||
CBoneList::CBoneList()
|
||||
{
|
||||
m_bShouldDelete = false;
|
||||
m_nBones = 0;
|
||||
Q_memset( m_vecPos, 0, sizeof( m_vecPos ) );
|
||||
Q_memset( m_quatRot, 0, sizeof( m_quatRot ) );
|
||||
}
|
||||
|
||||
void CBoneList::Release()
|
||||
{
|
||||
if (m_bShouldDelete )
|
||||
{
|
||||
delete this;
|
||||
}
|
||||
else
|
||||
{
|
||||
Warning( "Called Release() on CBoneList not allocated via Alloc() method\n" );
|
||||
}
|
||||
}
|
||||
|
||||
CBoneList *CBoneList::Alloc()
|
||||
{
|
||||
CBoneList *newList = new CBoneList;
|
||||
Assert( newList );
|
||||
if ( newList )
|
||||
{
|
||||
newList->m_bShouldDelete = true;
|
||||
}
|
||||
return newList;
|
||||
}
|
||||
|
||||
CFlexList::CFlexList()
|
||||
{
|
||||
m_bShouldDelete = false;
|
||||
m_nNumFlexes = 0;
|
||||
Q_memset( m_flexWeights, 0, sizeof( m_flexWeights ) );
|
||||
}
|
||||
|
||||
void CFlexList::Release()
|
||||
{
|
||||
if (m_bShouldDelete )
|
||||
{
|
||||
delete this;
|
||||
}
|
||||
else
|
||||
{
|
||||
Warning( "Called Release() on CFlexList not allocated via Alloc() method\n" );
|
||||
}
|
||||
}
|
||||
|
||||
CFlexList *CFlexList::Alloc()
|
||||
{
|
||||
CFlexList *newList = new CFlexList;
|
||||
Assert( newList );
|
||||
if ( newList )
|
||||
{
|
||||
newList->m_bShouldDelete = true;
|
||||
}
|
||||
return newList;
|
||||
}
|
||||
54
public/tools/bonelist.h
Normal file
54
public/tools/bonelist.h
Normal file
@@ -0,0 +1,54 @@
|
||||
//========= Copyright Valve Corporation, All rights reserved. ============//
|
||||
//
|
||||
// Purpose:
|
||||
//
|
||||
//=============================================================================
|
||||
|
||||
#ifndef BONELIST_H
|
||||
#define BONELIST_H
|
||||
#ifdef _WIN32
|
||||
#pragma once
|
||||
#endif
|
||||
|
||||
#include "studio.h"
|
||||
|
||||
class CBoneList
|
||||
{
|
||||
public:
|
||||
|
||||
CBoneList();
|
||||
|
||||
void Release();
|
||||
|
||||
static CBoneList *Alloc();
|
||||
|
||||
public:
|
||||
|
||||
int m_nBones;
|
||||
Vector m_vecPos[ MAXSTUDIOBONES ];
|
||||
Quaternion m_quatRot[ MAXSTUDIOBONES ];
|
||||
|
||||
private:
|
||||
bool m_bShouldDelete;
|
||||
};
|
||||
|
||||
class CFlexList
|
||||
{
|
||||
public:
|
||||
|
||||
CFlexList();
|
||||
|
||||
void Release();
|
||||
|
||||
static CFlexList *Alloc();
|
||||
|
||||
public:
|
||||
|
||||
int m_nNumFlexes;
|
||||
float m_flexWeights[ MAXSTUDIOFLEXCTRL ];
|
||||
|
||||
private:
|
||||
bool m_bShouldDelete;
|
||||
};
|
||||
|
||||
#endif // BONELIST_H
|
||||
Reference in New Issue
Block a user