Thread: Custom Classes?
View Single Post
  #1   Spotlight this post!  
Unread 14-11-2012, 10:04
virtuald's Avatar
virtuald virtuald is online now
RobotPy Guy
AKA: Dustin Spicuzza
FRC #1418 (), FRC #1973, FRC #4796, FRC #6367 ()
Team Role: Mentor
 
Join Date: Dec 2008
Rookie Year: 2003
Location: Boston, MA
Posts: 1,067
virtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant future
Re: Custom Classes?

Two ways of doing it. One is totally inline as you're doing it (which isn't really the C++ way of doing it).

Code:
#include <wpilib.h>

class LimitSwitch
{
public:

    LimitSwitch(UINT32 port) :
        di(port)
    {}
    
    bool getState()
    {
        return di.Get() != 0;
    }

private:
    DigitalInput di;
};
Or split into cpp/h files. Here's LimitSwitch.h:

Code:
#ifndef __LIMITSWITCH_H
#define __LIMITSWITCH_H

class LimitSwitch
{
public:

    LimitSwitch(UINT32 port); 
    
    bool getState();

private:
    DigitalInput di;
};
#endif
And LimitSwitch.cpp:

Code:
#include <wpilib.h>
#include "LimitSwitch.h"

LimitSwitch::LimitSwitch(UINT32 port) :
    di(port)
{}

bool LimitSwitch::getState()
{
    return di.Get() != 0;
}
__________________
Maintainer of RobotPy - Python for FRC
Creator of pyfrc (Robot Simulator + utilities for Python) and pynetworktables/pynetworktables2js (NetworkTables for Python & Javascript)

2017 Season: Teams #1973, #4796, #6369
Team #1418 (remote mentor): Newton Quarterfinalists, 2016 Chesapeake District Champion, 2x Innovation in Control award, 2x district event winner
Team #1418: 2015 DC Regional Innovation In Control Award, #2 seed; 2014 VA Industrial Design Award; 2014 Finalists in DC & VA
Team #2423: 2012 & 2013 Boston Regional Innovation in Control Award


Resources: FIRSTWiki (relaunched!) | My Software Stuff
Reply With Quote