35 lines
586 B
Plaintext
35 lines
586 B
Plaintext
// Copyright (C) 2010, Guy Barrand. All rights reserved.
|
|
// See the file tools.license for terms.
|
|
|
|
#ifndef tools_rroot_iro
|
|
#define tools_rroot_iro
|
|
|
|
#include <string>
|
|
|
|
namespace tools {
|
|
namespace rroot {
|
|
class buffer;
|
|
}}
|
|
|
|
#include "../cid"
|
|
|
|
namespace tools {
|
|
namespace rroot {
|
|
|
|
class iro {
|
|
public:
|
|
virtual ~iro(){}
|
|
public:
|
|
virtual void* cast(const std::string&) const = 0; //for ObjArray
|
|
virtual bool stream(buffer&) = 0;
|
|
|
|
virtual const std::string& s_cls() const = 0;
|
|
virtual iro* copy() const = 0;
|
|
|
|
virtual void* cast(cid) const = 0; //OPTIMIZATION (geo).
|
|
};
|
|
|
|
}}
|
|
|
|
#endif
|