VR-Forces 4.0.4 Class Documentation
examples/createParamDbDynamically/tankParametersBuilder.h
Go to the documentation of this file.
00001 /*******************************************************************************
00002 ** Copyright (c) 2004 MAK Technologies, Inc.
00003 ** All rights reserved.
00004 *******************************************************************************/
00005 /*******************************************************************************
00006 ** $RCSfile: tankParametersBuilder.h,v $ $Revision: 1.5 $ $State: Exp $
00007 *******************************************************************************/
00008 
00009 #ifndef DtTankParametersBuilder_H_
00010 #define DtTankParametersBuilder_H_
00011 
00012 #include "objectParametersBuilder.h"
00013 
00014 class DtVrfObjectParameters;
00015 class DtGroundVehicleParameters;
00016 class DtComponentDescriptorList;
00017 class DtSignatureObjectSensorDescriptor;
00018 
00019 //class DtTankParametersBuilder:
00020 //
00021 //Instances of DtTankParametersBuilder are used to create and configure a
00022 //DtVrfObjectParameters object for a tank.  The parameters object returned
00023 //should fully specify the necessary parameters to create a tank entity.
00024 
00025 class DtTankParametersBuilder : public DtObjectParametersBuilder
00026 {
00027 public:
00028 
00029    //default constructor
00030    DtTankParametersBuilder();
00031 
00032    //destructor
00033    virtual ~DtTankParametersBuilder();
00034 
00035    //Creates and configures parameters for a tank.
00036    virtual DtVrfObjectParameters* buildObjectParameters();
00037 
00038 protected:
00039    
00040    //Set up the bounding volume for the parameters entry.  Configures a
00041    //rectangular bounding volume, with an appropriate size for a tank.
00042    virtual void configureBoundingVolume(DtVrfObjectParameters& parameters);
00043 
00044    //Create and configure resources for the entity.  Configures entity
00045    //with ammo and fuel.
00046    virtual void createAndConfigureResources(DtVrfObjectParameters& parameters);
00047 
00048    //Set up the parameter's soil factors with values appropriate for a tank.
00049    virtual void configureSoilFactors(DtGroundVehicleParameters& parameters);
00050 
00051    //Create and configure sensors, controllers, and actuators for the given
00052    //movingObjectParameters object.  Connects appropriate components to one another.
00053    //Creates just a basic subset of all possible components a tank could be
00054    //configured with.
00055    virtual void createAndConfigureComponents(DtVrfObjectParameters& parameters);
00056 
00057    //Creates and configures all of the sensor components and places them
00058    //on the given descriptor list.
00059    virtual void initializeSensorDescriptors(
00060       DtComponentDescriptorList& sensorDescriptors);
00061 
00062    //Creates and configures all of the controller components and places them
00063    //on the given descriptor list.
00064    virtual void initializeControllerDescriptors(
00065       DtComponentDescriptorList& controllerDescriptors);
00066 
00067    //Creates and configures all of the actuator components and places them
00068    //on the given descriptor list.
00069    virtual void initializeActuatorDescriptors(
00070       DtComponentDescriptorList& actuatorDescriptors);
00071 
00072    //Configures a DtTargetDetectionSensorDescriptor component.
00073    virtual void initializeSignatureSensorDescriptor(
00074       DtSignatureObjectSensorDescriptor& targetDetectSensor);
00075 
00076    //Configure local and remote subcomponent types for the given parameters object.
00077    //Specifies the kinds of state repository, network interface, radio, etc. to
00078    //create when an object is created using this the parameters object.
00079    virtual void configureSubComponentTypes(DtVrfObjectParameters& parameters);
00080 
00081    //copy constructor - not implemented
00082    DtTankParametersBuilder(const DtTankParametersBuilder& orig);
00083 
00084    //assignment operator - not implemented
00085    DtTankParametersBuilder& operator=(const DtTankParametersBuilder& orig);
00086 };
00087 
00088 #endif

Document ID: Generated on Fri Jun 29 16:33:32 EDT 2012 from SVN revision 116588
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)