Team Fortress 2 Source Code as on 22/4/2020
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

53 lines
1.6 KiB

  1. //========= Copyright Valve Corporation, All rights reserved. ============//
  2. //
  3. // The transform operator class - shortcut to setting transform values from floats
  4. //
  5. //=============================================================================
  6. #ifndef DMETRANSFORMOPERATOR_H
  7. #define DMETRANSFORMOPERATOR_H
  8. #ifdef _WIN32
  9. #pragma once
  10. #endif
  11. #include "movieobjects/dmeoperator.h"
  12. #include "datamodel/dmelement.h"
  13. #include "datamodel/dmattribute.h"
  14. #include "datamodel/dmattributevar.h"
  15. //-----------------------------------------------------------------------------
  16. // Forward declarations
  17. //-----------------------------------------------------------------------------
  18. class CDmeTransform;
  19. //-----------------------------------------------------------------------------
  20. // A class representing a camera
  21. //-----------------------------------------------------------------------------
  22. class CDmeTransformOperator : public CDmeOperator
  23. {
  24. DEFINE_ELEMENT( CDmeTransformOperator, CDmeOperator );
  25. public:
  26. virtual void Operate();
  27. virtual void GetInputAttributes ( CUtlVector< CDmAttribute * > &attrs );
  28. virtual void GetOutputAttributes( CUtlVector< CDmAttribute * > &attrs );
  29. void SetTransform( CDmeTransform *pTransform );
  30. const CDmeTransform *GetTransform() const;
  31. protected:
  32. CDmaElement< CDmeTransform > m_transform;
  33. CDmaVar< float > m_positionX;
  34. CDmaVar< float > m_positionY;
  35. CDmaVar< float > m_positionZ;
  36. CDmaVar< float > m_orientationX;
  37. CDmaVar< float > m_orientationY;
  38. CDmaVar< float > m_orientationZ;
  39. CDmaVar< float > m_orientationW;
  40. };
  41. #endif // DMETRANSFORMOPERATOR_H