#include "AdeptHeaders.hpp" #include "ComponentHeaders.hpp" #include "EarComponent.hpp" #include "Interface.hpp" #include "AudioComponentWeb.hpp" #include "AudioRenderer.hpp" // // Shared Data Support // Component::ClassData* EarComponent::DefaultData = NULL; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // InitializeClass // void EarComponent::InitializeClass() { Verify(!DefaultData); DefaultData = new ClassData( EarComponentClassID, "Adept::EarComponent", Component::DefaultData, 0, NULL ); Register_Object(DefaultData); } //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // void EarComponent::TerminateClass() { Unregister_Object(DefaultData); delete DefaultData; DefaultData = NULL; } //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // EarComponent // EarComponent::EarComponent( ClassData *class_data, MemoryStream *stream, RendererComponentWeb *owning_web, Interface *intface ): Component( class_data, stream, owning_web ) { // //------------------------------------------ // Attach the ear to the renderer's scene //------------------------------------------ // AudioComponentWeb* web = Cast_Object(AudioComponentWeb*,GetComponentWeb()); AudioRenderer* renderer = web->GetRenderer(); renderer->SetInterface(intface); } //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // EarComponent* EarComponent::Make( MemoryStream *stream, RendererComponentWeb *owning_web ) { EarComponent *ear = new EarComponent( DefaultData, stream, owning_web, Cast_Object(Interface*, owning_web->GetEntity()) ); return ear; } //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // EarComponent::~EarComponent() { } //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // void EarComponent::Execute() { } //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // void EarComponent::TestInstance() { Verify(IsDerivedFrom(DefaultData)); }