9 #ifndef BallController_H_
10 #define BallController_H_
33 bool includeInterExt =
false) = 0;
52 virtual void addBall(
int x,
int y);
55 virtual void deleteBall(
const std::wstring
id) = 0;
58 virtual void acquireBall(
const std::wstring
id) = 0;
61 virtual void divestBall(
const std::wstring
id) = 0;
65 int xUpperBound,
int yUpperBound) = 0;
72 virtual void setDimensions(
int minX,
int minY,
int maxX,
int maxY);
78 virtual const std::wstring&
federateId()
const = 0;
114 virtual const std::wstring&
getLog()
const;
124 double direction,
double& newX,
double& newY)
const;
129 double distance,
double direction,
double newX,
double newY,
130 double radius,
double& finalDirection,
double& distAfterColl,
131 double& collX,
double& collY,
double& finalX,
double& finalY)
const;
136 double distance,
double direction,
double newX,
double newY,
137 double radius,
double& finalDirection,
double& distAfterColl,
138 double& collX,
double& collY,
double& finalX,
double& finalY)
const;
178 static const double pi;
virtual bool isInteractionExtensionSupported() const =0
virtual const std::wstring & getLog() const
bool myOwnershipTransferEnabled
Definition: ballController.h:163
DdmRegionMap * myRegionData
Definition: ballController.h:157
unsigned char BallColor
Definition: ballData.h:15
virtual bool calculateVertWallCollision(double x, double y, double distance, double direction, double newX, double newY, double radius, double &finalDirection, double &distAfterColl, double &collX, double &collY, double &finalX, double &finalY) const
int myMinY
Definition: ballController.h:168
bool myIsSubscribed
Definition: ballController.h:165
Definition: ballData.h:47
virtual void acquireBall(const std::wstring id)=0
virtual bool isFederateNameSupported() const =0
virtual const std::wstring & federateType() const =0
int myMinX
Definition: ballController.h:167
int myMaxX
Definition: ballController.h:169
unsigned int myNextBallNumber
Definition: ballController.h:172
virtual const std::wstring & federateId() const =0
std::map< std::wstring, Ball * > BallMap
Definition: ballData.h:118
virtual bool createAndJoinFederation(const std::wstring &federation, const std::wstring &federateType, const std::wstring &federateName=std::wstring(), bool includeInterExt=false)=0
virtual bool calculateHorizWallCollision(double x, double y, double distance, double direction, double newX, double newY, double radius, double &finalDirection, double &distAfterColl, double &collX, double &collY, double &finalX, double &finalY) const
virtual void deleteBall(const std::wstring id)=0
std::list< TextEvent > myPendingTextEvents
Definition: ballController.h:159
int myMaxY
Definition: ballController.h:170
virtual bool unsubscribeWithRegions(bool resubscribeWithoutRegion)=0
static const double maxRadians
Definition: ballController.h:179
static const double degreesToRadians
Definition: ballController.h:181
BallColor myBallColor
Definition: ballController.h:173
static const double maxDegrees
Definition: ballController.h:180
bool myDdmEnabled
Definition: ballController.h:162
virtual bool subscribeWithRegion(int xLowerBound, int yLowerBound, int xUpperBound, int yUpperBound)=0
virtual void requestNewBall(Ball *ball, const std::wstring name)=0
Definition: ballController.h:21
virtual bool resignAndDestroyFederation()=0
virtual void setDimensions(int minX, int minY, int maxX, int maxY)
virtual void setBallColor(BallColor)
bool myIsJoined
Definition: ballController.h:164
virtual const std::wstring & federationName() const =0
virtual bool unsubscribe()=0
bool myIsConnected
Definition: ballController.h:161
BallMap * myBallData
Definition: ballController.h:156
virtual void receiveUpdates()=0
std::map< std::wstring, DdmRegion * > DdmRegionMap
Definition: regionData.h:59
virtual const std::wstring & federateName() const =0
virtual bool isOwnershipTransferEnabled() const
virtual bool subscribe()=0
static const double pi
Definition: ballController.h:178
virtual void sendUpdates()=0
virtual void getPendingTextEvents(std::list< TextEvent > &textEvents)
virtual void calculateNewLoc(double x, double y, double distance, double direction, double &newX, double &newY) const
virtual bool isSubscribed() const
virtual bool isJoined() const
std::wstring myLog
Definition: ballController.h:175
virtual bool isConnected() const
virtual bool isDdmEnabled() const
virtual ~BallController()
virtual void divestBall(const std::wstring id)=0
virtual void addBall(int x, int y)