This repository has been archived on 2023-01-27. You can view files and clone it, but cannot push or open issues or pull requests.
cad/fusion360/usr/Include/Core/bginstancer.h
2022-10-15 19:16:08 +02:00

55 lines
1.8 KiB
C++

/********************************************************************
created: 2006/22/06
created: 22:06:2006 12:26
filename: x:\junctions\ProjectRoot\current\vt_plugins\vt_toolkit\Behaviors\Generic\BGInstancer.h
file path: x:\junctions\ProjectRoot\current\vt_plugins\vt_toolkit\Behaviors\Generic
file base: BGInstancer
file ext: h
author: mc007
purpose: instancing of b-graphs per file
*********************************************************************/
#include "stdafx.h"
#define BGWRAPPER_GUID CKGUID(0x35fb3204,0x6b59721c)
// Parameters for BGWrapper
enum EBGWRAPPERPARAM
{
// local
EBGWRAPPERPARAM_PARAMETER_SCRIPT = 0,
EBGWRAPPERPARAM_PARAMETER_NAME = 1,
EBGWRAPPERPARAM_LOCAL_PARAMETER_COUNT,
};
class BGWrapper
{
public:
static CKObjectDeclaration* FillBehaviour( void );
static CKERROR CreatePrototype( CKBehaviorPrototype** behaviorPrototypePtr );
static int BehaviourFunction( const CKBehaviorContext& behaviorContext );
private:
static CKERROR BGWrapperCB(const CKBehaviorContext& behContext);
static BOOL HasIO(CKBehavior* pBeh);
static BOOL DeleteIO(CKBehavior* pBeh);
static BOOL CreateIO(CKBehavior* pBeh, CKBehavior* pScript);
static BOOL CheckIO(CKBehavior* pBeh, CKBehavior* pScript);
static CKBehavior* BGLoader(CKSTRING fileName,const CKBehaviorContext& behContext);
static void ActivateNextFrameSubBB(CKBehavior* scriptObject,BOOL &bActivateNextFrame);
static void DesactivateSubBB(CKBehavior* scriptObject);
static void OwnerSubBB(CKBehavior* scriptObject,CKBeObject*owner);
static void SetNewBG(CKBehavior *behaviour,CKBehavior *newBehavior);
static void DestroyCurrentBG(CKLevel* level,CKBehavior *behaviour,CKBehavior *scriptObject);
};