FrontISTR 5.2.0
Large-scale structural analysis program with finit element method
Loading...
Searching...
No Matches
CNFDataBlock.h
Go to the documentation of this file.
1/*****************************************************************************
2 * Copyright (c) 2019 FrontISTR Commons
3 * This software is released under the MIT License, see LICENSE.txt
4 *****************************************************************************/
5/*
6 CNFDataBlock Ver. 3.6
7*/
8
9#ifndef CNFDataBlockH
10#define CNFDataBlockH
11
12#include "CNFMessage.h"
13
14#ifndef TRUE
15#define TRUE 1
16#define FALSE 0
17#endif
18
19typedef int nf_int; // 4 byte
20typedef unsigned char nf_bool; // 1 byte
21typedef double nf_float; // 8 byte
22typedef char nf_char; // 1 byte
23
25 public:
27
28 CNFDataBlock(int id) : DataBlockID(id) {}
29 virtual ~CNFDataBlock() {}
30
31 int Type() { return DataBlockID; }
32
33 // read block data from file without DataBlockID member
34 virtual void Read(class CNFData* nfd) = 0;
35 virtual void WriteData(class CNFData* nfd, FILE* fp = 0) = 0;
36};
37
38// type of element property (not element type)
39
40#define NEU_ELEM_PROP_UNKNOWN 0
41#define NEU_ELEM_PROP_ROD 1 // used
42#define NEU_ELEM_PROP_BAR 2 // used
43#define NEU_ELEM_PROP_TUBE 3
44#define NEU_ELEM_PROP_LINK 4 // used
45#define NEU_ELEM_PROP_BEAM 5 // used
46#define NEU_ELEM_PROP_BEAM2 37 // used
47#define NEU_ELEM_PROP_SPRING 6
48#define NEU_ELEM_PROP_DOFSPRING 7
49#define NEU_ELEM_PROP_CURVEBEAM 8 // used
50#define NEU_ELEM_PROP_GAP 9
51#define NEU_ELEM_PROP_SHEAR 11
52#define NEU_ELEM_PROP_SHEAR2 12
53#define NEU_ELEM_PROP_MEMBRANE 13 // used
54#define NEU_ELEM_PROP_MEMBRANE2 14 // used
55#define NEU_ELEM_PROP_BENDING 15 // used
56#define NEU_ELEM_PROP_BENDING2 16 // used
57#define NEU_ELEM_PROP_PLATE 17 // used
58#define NEU_ELEM_PROP_PLATE2 18 // used
59#define NEU_ELEM_PROP_PLANESTRAIN 19 // used
60#define NEU_ELEM_PROP_PLANESTRAIN2 20 // used
61#define NEU_ELEM_PROP_LAMINATE 21 // used
62#define NEU_ELEM_PROP_LAMINATE2 22 // used
63#define NEU_ELEM_PROP_SOLID 25 // used
64#define NEU_ELEM_PROP_SOLID2 26 // used
65#define NEU_ELEM_PROP_MASS 27
66#define NEU_ELEM_PROP_MASSMAT 28
67#define NEU_ELEM_PROP_STIFFMAT 30
68#define NEU_ELEM_PROP_SYMSHELL 35 // used
69#define NEU_ELEM_PROP_SYMSHELL2 36 // used
70
71#endif
char nf_char
Definition: CNFDataBlock.h:22
int nf_int
Definition: CNFDataBlock.h:19
unsigned char nf_bool
Definition: CNFDataBlock.h:20
double nf_float
Definition: CNFDataBlock.h:21
CNFDataBlock(int id)
Definition: CNFDataBlock.h:28
virtual void Read(class CNFData *nfd)=0
virtual void WriteData(class CNFData *nfd, FILE *fp=0)=0
virtual ~CNFDataBlock()
Definition: CNFDataBlock.h:29