Sha256: 6af1b296e43f02ac652077d851b3f20624c2fef5444012997eee22838f592e70

Contents?: true

Size: 1.1 KB

Versions: 6

Compression:

Stored size: 1.1 KB

Contents

// -*- c++ -*-
#pragma once
#ifndef __REFLEX_SRC_FIXTURE_H__
#define __REFLEX_SRC_FIXTURE_H__


#include <memory>
#include <xot/noncopyable.h>
#include <reflex/defs.h>


class b2Fixture;
class b2Shape;


namespace Reflex
{


	class Body;


	class Fixture : public Xot::NonCopyable
	{

		public:

			Fixture (Body* body, const b2Shape* b2shape, void* userdata = NULL);

			~Fixture ();

			void set_density (float density);

			float    density () const;

			void set_friction (float friction);

			float    friction () const;

			void set_restitution (float restitution);

			float    restitution () const;

			void set_sensor (bool state);

			bool  is_sensor () const;

			      b2Fixture* b2ptr ();

			const b2Fixture* b2ptr () const;

			void       set_next (Fixture* fixture);

			      Fixture* next ();

			const Fixture* next () const;

		private:

			b2Fixture* b2fixture;

			std::unique_ptr<Fixture> pnext;

	};// Fixture


	void Fixture_copy_attributes (Fixture* to, const Fixture& from);

	Fixture* Fixture_create_temporary ();

	bool Fixture_is_temporary (const Fixture& fixture);


}// Reflex


#endif//EOH

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
reflexion-0.1.38 src/fixture.h
reflexion-0.1.37 src/fixture.h
reflexion-0.1.36 src/fixture.h
reflexion-0.1.35 src/fixture.h
reflexion-0.1.34 src/fixture.h
reflexion-0.1.33 src/fixture.h