Click here to Skip to main content
15,895,084 members
Articles / Multimedia / OpenGL

Bouncing Balls in OSG

Rate me:
Please Sign up or sign in to vote.
4.50/5 (4 votes)
29 Aug 2008CPOL4 min read 36.9K   835   26  
Simulation in OSG using discrete events, a Ternary Heap and Interpolation
#include "StdAfx.h"
#include "Change.h"
#include "Simulator.h"

CChange::CChange()
{
	enabled = false;
}

CChange::~CChange(void)
{
}

double CChange::Time() const
{
	return t;
}

int CChange::Index() const
{
	return index;
}

void CChange::Expire()
{
}

void CChange::ChangeTime(double t)
{
    Simulator()->ChangeTime(this, t);
}

bool CChange::IsEnabled() const
{
	return enabled;
}

void CChange::Enable(bool enable)
{
	Simulator()->Enable( this, enable );
}

bool CChange::operator <(const CChange &change) const
{
	if( enabled )
		if( change.enabled )
			return Time() < change.Time();
		else
			return true;
	else
		return false;
}

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Software Developer (Senior) Engineering, Design and Models Ltd
United Kingdom United Kingdom
I develop rail signalling simulation technology at EDM where I use C++ and C#, but also love to dabble in functional programming languages such as Clean and Cat.

Comments and Discussions