hctConvertToPhantomActionFilter_Options.cpp
上传用户:yisoukefu
上传日期:2020-08-09
资源大小:39506k
文件大小:3k
源码类别:

其他游戏

开发平台:

Visual C++

  1. /* 
  2.  * 
  3.  * Confidential Information of Telekinesys Research Limited (t/a Havok). Not for disclosure or distribution without Havok's
  4.  * prior written consent. This software contains code, techniques and know-how which is confidential and proprietary to Havok.
  5.  * Level 2 and Level 3 source code contains trade secrets of Havok. Havok Software (C) Copyright 1999-2009 Telekinesys Research Limited t/a Havok. All Rights Reserved. Use of this software is subject to the terms of an end user license agreement.
  6.  * 
  7.  */
  8. #include <ContentTools/Common/Filters/FilterTutorial/hctFilterTutorial.h>
  9. #include <ContentTools/Common/Filters/FilterTutorial/ConvertToPhantomAction/hctConvertToPhantomActionFilter.h>
  10. void hctConvertToPhantomActionFilter::setOptions(const void* optionData, int optionDataSize, unsigned int version ) 
  11. {
  12. // Get the options from the XML data.
  13. if ( hctFilterUtils::readOptionsXml( optionData, optionDataSize, m_optionsBuf, hctConvertToPhantomActionOptionsClass ) == HK_SUCCESS )
  14. {
  15. hctConvertToPhantomActionOptions* options = reinterpret_cast<hctConvertToPhantomActionOptions*>( m_optionsBuf.begin() );
  16. m_options.m_removeMeshes = options->m_removeMeshes;
  17. }
  18. else
  19. {
  20. HK_WARN_ALWAYS( 0xabba482b, "The XML for the " << g_convertToPhantomActionDesc.getShortName() << " option data could not be loaded." );
  21. return;
  22. }
  23. }
  24. int hctConvertToPhantomActionFilter::getOptionsSize() const
  25. {
  26. // We write the options to a temporary buffer and return the size of it. The buffer itself will be used
  27. // later on by getOptions().
  28. hctFilterUtils::writeOptionsXml( hctConvertToPhantomActionOptionsClass, &m_options, m_optionsBuf, g_convertToPhantomActionDesc.getShortName() );
  29. return m_optionsBuf.getSize();
  30. }
  31. void hctConvertToPhantomActionFilter::getOptions(void* optionData) const
  32. {
  33. // Get options is always called after getOptionsSize() - so we reuse the temporary buffer we used in getOptionsSize()
  34. hkString::memCpy( optionData, m_optionsBuf.begin(), m_optionsBuf.getSize() );
  35. }
  36. /*
  37. * Havok SDK - NO SOURCE PC DOWNLOAD, BUILD(#20090216)
  38. * Confidential Information of Havok.  (C) Copyright 1999-2009
  39. * Telekinesys Research Limited t/a Havok. All Rights Reserved. The Havok
  40. * Logo, and the Havok buzzsaw logo are trademarks of Havok.  Title, ownership
  41. * rights, and intellectual property rights in the Havok software remain in
  42. * Havok and/or its suppliers.
  43. * Use of this software for evaluation purposes is subject to and indicates
  44. * acceptance of the End User licence Agreement for this product. A copy of
  45. * the license is included with this software and is also available at www.havok.com/tryhavok.
  46. */