<commit_before>/*
 * Copyright (c) 2017 <NAME>
 *
 * This file is part of the Realms Of Steel.
 * For conditions of distribution and use, see copyright details in the LICENSE file.
 */
#ifndef ROS_SCENE_H
#define ROS_SCENE_H

#include <core/Common.h>
#include <core/Environment.h>
#include <core/Buffer.h>
#include <graphics/SceneNode.h>

namespace ros {
    class ROS_API Scene: public Buffer {
        public:
            Scene(const std::string& name, SceneNodePtr root = SceneNodePtr());
            const std::string& getName() const { return name; }

            const SceneNodePtr getRoot() const { return root; }
            void setRoot(SceneNodePtr root);

            virtual bool isNull() const { return root; }
            virtual U32 getSize() const { return 0; /* TODO */ }

        private:
            std::string name;
            SceneNodePtr root;
    };

    typedef boost::shared_ptr<Scene> ScenePtr;
}

#endif // ROS_SCENE_H
<commit_msg>Make Scene a Resource not a Buffer<commit_after>/*
 * Copyright (c) 2017 <NAME>
 *
 * This file is part of the Realms Of Steel.
 * For conditions of distribution and use, see copyright details in the LICENSE file.
 */
#ifndef ROS_SCENE_H
#define ROS_SCENE_H

#include <core/Common.h>
#include <core/Environment.h>
#include <resources/Resource.h>
#include <graphics/SceneNode.h>

namespace ros {
    class ROS_API Scene: public Resource {
        public:
            Scene(const std::string& name, SceneNodePtr root = SceneNodePtr());
            const std::string& getName() const { return name; }

            const SceneNodePtr getRoot() const { return root; }
            void setRoot(SceneNodePtr root);

            virtual bool isNull() const { return root; }

        private:
            std::string name;
            SceneNodePtr root;
    };

    typedef boost::shared_ptr<Scene> ScenePtr;
}

#endif // ROS_SCENE_H

{'fraction_non_alphanumeric': 0.1013262599469496, 'fraction_numerical': 0.005835543766578249, 'mean_word_length': 2.6980392156862747, 'pattern_counts': {'":': 0, '<': 15, '<?xml version=': 0, '>': 15, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4645647', 'n_tokens_mistral': 587, 'n_tokens_neox': 539, 'n_words': 181}