
            /**
            IMPORTANT !!!
       
            DO NOT EDIT THIS FILE. IT IS GENERATED FROM approriate xml file in xmlresources/gbcommands BY
            THE JavaClassesGenerator.xslt. MODIFY THESE FILES INSTEAD OF THIS ONE.
       
            IMPORTANT END !!!
            */
            package
            cz.cuni.amis.pogamut.ut2004.communication.messages.gbcommands;
	    		import java.util.*;    
    import javax.vecmath.*;    
    import cz.cuni.amis.pogamut.base.communication.messages.*;    
    import cz.cuni.amis.pogamut.base.agent.worldview.*;    
    import cz.cuni.amis.pogamut.base.agent.worldview.objects.*;    
    import cz.cuni.amis.pogamut.base.communication.translator.*;    
    import cz.cuni.amis.pogamut.ut2004.communication.translator.itemdescriptor.*;    
    import cz.cuni.amis.pogamut.ut2004.communication.messages.ItemType.Category;    
    import cz.cuni.amis.pogamut.base.exceptions.*;    
    import cz.cuni.amis.pogamut.base3d.worldview.objects.*;    
    import cz.cuni.amis.pogamut.ut2004.communication.messages.*;    
    import cz.cuni.amis.pogamut.ut2004.agent.worldview.objects.*;    
                
            
            /**
              
		Will send a ray from specified location to specified
		destination, responds with FTR message. FTRACE uses FastTrace
		function, which is faster then Trace function, but still rather
		slow.
	
                          Corresponding GameBots command is 
                          FTRACE.
                      
             */
            
            public class
            FastTrace extends
        CommandMessage
                        
            {
            
            
            
            /**
              Creates new instance of command FastTrace.
              
		Will send a ray from specified location to specified
		destination, responds with FTR message. FTRACE uses FastTrace
		function, which is faster then Trace function, but still rather
		slow.
	Corresponding GameBots message for this command is 
              FTRACE.
                  @param Id 
			Message Id made up by you and echoed in response so you can
			match up response with query.
		
                  @param From 
			Origin point of the ray. If you won't support From
			attribute, current bot location will be taken as From.
		
                  @param To Target point of the ray.
              */
             public FastTrace(
                String Id,  Location From,  Location To) {
                    
                    this.Id = Id;
                
                    this.From = From;
                
                    this.To = To;
                
                }
               
            
            		/**
		             Creates new instance of command FastTrace.
		             
		Will send a ray from specified location to specified
		destination, responds with FTR message. FTRACE uses FastTrace
		function, which is faster then Trace function, but still rather
		slow.
	Corresponding GameBots message for this command is 
		             FTRACE.
		             <p></p>WARNING: this is empty-command constructor, you have to use setters to fill it up!
		             */
            		public  FastTrace() {
            		}
            	
            
            /////// Properties BEGIN
            
        /**
        
			Message Id made up by you and echoed in response so you can
			match up response with query.
		 */
        protected
         String Id = 
        	null;
        
        
        /**
        
			Message Id made up by you and echoed in response so you can
			match up response with query.
		 */
        public
        String getId() {
            return
         Id;
        }
        

        
            /**         
        
			Message Id made up by you and echoed in response so you can
			match up response with query.
		 */
        public FastTrace setId(String Id) {
            this.Id = Id;
            return this;
            }
       
        /**
        
			Origin point of the ray. If you won't support From
			attribute, current bot location will be taken as From.
		 */
        protected
         Location From = 
        	null;
        
        
        /**
        
			Origin point of the ray. If you won't support From
			attribute, current bot location will be taken as From.
		 */
        public
        Location getFrom() {
            return
         From;
        }
        

        
            /**         
        
			Origin point of the ray. If you won't support From
			attribute, current bot location will be taken as From.
		 */
        public FastTrace setFrom(Location From) {
            this.From = From;
            return this;
            }
       
        /**
        Target point of the ray. */
        protected
         Location To = 
        	null;
        
        
        /**
        Target point of the ray. */
        public
        Location getTo() {
            return
         To;
        }
        

        
            /**         
        Target point of the ray. */
        public FastTrace setTo(Location To) {
            this.To = To;
            return this;
            }
       
            /////// Properties END
            
            /////// Extra Java code BEGIN
                        	
            	/////// Additional code from xslt BEGIN            	 
            			
            		
            		
            	/////// Additional code from xslt END            
				                    
	            /////// Extra Java from XML BEGIN
            		
            	/////// Extra Java from XML END
            	    
            /////// Extra Java code END
            
            
            
            /**
              * Cloning constructor.
              */
             public FastTrace(FastTrace original) {
                
                     this.Id=original.Id;
                
                     this.From=original.From;
                
                     this.To=original.To;
                
             }   
             
             
                
                 
            public String toString() {
                return
                
                    	super.toString();
                     
             }
             
             public String toHtmlString() {
                return super.toString() +
             
            "<b>Id</b> : " + 
            String.valueOf(Id) + 
            " <br/> " +
             
            "<b>From</b> : " + 
            String.valueOf(From) + 
            " <br/> " +
             
            "<b>To</b> : " + 
            String.valueOf(To) + 
            " <br/> " +
             "";
             }            
             
             
             
                 public String toMessage() {
              		StringBuffer buf = new StringBuffer();
              		buf.append("FTRACE");
              		
		    					if (Id != null) {
		    						buf.append(" {Id " + Id + "}");
		    					}
		    				
                                if (From != null) {
                                    buf.append(" {From " + 
                                        From.getX() + "," + 
                                        From.getY() + "," + 
                                        From.getZ() + "}");
                                }
                            
                                if (To != null) {
                                    buf.append(" {To " + 
                                        To.getX() + "," + 
                                        To.getY() + "," + 
                                        To.getZ() + "}");
                                }
                                        
            		return buf.toString();
            }
             
             }
                         
        