Go to Post YO DAWGS. I GOT THIS. - LiquidMagik [more]
Home
Go Back   Chief Delphi > Technical > Programming > Java
CD-Media   CD-Spy  
portal register members calendar search Today's Posts Mark Forums Read FAQ rules

 
 
 
Thread Tools Rate Thread Display Modes
Prev Previous Post   Next Post Next
  #1   Spotlight this post!  
Unread 20-11-2011, 16:06
rudun's Avatar
rudun rudun is offline
Registered User
FRC #0496 (Royals)
Team Role: Coach
 
Join Date: Jan 2009
Rookie Year: 2005
Location: Babylon
Posts: 42
rudun is an unknown quantity at this point
extending CANJaguar subclass

I am trying to add methods to help with reading our robots actual speed off of a CANJaguar in fps. The issue I am having now is that it is not building becasue it needs a constructor, but if I am inheriting the class shouldn't they already exist. What i want to be able to do is when i call a CANJaguar object, e.g. leftMotor.getFps(), it will return the fps data to me. This is my code so far.

Any help is greatly appreciated.

Code:
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package edu.wpi.first.wpilibj;
import edu.wpi.first.wpilibj.can.CANTimeoutException;
import edu.wpi.first.wpilibj.can.JaguarCANProtocol;


/**
 *
 * @author rudun
 */
public class fps extends CANJaguar {

    final static double PI = Math.PI;
    private double WheelSize;
     /**
     * Get the speed of your robot.
     *
     * @return The speed of the robot in fps.
     */
    public double getFps() throws CANTimeoutException {
        byte[] dataBuffer = new byte[8];
        byte dataSize;
        double rpms;

        dataSize = getTransaction(JaguarCANProtocol.LM_API_STATUS_SPD, dataBuffer);
        if (dataSize == 4) {
            rpms = unpackFXP16_16(dataBuffer);
        } else {
            rpms = 0.0;
        }
        
        double fps = 0;
        fps = (rpms *(WheelSize * PI))/(60 * 12);
        return fps;
    }
    
    public void setWheelSize(double WheelSizeInInches) {
        WheelSize = WheelSizeInInches;
        }
}
and this is my current compiler output

Code:
init:
clean:
init:
clean:
Created dir: C:\Users\kyle\Documents\NetBeansProjects\fpstest\build
Compiling 2 source files to C:\Users\kyle\Documents\NetBeansProjects\fpstest\build
C:\Users\kyle\Documents\NetBeansProjects\fpstest\src\edu\wpi\first\wpilibj\fps.java:13: error: no suitable constructor found for CANJaguar()
public class fps extends CANJaguar {
    constructor CANJaguar.CANJaguar(int,ControlMode) is not applicable
      (actual and formal argument lists differ in length)
    constructor CANJaguar.CANJaguar(int) is not applicable
      (actual and formal argument lists differ in length)
1 error
C:\Users\kyle\sunspotfrcsdk\ant\compile.xml:48: Compile failed; see the compiler error output for details.
BUILD FAILED (total time: 8 seconds)
Reply With Quote
 


Thread Tools
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump


All times are GMT -5. The time now is 08:31.

The Chief Delphi Forums are sponsored by Innovation First International, Inc.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi