1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58
|
/*
* Selector data types
*
* (c) 2016 Schrodinger, Inc.
*/
#pragma once
#include "os_std.h"
#include "Selector.h"
#include "ObjectMolecule.h"
#include "OVLexicon.h"
#include "OVOneToAny.h"
#define SelectorWordLength 1024
typedef char SelectorWordType[SelectorWordLength];
#define cNDummyModels 2
#define cNDummyAtoms 2
struct TableRec {
int model;
int atom;
int index;
float f1;
};
struct SelectionInfoRec {
int ID;
int justOneObjectFlag;
ObjectMolecule *theOneObject;
int justOneAtomFlag;
int theOneAtom;
};
struct CSelector {
MemberType *Member; /* Must be first in structure, so that we can get this w/o knowing the struct */
SelectorWordType *Name; /* this seems rather excessive, since name len < ObjNameMax ... */
SelectionInfoRec *Info;
int NSelection, NActive;
int TmpCounter;
int NMember;
int FreeMember;
ObjectMolecule **Obj;
TableRec *Table;
float *Vertex;
int *Flag1, *Flag2;
ov_size NAtom;
ov_size NModel;
int NCSet;
int SeleBaseOffsetsValid;
ObjectMolecule *Origin, *Center;
OVLexicon *Lex;
OVOneToAny *Key;
OVOneToOne *NameOffset;
};
|