KIDS  ver-0.0.1
KIDS : Kernel Integrated Dynamics Simulator
Loading...
Searching...
No Matches
DataSet.h File Reference

Declaration of the DataSet class and related classes. More...

#include <fstream>
#include <map>
#include <memory>
#include <tuple>
#include <type_traits>
#include <vector>
#include "kids/Exception.h"
#include "kids/Node.h"
#include "kids/Shape.h"
#include "kids/Tensor.h"
#include "kids/Types.h"
#include "kids/Variable.h"
#include "kids/concat.h"
Include dependency graph for DataSet.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  PROJECT_NS::DataSet
 DataSet class is a tree-structured container for storage of Tensor and other DataSet. More...
 
class  PROJECT_NS::DataSet::DataSetKeyParser
 

Namespaces

namespace  PROJECT_NS
 < http://warp.povusers.org/FunctionParser/fparser.html
 

Detailed Description

Declaration of the DataSet class and related classes.

This file provides the declaration of the DataSet class. It serves as a minimal dynamic container for storing tensors. It also includes declarations for the following supporting classes:

  • Node: An abstract interface class for tree nodes.
  • Tensor: A class inherited from Node, representing tensors.
  • DataSet: A class implementing a tree structure for the storage
Author
Xin He
Date
2024-03
Version
1.0

Due to this limitation, storage is managed manually in current version. Copying a DataSet to another instance is prohibited, and reassigning a DataSet is also disallowed. Additionally, there is currently no interface provided for Python for reassign a DataSet object.

[logs]:
Date Description
2024-03-29 initial version. Seperate Shape class to another file. Add help() function. Review more over smart pointers. Improve print format.
2024-04-18 move to smart pointers. Instead of shared_ptr<T[]>, we use shared_ptr<vector<T>> to manage memory. However, there are limits: 1) vector<bool> is not STL, so it's not supported as a part of Tensor<T>. 2) if vector is dynamically extended, the head pointer may be changed.
2024-04-23

move to smart pointers. Using shared_ptr<T> and custom delete function to help to manage an array of data.

Definition in file DataSet.h.