Encapsulate mjCModel internal lists.
PiperOrigin-RevId: 631760335 Change-Id: I9b67f6ed2e65a01877de15a92a04a1b31a6b3ff4
This commit is contained in:
committed by
Copybara-Service
parent
96844db926
commit
13bf9ae6bd
+99
-99
@@ -107,8 +107,8 @@ class mjCBoundingVolume {
|
||||
void SetId(int val) { idval_ = val; }
|
||||
|
||||
private:
|
||||
int idval_; // local id copy for nodes not storing their id's (e.g. faces)
|
||||
const int* id_; // pointer to object id
|
||||
int idval_; // local id copy for nodes not storing their id's (e.g. faces)
|
||||
const int* id_; // pointer to object id
|
||||
};
|
||||
|
||||
|
||||
@@ -354,6 +354,10 @@ class mjCFrame : public mjCFrame_, private mjsFrame {
|
||||
friend class mjCModel;
|
||||
|
||||
public:
|
||||
mjCFrame(mjCModel* = 0, mjCFrame* = 0);
|
||||
mjCFrame(const mjCFrame& other);
|
||||
mjCFrame& operator=(const mjCFrame& other);
|
||||
|
||||
mjsFrame spec;
|
||||
using mjCBase::name;
|
||||
using mjCBase::classname;
|
||||
@@ -368,9 +372,6 @@ class mjCFrame : public mjCFrame_, private mjsFrame {
|
||||
bool IsAncestor(const mjCFrame* child) const; // true if child is contained in this frame
|
||||
|
||||
private:
|
||||
mjCFrame(mjCModel* = 0, mjCFrame* = 0); // constructor
|
||||
mjCFrame(const mjCFrame& other); // copy constructor
|
||||
mjCFrame& operator=(const mjCFrame& other); // copy assignment
|
||||
void Compile(void); // compiler
|
||||
|
||||
mjCBody* body; // body that owns the frame
|
||||
@@ -400,6 +401,10 @@ class mjCJoint : public mjCJoint_, private mjsJoint {
|
||||
friend class mjXURDF;
|
||||
|
||||
public:
|
||||
mjCJoint(mjCModel* = nullptr, mjCDef* = nullptr);
|
||||
mjCJoint(const mjCJoint& other);
|
||||
mjCJoint& operator=(const mjCJoint& other);
|
||||
|
||||
mjsJoint spec;
|
||||
using mjCBase::name;
|
||||
using mjCBase::classname;
|
||||
@@ -416,10 +421,6 @@ class mjCJoint : public mjCJoint_, private mjsJoint {
|
||||
|
||||
|
||||
private:
|
||||
mjCJoint(mjCModel* = 0, mjCDef* = 0);
|
||||
mjCJoint(const mjCJoint& other); // copy constructor
|
||||
mjCJoint& operator=(const mjCJoint& other); // copy assignment
|
||||
|
||||
int Compile(void); // compiler; return dofnum
|
||||
void PointToLocal(void);
|
||||
};
|
||||
@@ -468,6 +469,10 @@ class mjCGeom : public mjCGeom_, private mjsGeom {
|
||||
friend class mjXURDF;
|
||||
|
||||
public:
|
||||
mjCGeom(mjCModel* = nullptr, mjCDef* = nullptr);
|
||||
mjCGeom(const mjCGeom& other);
|
||||
mjCGeom& operator=(const mjCGeom& other);
|
||||
|
||||
using mjCBase::name;
|
||||
mjsGeom spec; // variables set by user
|
||||
double GetVolume(void); // compute geom volume
|
||||
@@ -491,10 +496,6 @@ class mjCGeom : public mjCGeom_, private mjsGeom {
|
||||
void del_material() { spec_material_.clear(); }
|
||||
|
||||
private:
|
||||
mjCGeom(mjCModel* = 0, mjCDef* = 0);
|
||||
mjCGeom(const mjCGeom& other); // copy constructor
|
||||
mjCGeom& operator=(const mjCGeom& other); // copy assignment
|
||||
|
||||
void Compile(void); // compiler
|
||||
double GetRBound(void); // compute bounding sphere radius
|
||||
void ComputeAABB(void); // compute axis-aligned bounding box
|
||||
@@ -533,6 +534,10 @@ class mjCSite : public mjCSite_, private mjsSite {
|
||||
friend class mjXURDF;
|
||||
|
||||
public:
|
||||
mjCSite(mjCModel* = nullptr, mjCDef* = nullptr);
|
||||
mjCSite(const mjCSite& other);
|
||||
mjCSite& operator=(const mjCSite& other);
|
||||
|
||||
mjsSite spec; // variables set by user
|
||||
|
||||
// use strings from mjCBase rather than mjStrings from mjsSite
|
||||
@@ -546,10 +551,6 @@ class mjCSite : public mjCSite_, private mjsSite {
|
||||
void del_material() { material_.clear(); }
|
||||
|
||||
private:
|
||||
mjCSite(mjCModel* = 0, mjCDef* = 0); // constructor
|
||||
mjCSite(const mjCSite& other); // copy constructor
|
||||
mjCSite& operator=(const mjCSite& other); // copy assignment
|
||||
|
||||
void Compile(void); // compiler
|
||||
void CopyFromSpec(); // copy spec into attributes
|
||||
void PointToLocal(void);
|
||||
@@ -578,6 +579,10 @@ class mjCCamera : public mjCCamera_, private mjsCamera {
|
||||
friend class mjXWriter;
|
||||
|
||||
public:
|
||||
mjCCamera(mjCModel* = nullptr, mjCDef* = nullptr);
|
||||
mjCCamera(const mjCCamera& other);
|
||||
mjCCamera& operator=(const mjCCamera& other);
|
||||
|
||||
mjsCamera spec;
|
||||
using mjCBase::name;
|
||||
using mjCBase::classname;
|
||||
@@ -588,10 +593,6 @@ class mjCCamera : public mjCCamera_, private mjsCamera {
|
||||
const std::vector<double>& get_userdata() { return userdata_; }
|
||||
|
||||
private:
|
||||
mjCCamera(mjCModel* = 0, mjCDef* = 0); // constructor
|
||||
mjCCamera(const mjCCamera& other); // copy constructor
|
||||
mjCCamera& operator=(const mjCCamera& other); // copy assignment
|
||||
|
||||
void Compile(void); // compiler
|
||||
void CopyFromSpec(void);
|
||||
void PointToLocal(void);
|
||||
@@ -618,6 +619,10 @@ class mjCLight : public mjCLight_, private mjsLight {
|
||||
friend class mjXWriter;
|
||||
|
||||
public:
|
||||
mjCLight(mjCModel* = nullptr, mjCDef* = nullptr);
|
||||
mjCLight(const mjCLight& other);
|
||||
mjCLight& operator=(const mjCLight& other);
|
||||
|
||||
mjsLight spec;
|
||||
using mjCBase::name;
|
||||
using mjCBase::classname;
|
||||
@@ -627,10 +632,6 @@ class mjCLight : public mjCLight_, private mjsLight {
|
||||
const std::string& get_targetbody() { return targetbody_; }
|
||||
|
||||
private:
|
||||
mjCLight(mjCModel* = 0, mjCDef* = 0); // constructor
|
||||
mjCLight(const mjCLight& other); // copy constructor
|
||||
mjCLight& operator=(const mjCLight& other); // copy assignment
|
||||
|
||||
void Compile(void); // compiler
|
||||
void CopyFromSpec(void);
|
||||
void PointToLocal(void);
|
||||
@@ -681,6 +682,10 @@ class mjCFlex: public mjCFlex_, private mjsFlex {
|
||||
friend class mjXWriter;
|
||||
|
||||
public:
|
||||
mjCFlex(mjCModel* = nullptr);
|
||||
mjCFlex(const mjCFlex& other);
|
||||
mjCFlex& operator=(const mjCFlex& other);
|
||||
|
||||
mjsFlex spec;
|
||||
using mjCBase::name;
|
||||
using mjCBase::classname;
|
||||
@@ -703,10 +708,6 @@ class mjCFlex: public mjCFlex_, private mjsFlex {
|
||||
void DelTexcoord(); // delete texcoord
|
||||
|
||||
private:
|
||||
mjCFlex(mjCModel* = 0);
|
||||
mjCFlex(const mjCFlex& other); // copy constructor
|
||||
mjCFlex& operator=(const mjCFlex& other); // copy assignment
|
||||
|
||||
void Compile(const mjVFS* vfs); // compiler
|
||||
void CreateBVH(void); // create flex BVH
|
||||
void CreateShellPair(void); // create shells and evpairs
|
||||
@@ -779,9 +780,9 @@ class mjCMesh: public mjCMesh_, private mjsMesh {
|
||||
friend class mjCFlexcomp;
|
||||
friend class mjXWriter;
|
||||
public:
|
||||
mjCMesh(mjCModel* = 0, mjCDef* = 0);
|
||||
mjCMesh(const mjCMesh& other); // copy constructor
|
||||
mjCMesh& operator=(const mjCMesh& other); // copy assignment
|
||||
mjCMesh(mjCModel* = nullptr, mjCDef* = nullptr);
|
||||
mjCMesh(const mjCMesh& other);
|
||||
mjCMesh& operator=(const mjCMesh& other);
|
||||
~mjCMesh();
|
||||
|
||||
mjsMesh spec;
|
||||
@@ -910,6 +911,11 @@ class mjCSkin: public mjCSkin_, private mjsSkin {
|
||||
friend class mjXWriter;
|
||||
|
||||
public:
|
||||
mjCSkin(mjCModel* = nullptr);
|
||||
mjCSkin(const mjCSkin& other);
|
||||
mjCSkin& operator=(const mjCSkin& other);
|
||||
~mjCSkin();
|
||||
|
||||
mjsSkin spec;
|
||||
using mjCBase::name;
|
||||
using mjCBase::classname;
|
||||
@@ -931,11 +937,6 @@ class mjCSkin: public mjCSkin_, private mjsSkin {
|
||||
void PointToLocal();
|
||||
|
||||
private:
|
||||
mjCSkin(mjCModel* = 0); // constructor
|
||||
mjCSkin(const mjCSkin& other); // copy constructor
|
||||
mjCSkin& operator=(const mjCSkin& other); // copy assignment
|
||||
~mjCSkin(); // destructor
|
||||
|
||||
void ResolveReferences(const mjCModel* m);
|
||||
void NameSpace(const mjCModel* m);
|
||||
void Compile(const mjVFS* vfs); // compiler
|
||||
@@ -965,6 +966,11 @@ class mjCHField : public mjCHField_, private mjsHField {
|
||||
friend class mjXWriter;
|
||||
|
||||
public:
|
||||
mjCHField(mjCModel* model);
|
||||
mjCHField(const mjCHField& other);
|
||||
mjCHField& operator=(const mjCHField& other);
|
||||
~mjCHField();
|
||||
|
||||
mjsHField spec;
|
||||
using mjCBase::name;
|
||||
using mjCBase::info;
|
||||
@@ -978,11 +984,6 @@ class mjCHField : public mjCHField_, private mjsHField {
|
||||
std::vector<float>& get_userdata() { return userdata_; }
|
||||
|
||||
private:
|
||||
mjCHField(mjCModel* model); // constructor
|
||||
mjCHField(const mjCHField& other); // copy constructor
|
||||
mjCHField& operator=(const mjCHField& other); // copy assignment
|
||||
~mjCHField(); // destructor
|
||||
|
||||
void Compile(const mjVFS* vfs); // compiler
|
||||
|
||||
void LoadCustom(mjResource* resource); // load from custom format
|
||||
@@ -1012,7 +1013,10 @@ class mjCTexture : public mjCTexture_, private mjsTexture {
|
||||
friend class mjXWriter;
|
||||
|
||||
public:
|
||||
~mjCTexture(); // destructor
|
||||
mjCTexture(mjCModel*);
|
||||
mjCTexture(const mjCTexture& other);
|
||||
mjCTexture& operator=(const mjCTexture& other);
|
||||
~mjCTexture();
|
||||
|
||||
mjsTexture spec;
|
||||
using mjCBase::name;
|
||||
@@ -1027,10 +1031,6 @@ class mjCTexture : public mjCTexture_, private mjsTexture {
|
||||
std::vector<std::string> get_cubefiles() const { return cubefiles_; }
|
||||
|
||||
private:
|
||||
mjCTexture(mjCModel*); // constructor
|
||||
mjCTexture(const mjCTexture& other); // copy constructor
|
||||
mjCTexture& operator=(const mjCTexture& other); // copy assignment
|
||||
|
||||
void Compile(const mjVFS* vfs); // compiler
|
||||
|
||||
void Builtin2D(void); // make builtin 2D
|
||||
@@ -1069,6 +1069,10 @@ class mjCMaterial : public mjCMaterial_, private mjsMaterial {
|
||||
friend class mjXWriter;
|
||||
|
||||
public:
|
||||
mjCMaterial(mjCModel* = nullptr, mjCDef* = nullptr);
|
||||
mjCMaterial(const mjCMaterial& other);
|
||||
mjCMaterial& operator=(const mjCMaterial& other);
|
||||
|
||||
mjsMaterial spec;
|
||||
using mjCBase::name;
|
||||
using mjCBase::classname;
|
||||
@@ -1082,10 +1086,6 @@ class mjCMaterial : public mjCMaterial_, private mjsMaterial {
|
||||
void del_texture() { texture_.clear(); }
|
||||
|
||||
private:
|
||||
mjCMaterial(mjCModel* = 0, mjCDef* = 0); // constructor
|
||||
mjCMaterial(const mjCMaterial& other); // copy constructor
|
||||
mjCMaterial& operator=(const mjCMaterial& other); // copy assignment
|
||||
|
||||
void Compile(void); // compiler
|
||||
};
|
||||
|
||||
@@ -1110,6 +1110,10 @@ class mjCPair : public mjCPair_, private mjsPair {
|
||||
friend class mjXWriter;
|
||||
|
||||
public:
|
||||
mjCPair(mjCModel* = nullptr, mjCDef* = nullptr);
|
||||
mjCPair(const mjCPair& other);
|
||||
mjCPair& operator=(const mjCPair& other);
|
||||
|
||||
mjsPair spec;
|
||||
using mjCBase::name;
|
||||
using mjCBase::classname;
|
||||
@@ -1128,10 +1132,6 @@ class mjCPair : public mjCPair_, private mjsPair {
|
||||
}
|
||||
|
||||
private:
|
||||
mjCPair(mjCModel* = 0, mjCDef* = 0); // constructor
|
||||
mjCPair(const mjCPair& other); // copy constructor
|
||||
mjCPair& operator=(const mjCPair& other); // copy assignment
|
||||
|
||||
void Compile(void); // compiler
|
||||
|
||||
mjCGeom* geom1; // geom1
|
||||
@@ -1160,6 +1160,10 @@ class mjCBodyPair : public mjCBodyPair_, private mjsExclude {
|
||||
friend class mjCModel;
|
||||
|
||||
public:
|
||||
mjCBodyPair(mjCModel*);
|
||||
mjCBodyPair(const mjCBodyPair& other);
|
||||
mjCBodyPair& operator=(const mjCBodyPair& other);
|
||||
|
||||
mjsExclude spec;
|
||||
using mjCBase::name;
|
||||
using mjCBase::info;
|
||||
@@ -1177,9 +1181,6 @@ class mjCBodyPair : public mjCBodyPair_, private mjsExclude {
|
||||
}
|
||||
|
||||
private:
|
||||
mjCBodyPair(mjCModel*); // constructor
|
||||
mjCBodyPair(const mjCBodyPair& other); // copy constructor
|
||||
mjCBodyPair& operator=(const mjCBodyPair& other); // copy assignment
|
||||
|
||||
void Compile(void); // compiler
|
||||
};
|
||||
@@ -1206,6 +1207,10 @@ class mjCEquality : public mjCEquality_, private mjsEquality {
|
||||
friend class mjXWriter;
|
||||
|
||||
public:
|
||||
mjCEquality(mjCModel* = 0, mjCDef* = 0);
|
||||
mjCEquality(const mjCEquality& other);
|
||||
mjCEquality& operator=(const mjCEquality& other);
|
||||
|
||||
mjsEquality spec;
|
||||
using mjCBase::name;
|
||||
using mjCBase::classname;
|
||||
@@ -1217,10 +1222,6 @@ class mjCEquality : public mjCEquality_, private mjsEquality {
|
||||
void NameSpace(const mjCModel* m);
|
||||
|
||||
private:
|
||||
mjCEquality(mjCModel* = 0, mjCDef* = 0); // constructor
|
||||
mjCEquality(const mjCEquality& other); // copy constructor
|
||||
mjCEquality& operator=(const mjCEquality& other); // copy assignment
|
||||
|
||||
void Compile(void); // compiler
|
||||
};
|
||||
|
||||
@@ -1246,6 +1247,11 @@ class mjCTendon : public mjCTendon_, private mjsTendon {
|
||||
friend class mjXWriter;
|
||||
|
||||
public:
|
||||
mjCTendon(mjCModel* = nullptr, mjCDef* = nullptr);
|
||||
mjCTendon(const mjCTendon& other);
|
||||
mjCTendon& operator=(const mjCTendon& other);
|
||||
~mjCTendon();
|
||||
|
||||
mjsTendon spec;
|
||||
using mjCBase::name;
|
||||
using mjCBase::classname;
|
||||
@@ -1279,11 +1285,6 @@ class mjCTendon : public mjCTendon_, private mjsTendon {
|
||||
bool is_limited() const;
|
||||
|
||||
private:
|
||||
mjCTendon(mjCModel* = 0, mjCDef* = 0); // constructor
|
||||
mjCTendon(const mjCTendon& other); // copy constructor
|
||||
mjCTendon& operator=(const mjCTendon& other); // copy assignment
|
||||
~mjCTendon(); // destructor
|
||||
|
||||
void Compile(void); // compiler
|
||||
};
|
||||
|
||||
@@ -1342,14 +1343,13 @@ class mjCPlugin : public mjCPlugin_ {
|
||||
friend class mjXWriter;
|
||||
|
||||
public:
|
||||
mjCPlugin(mjCModel*);
|
||||
mjCPlugin(const mjCPlugin& other);
|
||||
mjCPlugin& operator=(const mjCPlugin& other);
|
||||
mjsPlugin spec;
|
||||
mjCBase* parent; // parent object (only used when generating error message)
|
||||
mjCPlugin(const mjCPlugin& other); // copy constructor
|
||||
|
||||
private:
|
||||
mjCPlugin(mjCModel*); // constructor
|
||||
mjCPlugin& operator=(const mjCPlugin& other); // copy assignment
|
||||
|
||||
void Compile(void); // compiler
|
||||
};
|
||||
|
||||
@@ -1381,6 +1381,10 @@ class mjCActuator : public mjCActuator_, private mjsActuator {
|
||||
friend class mjXWriter;
|
||||
|
||||
public:
|
||||
mjCActuator(mjCModel* = nullptr, mjCDef* = nullptr);
|
||||
mjCActuator(const mjCActuator& other);
|
||||
mjCActuator& operator=(const mjCActuator& other);
|
||||
|
||||
mjsActuator spec;
|
||||
using mjCBase::name;
|
||||
using mjCBase::classname;
|
||||
@@ -1397,10 +1401,6 @@ class mjCActuator : public mjCActuator_, private mjsActuator {
|
||||
bool is_actlimited() const;
|
||||
|
||||
private:
|
||||
mjCActuator(mjCModel* = 0, mjCDef* = 0); // constructor
|
||||
mjCActuator(const mjCActuator& other); // copy constructor
|
||||
mjCActuator& operator=(const mjCActuator& other); // copy assignment
|
||||
|
||||
void Compile(void); // compiler
|
||||
void CopyFromSpec();
|
||||
void PointToLocal();
|
||||
@@ -1436,6 +1436,10 @@ class mjCSensor : public mjCSensor_, private mjsSensor {
|
||||
friend class mjXWriter;
|
||||
|
||||
public:
|
||||
mjCSensor(mjCModel*);
|
||||
mjCSensor(const mjCSensor& other);
|
||||
mjCSensor& operator=(const mjCSensor& other);
|
||||
|
||||
mjsSensor spec;
|
||||
using mjCBase::name;
|
||||
using mjCBase::classname;
|
||||
@@ -1447,10 +1451,6 @@ class mjCSensor : public mjCSensor_, private mjsSensor {
|
||||
const std::string& get_refname() { return spec_refname_; }
|
||||
|
||||
private:
|
||||
mjCSensor(mjCModel*); // constructor
|
||||
mjCSensor(const mjCSensor& other); // copy constructor
|
||||
mjCSensor& operator=(const mjCSensor& other); // copy assignment
|
||||
|
||||
void Compile(void); // compiler
|
||||
void CopyFromSpec();
|
||||
void PointToLocal();
|
||||
@@ -1477,6 +1477,11 @@ class mjCNumeric : public mjCNumeric_, private mjsNumeric {
|
||||
friend class mjXWriter;
|
||||
|
||||
public:
|
||||
mjCNumeric(mjCModel*);
|
||||
mjCNumeric(const mjCNumeric& other);
|
||||
mjCNumeric& operator=(const mjCNumeric& other);
|
||||
~mjCNumeric();
|
||||
|
||||
mjsNumeric spec;
|
||||
using mjCBase::name;
|
||||
using mjCBase::info;
|
||||
@@ -1485,11 +1490,6 @@ class mjCNumeric : public mjCNumeric_, private mjsNumeric {
|
||||
void CopyFromSpec();
|
||||
|
||||
private:
|
||||
mjCNumeric(mjCModel*); // constructor
|
||||
mjCNumeric(const mjCNumeric& other); // copy constructor
|
||||
mjCNumeric& operator=(const mjCNumeric& other); // copy assignment
|
||||
~mjCNumeric(); // destructor
|
||||
|
||||
void Compile(void); // compiler
|
||||
};
|
||||
|
||||
@@ -1509,6 +1509,11 @@ class mjCText : public mjCText_, private mjsText {
|
||||
friend class mjXWriter;
|
||||
|
||||
public:
|
||||
mjCText(mjCModel*);
|
||||
mjCText(const mjCText& other);
|
||||
mjCText& operator=(const mjCText& other);
|
||||
~mjCText();
|
||||
|
||||
mjsText spec;
|
||||
using mjCBase::name;
|
||||
using mjCBase::info;
|
||||
@@ -1517,11 +1522,6 @@ class mjCText : public mjCText_, private mjsText {
|
||||
void CopyFromSpec();
|
||||
|
||||
private:
|
||||
mjCText(mjCModel*); // constructor
|
||||
mjCText(const mjCText& other); // copy constructor
|
||||
mjCText& operator=(const mjCText& other); // copy assignment
|
||||
~mjCText(); // destructor
|
||||
|
||||
void Compile(void); // compiler
|
||||
};
|
||||
|
||||
@@ -1546,6 +1546,11 @@ class mjCTuple : public mjCTuple_, private mjsTuple {
|
||||
friend class mjXWriter;
|
||||
|
||||
public:
|
||||
mjCTuple(mjCModel*);
|
||||
mjCTuple(const mjCTuple& other);
|
||||
mjCTuple& operator=(const mjCTuple& other);
|
||||
~mjCTuple();
|
||||
|
||||
mjsTuple spec;
|
||||
using mjCBase::name;
|
||||
using mjCBase::info;
|
||||
@@ -1556,11 +1561,6 @@ class mjCTuple : public mjCTuple_, private mjsTuple {
|
||||
void NameSpace(const mjCModel* m);
|
||||
|
||||
private:
|
||||
mjCTuple(mjCModel*); // constructor
|
||||
mjCTuple(const mjCTuple& other); // copy constructor
|
||||
mjCTuple& operator=(const mjCTuple& other); // copy assignment
|
||||
~mjCTuple(); // destructor
|
||||
|
||||
void Compile(void); // compiler
|
||||
};
|
||||
|
||||
@@ -1590,6 +1590,11 @@ class mjCKey : public mjCKey_, private mjsKey {
|
||||
friend class mjXWriter;
|
||||
|
||||
public:
|
||||
mjCKey(mjCModel*);
|
||||
mjCKey(const mjCKey& other);
|
||||
mjCKey& operator=(const mjCKey& other);
|
||||
~mjCKey();
|
||||
|
||||
mjsKey spec;
|
||||
using mjCBase::name;
|
||||
using mjCBase::info;
|
||||
@@ -1598,11 +1603,6 @@ class mjCKey : public mjCKey_, private mjsKey {
|
||||
void CopyFromSpec();
|
||||
|
||||
private:
|
||||
mjCKey(mjCModel*); // constructor
|
||||
mjCKey(const mjCKey& other); // copy constructor
|
||||
mjCKey& operator=(const mjCKey& other); // copy assignment
|
||||
~mjCKey(); // destructor
|
||||
|
||||
void Compile(const mjModel* m); // compiler
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user