port from perforce
This commit is contained in:
75
aiwaz/Aiwaz/Interfaces/ITransformation.h
Normal file
75
aiwaz/Aiwaz/Interfaces/ITransformation.h
Normal file
@@ -0,0 +1,75 @@
|
||||
#pragma once
|
||||
|
||||
struct TransformationBindings
|
||||
{
|
||||
static TransformationBindings CreateDefault()
|
||||
{
|
||||
TransformationBindings bindings;
|
||||
bindings.WorldMatrixSemanticName = "WorldMatrix";
|
||||
bindings.LocalMatrixSemanticName = "LocalMatrix";
|
||||
bindings.WorldPositionSemanticName = "WorldPosition";
|
||||
bindings.LocalPositionSemanticName = "LocalPosition";
|
||||
bindings.WorldDirectionSemanticName = "WorldDirection";
|
||||
bindings.LocalDirectionSemanticName = "LocalDirection";
|
||||
bindings.WorldUpDirectionSemanticName = "WorldUpDirection";
|
||||
bindings.LocalUpDirectionSemanticName = "LocalUpDirection";
|
||||
bindings.WorldRightDirectionSemanticName = "WorldUpDirection";
|
||||
bindings.LocalRightDirectionSemanticName = "LocalUpDirection";
|
||||
return bindings;
|
||||
}
|
||||
|
||||
string8 WorldMatrixSemanticName;
|
||||
string8 LocalMatrixSemanticName;
|
||||
|
||||
string8 WorldPositionSemanticName;
|
||||
string8 LocalPositionSemanticName;
|
||||
|
||||
string8 WorldDirectionSemanticName;
|
||||
string8 LocalDirectionSemanticName;
|
||||
|
||||
string8 WorldUpDirectionSemanticName;
|
||||
string8 LocalUpDirectionSemanticName;
|
||||
|
||||
string8 WorldRightDirectionSemanticName;
|
||||
string8 LocalRightDirectionSemanticName;
|
||||
};
|
||||
|
||||
|
||||
struct __declspec(novtable) ITransformation
|
||||
{
|
||||
virtual void set_TransformationBindings(const TransformationBindings& argData) = 0;
|
||||
virtual TransformationBindings get_TransformationBindings() const = 0;
|
||||
|
||||
virtual void set_LocalPosition(const D3DXVECTOR3& argValue) = 0;
|
||||
virtual const D3DXVECTOR3& get_LocalPosition() const = 0;
|
||||
virtual const D3DXVECTOR3& get_WorldPosition() const = 0;
|
||||
|
||||
virtual void set_LocalRotationYPR(const D3DXVECTOR3& argValue) = 0;
|
||||
virtual const D3DXVECTOR3& get_LocalRotationYPR() const = 0;
|
||||
|
||||
virtual void set_LocalRotation(const D3DXQUATERNION& argValue) = 0;
|
||||
virtual const D3DXQUATERNION& get_LocalRotation() const = 0;
|
||||
virtual const D3DXQUATERNION& get_WorldRotation() const = 0;
|
||||
|
||||
virtual const D3DXVECTOR3& get_LocalDirection() const = 0;
|
||||
virtual const D3DXVECTOR3& get_WorldDirection() const = 0;
|
||||
|
||||
virtual const D3DXVECTOR3& get_LocalUpDirection() const = 0;
|
||||
virtual const D3DXVECTOR3& get_WorldUpDirection() const = 0;
|
||||
|
||||
virtual D3DXVECTOR3 get_LocalRightDirection() const = 0;
|
||||
virtual D3DXVECTOR3 get_WorldRightDirection() const = 0;
|
||||
|
||||
virtual void set_LocalScale(const D3DXVECTOR3& argValue) = 0;
|
||||
virtual const D3DXVECTOR3& get_LocalScale() const = 0;
|
||||
virtual const D3DXVECTOR3& get_WorldScale() const = 0;
|
||||
|
||||
virtual const D3DXMATRIX& get_WorldMatrix() const = 0;
|
||||
virtual const D3DXMATRIX& get_LocalMatrix() const = 0;
|
||||
|
||||
virtual void set_TransformationParent(ITransformation* argValue) = 0;
|
||||
virtual ITransformation* get_TransformationParent() const = 0;
|
||||
virtual void AddTransformation(ITransformation& argTransformation) = 0;
|
||||
virtual void RemoveTransformation(ITransformation& argTransformation) = 0;
|
||||
virtual const std::vector<ITransformation*>& get_Transformations() const = 0;
|
||||
};
|
||||
Reference in New Issue
Block a user